Почему для AWS API Gateway требуется SNI?

Вопрос

  1. Есть ли конкретная причина, по которой API-шлюз требует, чтобы клиент HTTP / S поддерживал SNI?
  2. В каком документе AWS четко указано требование SNI?

О вопросе 2

Я считаю, что SNI является расширением TLS, и TLS версии 1.2 пока не требует поддержки SNI. когда я заглянул в RFC. TLS 1.3 требует его как обязательного, но, похоже, AWS API Gateway не принял 1.3 но согласно документу AWS Поддерживаемые протоколы и шифры SSL / TLS для региональных, частных и конечных точек API WebSocket в API Gateway.

Следовательно, я полагаю, что принудительное применение SNI, если AWS API Gateway действительно делает это, по-видимому, является конкретным требованием или ограничением AWS, которое следует четко указать, но пока мне не удалось найти документацию AWS, указывающую как таковую.

Следовательно, я считаю, что должна быть документация AWS, о которой говорится ниже, но, пожалуйста, исправьте, если нет.

  • Клиент HTTP / S для использования шлюза API должен поддерживать SNI.
  • Для неподдерживаемого SNI клиента HTTP / S используйте CloudFront (или другие способы, если они доступны) и не пересылайте заголовок HOST.

использованная литература

  • # P4 #
    # P5 #
  • # P6 #
    # P7 #

person mon    schedule 05.02.2020    source источник


Ответы (1)


Насколько мне известно, SNI не требуется для шлюза API, это вариант конфигурации, но не требование.

Документация, которую я когда-то использовал, чтобы понять аналогичный сценарий, четко указано, что SNI является вариантом, но выделенный IP-адрес может использоваться для поддержки пользователей, которые не могут использовать современный клиент TLS (браузер), поддерживающий SNI.

Индикация имени сервера (SNI) - это один из способов связать запрос с доменом. Другой способ - использовать выделенный IP-адрес. Если у вас есть пользователи, которые не могут выполнить обновление до браузера или клиента, выпущенного после 2010 года, вы можете использовать выделенный IP-адрес для обслуживания запросов HTTPS.

В ответ на ваш вопрос я предполагаю, что ваш API-шлюз настроен на использование SNI с CloudFront, поскольку, как также описано в следующем документация по шлюзу API:

API Gateway поддерживает пользовательские доменные имена, оптимизированные для периферии, за счет использования индикации имени сервера (SNI) в раздаче CloudFront.

person Filipe dos Santos    schedule 07.02.2020