Activer le protocole TLS d’entrée-à-application pour une application
Remarque
Les plans Essentiel, Standard et Entreprise seront déconseillés à compter de la mi-mars 2025, avec une période de mise hors service de 3 ans. Nous vous recommandons de passer à Azure Container Apps. Pour plus d’informations, consultez l’annonce de mise hors service d’Azure Spring Apps.
Le plan de consommation standard et dédiée sera déconseillé à compter du 30 septembre 2024, avec un arrêt complet après six mois. Nous vous recommandons de passer à Azure Container Apps. Pour plus d’informations, consultez Migrer le plan de consommation standard et dédiée Azure Spring Apps vers Azure Container Apps.
Cet article s’applique à : ❌ De base ✔️ Standard ✔️ Entreprise
Remarque
Cette fonctionnalité n’est pas disponible dans le plan de base.
Cet article décrit les communications sécurisées dans Azure Spring Apps. Cet article explique également comment activer le protocole SSL/TLS d’entrée-à-application pour sécuriser le trafic d’un contrôleur d’entrée vers des applications qui prennent en charge le protocole HTTPS.
L’image suivante montre la prise en charge globale de la communication sécurisée dans Azure Spring Apps.
Modèle de communication sécurisé dans Azure Spring Apps
Cette section décrit le modèle de communication sécurisé présenté dans le diagramme de vue d’ensemble ci-dessus.
La demande cliente du client à l’application dans Azure Spring Apps entre dans le contrôleur d’entrée. La demande peut être HTTP ou HTTPS. Le certificat TLS retourné par le contrôleur d’entrée est émis par l’autorité de certification émettrice Microsoft Azure TLS.
Si l’application a été mappée à un domaine personnalisé existant et qu’elle est configurée en tant que HTTPS uniquement, la requête adressée au contrôleur d’entrée peut uniquement être HTTPS. Le certificat TLS retourné par le contrôleur d’entrée est le certificat de liaison SSL pour ce domaine personnalisé. La vérification SSL/TLS côté serveur pour le domaine personnalisé est effectuée dans le contrôleur d’entrée.
La communication sécurisée entre le contrôleur d’entrée et les applications dans Azure Spring Apps est contrôlée par le protocole TLS d’entrée-à-application. Vous pouvez également contrôler la communication via le portail ou l’interface de ligne de commande, qui sera expliquée plus loin dans cet article. Si le protocole TLS d’entrée-à-application est désactivé, la communication entre le contrôleur d’entrée et les applications dans Azure Spring Apps est HTTP. Si le protocole TLS d’entrée-à-application est activé, la communication est HTTPS et n’a aucune relation avec la communication entre les clients et le contrôleur d’entrée. Le contrôleur d’entrée ne vérifie pas le certificat retourné par les applications, car le protocole TLS d’entrée-à-application chiffre la communication.
La communication entre les applications et les services Azure Spring Apps est toujours HTTPS et gérée par Azure Spring Apps. Ces services incluent le serveur de configuration, le registre des services et le serveur Eureka.
Vous gérez la communication entre les applications. Vous pouvez également tirer parti des fonctionnalités d’Azure Spring Apps pour charger des certificats dans le magasin d’approbations de l’application. Pour plus d’informations, consultez Utiliser des certificats TLS/SSL dans une application.
Vous gérez la communication entre les applications et les services externes. Pour réduire vos efforts de développement, Azure Spring Apps vous aide à gérer vos certificats publics et les charges dans le magasin d’approbations de votre application. Pour plus d’informations, consultez Utiliser des certificats TLS/SSL dans une application.
Activer le protocole TLS d’entrée-à-application pour une application
La section suivante explique également comment activer le protocole SSL/TLS d’entrée-à-application pour sécuriser le trafic d’un contrôleur d’entrée vers des applications qui prennent en charge le protocole HTTPS.
Prérequis
- Une instance Azure Spring Apps déployée. Pour bien démarrer, suivez notre guide de démarrage rapide sur le déploiement d’une application via Azure CLI.
- Si vous n’êtes pas familiarisé avec le protocole TLS d’entrée-à-application, consultez l’exemple de protocole TLS de bout en bout.
- Pour charger de façon sécurisée les certificats nécessaires dans les applications Spring Boot, vous pouvez utiliser spring-cloud-azure-starter-keyvault-certificates.
Activer le protocole TLS d’entrée-à-application sur une application existante
Utilisez la commande az spring app update --enable-ingress-to-app-tls
pour activer ou désactiver le protocole TLS d’entrée-à-application pour une application.
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
Activer le protocole TLS d’entrée-à-application lorsque vous liez un domaine personnalisé
Utilisez la commande az spring app custom-domain update --enable-ingress-to-app-tls
ou az spring app custom-domain bind --enable-ingress-to-app-tls
pour activer ou désactiver le protocole TLS d’entrée-à-application pour une application.
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
Activer le protocole TLS d’entrée-à-application à l’aide du portail Azure
Pour activer le protocole TLS d’entrée-à-application dans le portail Azure, commencez par créer une application, puis activez la fonctionnalité.
- Créez une application dans le portail, comme vous le feriez normalement. Accédez-y dans le portail.
- Faites défiler l'écran jusqu'au groupe Paramètres dans le volet de navigation gauche.
- Sélectionnez protocole TLS d’entrée-à-application.
- Définissez le protocole TLS d’entrée-à-application sur Oui.
Vérifier l’état du protocole TLS d’entrée-à-application
Utilisez la commande az spring app show
pour vérifier la valeur de enableEndToEndTls
.
az spring app show -n app_name -s service_name -g resource_group_name