Политика шлюза API AWS, разрешающая доступ только к определенному URL хоста

Я настроил конечную точку шлюза API в AWS и пытаюсь защитить ее с помощью политики доступа.

Я знаю, что возможно ограничить доступ конечной точки к определенным IP-адресам, но возможно ли также ограничить доступ на основе хоста, который вызывает API? У AWS есть документы по примерам этих политик доступа, как показано ниже:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": "*",
            "Action": "execute-api:Invoke",
            "Resource": [
                "arn:aws:execute-api:region:account-id:api-id/*"
            ]
        },
        {
            "Effect": "Deny",
            "Principal": "*",
            "Action": "execute-api:Invoke",
            "Resource": [
               "arn:aws:execute-api:region:account-id:api-id/*"
            ],
            "Condition" : {
                "IpAddress": {
                    "aws:SourceIp": ["192.0.2.0/24", "198.51.100.0/24" ]
                }
            }
        }
    ]
}

Например, у меня есть приложение www.example.com. Я хочу добавить что-то в политику доступа, чтобы только www.example.com мог успешно отправить запрос в API.

0 ответов

Не могли бы вы просто использовать КЛЮЧ API, который эти конкретные хосты или хосты могут использовать для получения доступа к API?

Я не уверен, что вы все еще пытаетесь решить эту проблему, но я не думаю, что вы можете обрабатывать белый список URL-адресов на уровне шлюза API.

Вот возможные политики ресурсов шлюза API, перечисленные в документации AWS:

https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-resource-policies-aws-condition-keys.html

Другие вопросы по тегам