Защиту пути проверяют по каждому участку. Два соединения TLS сохраняют две границы и доступ прокси к открытому HTTP.
Завершение TLS
Определение
Завершение TLS — окончание защищённого соединения на промежуточном узле: обратный прокси проводит рукопожатие с клиентом и дальше работает с открытым HTTP. До приложения идёт уже другое соединение, и его защиту проверяют отдельно.
Также ищут: терминация TLS · HTTPS termination · TLS offload · TLS termination
Зачем это знать
После завершения начинается новая граница доверия: следующий переход к приложению нужно защищать и проверять отдельно.
Карта понятия
Что подтверждено
TLS защищает данные между двумя конечными точками конкретного соединения; обратный прокси, завершивший TLS, видит открытый HTTP и может начать отдельное соединение с исходным сервером.
Граница применимости: Соединение клиента с прокси по TLS.
Успешное TLS-соединение клиента с внешним прокси защищает этот канал в пределах выбранной проверки сторон. Оно само по себе ничего не говорит о конфиденциальности и аутентификации отдельного перехода от прокси к исходному серверу.
Граница применимости: Установленное соединение, а не одна строка URL; завершение TLS в сравнении с дальнейшей передачей.
Когда прокси завершает TLS и обрабатывает HTTP, он имеет доступ к открытому содержимому запроса. Повторное шифрование следующего участка не скрывает это содержимое от самого прокси.
Граница применимости: HTTP-прокси с завершением TLS; прозрачная передача зашифрованного потока без завершения здесь не рассматривается.
Для участка от прокси до приложения, где выбрана проверка сервера по сертификату, прокси выступает TLS-клиентом: связывает допустимую цепочку с заранее ожидаемым именем сервиса. Успех внешнего рукопожатия не выполняет эту проверку за него.
Граница применимости: Аутентификация сервера сертификатом и именем по RFC 8446/RFC 9525; не утверждает, что каждое соединение TLS использует сертификаты.
Подлинность узла на одном участке TLS не доказывает право пользователя на объект HTTP. Даже при взаимной аутентификации узлов приложение проверяет полномочия конкретного запроса по своей модели доступа.
Граница применимости: Разделение аутентификации транспортного соседа и авторизации запроса приложения.
Не путать
Завершение внешнего TLS и проверка сертификата внутреннего сервера — разные действия разных участников соединения.
Что проверить
- Отметьте все точки завершения TLS на схеме.
- Укажите, какие узлы получают открытый HTTP.
- Задайте защиту каждого следующего участка.
- Для проверки по сертификату задайте ожидаемое имя сервиса.
- Проверьте доверенные центры и ограничения сертификата на этом участке.
- Отделите подлинность транспортного узла от прав пользователя.
- Проверьте, что ошибочный внутренний сертификат обнаруживается выбранной политикой.
Первоисточники
- HTTP Semantics
Определяет stateless HTTP, origin server, intermediaries, target URI и security significance полей authority и Host.
- Service Identity in TLS
Задаёт construction и verification reference identifiers для TLS services; server identity находится в subjectAltName, не в commonName.
Утверждения: 04
- Guidelines for API Protection for Cloud-Native Systems
Задаёт API lifecycle controls для authentication, authorization, rate limits, resource limits, logging и monitoring.
Утверждения: 05