Partager via


Utiliser mTLS dans Azure Container Apps

Mutual Transport Layer Security (mTLS) est une extension du protocole TLS standard qui fournit une authentification mutuelle entre le client et le serveur. Azure Container Apps prend en charge l’exécution des applications compatibles mTLS pour assurer une sécurité accrue dans vos applications.

Dans Azure Container Apps, toutes les requêtes entrantes passent par Envoy avant d’être acheminées vers l’application conteneur cible. Lorsque vous utilisez mTLS, le client échange des certificats avec Envoy. Chacun de ces certificats est placé dans l’en-tête X-Forwarded-Client-Cert, qui est ensuite envoyé à l’application.

Pour créer une application mTLS dans Azure Container Apps, vous devez :

  1. Configurer Azure Container Apps pour exiger des certificats clients provenant de pairs.
  2. Extraire les certificats X.509 des requêtes.

Cet article explique comment gérer les certificats d’établissement de liaison mTLS de pair en extrayant le certificat X.509 du client.

Exiger les certificats clients

Suivez ces étapes pour configurer votre application conteneur de sorte qu’elle exige les certificats clients :

  1. Ouvrez votre application conteneur dans le portail Azure.
  2. Sous Paramètres, sélectionnez Entrée.
  3. Sélectionnez l'option Activé.
  4. Pour Type d’entrée, sélectionnez HTTP.
  5. Sous Mode de certificat client, sélectionnez Exiger.
  6. Sélectionnez Enregistrer pour appliquer la modification.

Pour plus d’informations sur la configuration de l’authentification par certificat client dans Azure Container Apps, consultez Configurer l’authentification par certificat client dans Azure Container Apps.

Extraire les certificats X.509

Pour extraire les certificats X.509 de l’en-tête X-Forwarded-Client-Cert, analysez la valeur d’en-tête dans votre code d’application. Cet en-tête contient les informations de certificat client lorsque mTLS est activé. Les certificats sont fournis dans un format de liste séparé par des points-virgules, qui inclut le hachage, le certificat et la chaîne.

Voici la procédure à suivre pour extraire et analyser le certificat dans votre application :

  1. Récupérez l’en-tête X-Forwarded-Client-Cert de la requête entrante.
  2. Analysez la valeur d’en-tête pour extraire les détails du certificat.
  3. Placez les certificats analysés dans l’attribut de certificat standard pour des validations ou utilisations ultérieures.

Une fois que les certificats sont analysés, vous pouvez les valider et les utiliser en fonction des besoins de votre application.

Exemple

Dans les applications Java, vous pouvez utiliser le filtre d’authentification X.509 réactif pour mapper les informations utilisateur des certificats au contexte de sécurité. Pour obtenir un exemple complet d’une application Java avec mTLS dans Azure Container Apps, consultez Application serveur mTLS sur Azure Container Apps.