Включение TLS для входящего трафика приложения
Примечание.
Планы "Базовый", "Стандартный" и "Корпоративный" будут устарели начиная с середины марта 2025 г. с 3-летнего периода выхода на пенсию. Рекомендуется перейти в приложения контейнеров Azure. Дополнительные сведения см. в объявлении о выходе на пенсию в Azure Spring Apps.
Стандартный план потребления и выделенного плана будет устарел с 30 сентября 2024 г. с полным завершением работы после шести месяцев. Рекомендуется перейти в приложения контейнеров Azure. Дополнительные сведения см. в статье "Миграция потребления Azure Spring Apps Standard" и выделенного плана в приложения контейнеров Azure.
Эта статья относится к:❌ Basic ✔️ Standard ✔️ Enterprise
Примечание.
Эта функция недоступна в плане "Базовый".
В этой статье описывается безопасное взаимодействие в Azure Spring Apps. Также здесь рассматривается процесс настройки протокола SSL/TLS для защиты входящего трафика, передаваемого от контроллера объекта ingress в приложение с поддержкой протокола HTTPS.
На следующем рисунке представлена общая схема поддержки безопасного взаимодействия в Azure Spring Apps.
Модель безопасного взаимодействия в Azure Spring Apps
В этом разделе объясняется модель безопасного взаимодействия, которая представлена на приведенной выше обзорной схеме.
Запрос из клиента а приложение Azure Spring Apps поступает в контроллер объекта ingress. Этот запрос может использовать протокол HTTP или HTTPS. Сертификат TLS, возвращаемый контроллером объекта ingress, выдан центром сертификации Microsoft Azure для TLS.
Если приложение сопоставлено с существующим личным доменом и для него настроено использование только протокола HTTPS, запрос к контроллеру объекта ingress допускается только в формате HTTPS. Сертификат TLS, возвращаемый контроллером объекта ingress, является SSL-сертификатом привязки для этого личного домена. Проверка SSL/TLS на стороне сервера для личного домена выполняется в контроллере объекта ingress.
Безопасный обмен данными между контроллером объекта ingress и приложениями Azure Spring Apps управляется протоколом TLS для входящего трафика приложения. Вы также можете управлять взаимодействием с помощью портала или интерфейса командной строки, как описано далее в этой статье. Если протокол TLS для входящего трафика отключен, обмен данными между контроллер объекта ingress и приложениями Azure Spring Apps выполняется по протоколу HTTP. Если протокол TLS для входящего трафика приложения включен, обмен данными выполняется через HTTPS и никак не связывается с обменом данными между клиентами и контроллером объекта ingress. Контроллер объекта ingress не проверяет сертификат, полученный от приложений, так как это взаимодействие шифруется протоколом TLS для входящего трафика.
Обмен данными между приложениями и службами Azure Spring Apps всегда выполняется по протоколу HTTPS и обрабатывается в Azure Spring Apps. Сюда относятся такие службы, как сервер конфигурации, реестр служб и сервер Eureka.
Вы управляете взаимодействием между приложениями. Вы также можете воспользоваться возможностями Azure Spring Apps для отправки сертификатов в доверенное хранилище приложения. Дополнительные сведения см. в статье Использование TLS/SSL-сертификатов в приложении.
Вы управляете взаимодействием между приложениями и внешними службами. Чтобы упростить разработку, Azure Spring Apps помогает вам в управлении общедоступными сертификатами и загружает их в доверенное хранилище приложения. Дополнительные сведения см. в статье Использование TLS/SSL-сертификатов в приложении.
Включение TLS для входящего трафика приложения
В следующем разделе описан процесс настройки протокола SSL/TLS для защиты входящего трафика, передаваемого от контроллера объекта ingress в приложение с поддержкой протокола HTTPS.
Необходимые компоненты
- Развернутый экземпляр Azure Spring Apps. Чтобы приступить к работе, следуйте инструкциям из статьи Краткое руководство. Запуск приложения Java Spring с помощью Azure CLI.
- Если вы не знакомы с работой протокола TLS для входящего трафика, изучите пример сквозного применения протокола TLS.
- Для безопасной загрузки необходимых сертификатов в приложения Spring Boot можно использовать spring-cloud-azure-starter-keyvault-certificates.
Включение TLS для входящего трафика в существующем приложении
Выполните команду az spring app update --enable-ingress-to-app-tls
, чтобы включить или отключить протокол TLS для входящего трафика приложения.
az spring app update --enable-ingress-to-app-tls -n app_name -s service_name -g resource_group_name
az spring app update --enable-ingress-to-app-tls false -n app_name -s service_name -g resource_group_name
Включение TLS для входящего трафика приложения с привязкой личного домена
Выполните команду az spring app custom-domain update --enable-ingress-to-app-tls
или az spring app custom-domain bind --enable-ingress-to-app-tls
, чтобы включить или отключить протокол TLS для входящего трафика приложения.
az spring app custom-domain update --enable-ingress-to-app-tls -n app_name -s service_name -g resource_group_name
az spring app custom-domain bind --enable-ingress-to-app-tls -n app_name -s service_name -g resource_group_name
Включение TLS для входящего трафика приложения с помощью портала Azure
Чтобы включить протокол TLS для входящего трафика приложения на портале Azure, сначала создайте приложение, а затем активируйте эту возможность.
- Создайте приложение на портале обычным образом. Перейдите к нему на портале.
- Прокрутите вниз до группы Параметры в левой области навигации.
- Выберите Ingress-to-app TLS (TLS для входящего трафика приложения).
- Присвойте параметру Ingress-to-app TLS (TLS для входящего трафика приложения) значение Да.
Проверка состояния TLS для входящего трафика приложения
Используйте команду az spring app show
, чтобы проверить значение enableEndToEndTls
.
az spring app show -n app_name -s service_name -g resource_group_name