Ajouter et gérer des certificats TLS/SSL dans Azure App Service

Vous pouvez ajouter des certificats de sécurité numérique à utiliser dans votre code d’application ou sécuriser des noms DNS personnalisés dans Azure App Service, ce qui fournit un service d’hébergement web hautement évolutif et à mises à jour correctives automatiques. Actuellement appelés certificats TLS (Transport Layer Security), et certificats SSL (Secure Socket Layer) précédemment, ces certificats privés ou publics vous aident à sécuriser les connexions Internet en chiffrant les données envoyées entre votre navigateur, les sites web que vous visitez et le serveur de site web.

Le tableau suivant répertorie les options permettant d’ajouter des certificats dans App Service :

Option Description
Créer un certificat managé App Service gratuit Certificat privé gratuit et facile à utiliser si vous devez simplement sécuriser votre domaine personnalisé dans App Service.
Importer un App Service Certificate Certificat privé managé par Azure. Il combine la simplicité d’une gestion automatisée et la flexibilité des options de renouvellement et d’exportation.
Importer un certificat à partir de Key Vault Utile si vous utilisez Azure Key Vault pour gérer vos certificats PKCS12. Consultez Exigences concernant les certificats privés.
Téléchargement d’un certificat privé Si vous disposez déjà d’un certificat privé provenant d’un fournisseur tiers, vous pouvez le charger. Consultez Exigences concernant les certificats privés.
Téléchargement d’un certificat public Les certificats publics ne sont pas utilisés pour sécuriser les domaines personnalisés, mais vous pouvez les charger dans votre code si vous en avez besoin pour accéder aux ressources distantes.

Prérequis

Exigences concernant les certificats privés

Le certificat managé App Service gratuit et le certificat App Service répondent déjà aux exigences d’App Service. Si vous choisissez de charger ou d’importer un certificat privé dans App Service, votre certificat doit :

  • Être exporté en tant que fichier PFX protégé par mot de passe, chiffré par Triple-DES.
  • Contenir une clé privée d’au moins 2048 bits de long
  • Contient tous les certificats intermédiaires et le certificat racine dans la chaîne de certificats.

Pour sécuriser un domaine personnalisé dans une liaison TLS/SSL, votre certificat doit répondre à des exigences supplémentaires :

Notes

Les certificats de chiffrement à courbe elliptique (ECC) sont compatibles avec App Service, mais ce sujet sort du cadre de cet article. Pour connaître les étapes exactes de création de certificats ECC, collaborez avec votre autorité de certification.

Remarque

Une fois que vous avez ajouté un certificat privé dans une application, le certificat est stocké dans une unité de déploiement liée à la combinaison du groupe de ressources, de la région et du système d’exploitation du plan App Service, appelée en interne un espace web. De cette façon, le certificat est accessible aux autres applications qui sont associées à la même combinaison Groupe de ressources/Région et de système d’exploitation. Les certificats privés chargés ou importés dans App Service sont partagés avec App Services dans la même unité de déploiement.

Vous pouvez ajouter jusqu’à 1 000 certificats privés par espace web.

Créer un certificat managé gratuit

Le certificat managé App Service gratuit est une solution clé en main pour la sécurisation de votre nom DNS personnalisé dans App Service. Sans aucune action de votre part, ce certificat de serveur TLS/SSL est entièrement géré par App Service et est automatiquement renouvelé en continu par incréments de six mois, 45 jours avant l’expiration, tant que les conditions préalables que vous configurez demeurent. Toutes les liaisons associées seront mises à jour avec le certificat renouvelé. Vous créez le certificat, vous le liez à un domaine personnalisé et vous laissez App Service faire le reste.

Important

Avant de créer un certificat managé gratuit, assurez-vous que vous avez rempli les conditions préalables pour votre application.

Les certificats gratuits sont émis par DigiCert. Pour certains domaines, vous devez autoriser explicitement DigiCert comme émetteur de certificat en créant un enregistrement de domaine CAA avec la valeur : 0 issue digicert.com.

Azure gérant entièrement les certificats en votre nom, tout aspect du certificat managé, y compris l’émetteur racine, peut être modifié à tout moment. Ces modifications sont en dehors de votre contrôle. Veillez à éviter les dépendances matérielles et d’« épingler » des certificats d’entraînement au certificat managé ou à toute partie de la hiérarchie de certificats. Si vous avez besoin du comportement d’épinglage de certificat, ajoutez un certificat à votre domaine personnalisé à l’aide de toute autre méthode disponible décrite dans cet article.

Le certificat gratuit comprend les limitations suivantes :

  • Ne prend pas en charge les certificats génériques.
  • Ne prend pas en charge l’utilisation en tant que certificat client avec l’empreinte numérique du certificat, qui sera prochainement dépréciée et supprimée.
  • Ne prend pas en charge le DNS privé.
  • N’est pas exportable.
  • N’est pas pris en charge dans App Service Environment (ASE).
  • Prend uniquement en charge les caractères alphanumériques, les tirets (-) et les points (.).
  • Seuls les domaines personnalisés d’une longueur maximale de 64 caractères sont pris en charge.
  • Doit avoir un enregistrement A pointant vers l’adresse IP de votre application web.
  • N’est pas pris en charge pour les applications non accessibles à tous.
  • N’est pas pris en charge avec les domaines racine intégrés à Traffic Manager.
  • Doit respecter tous les critères ci-dessus pour réussir les émissions et renouvellements de certificats.
  1. Sur le portail Azure, dans le menu de gauche, sélectionnez App Services><nom-application>.

  2. Dans le menu de navigation de votre application, sélectionnez Certificats. Dans le volet Certificats managés, sélectionnez Ajouter un certificat.

    Capture d’écran du menu d’application avec les options « Certificats », « Certificats managés » et « Ajouter un certificat » sélectionnées.

  3. Sélectionnez le domaine personnalisé pour le certificat gratuit, puis Valider. Lorsque la validation est terminée, sélectionnez Ajouter. Vous ne pouvez créer qu’un seul certificat managé pour chaque domaine personnalisé pris en charge.

    Une fois l’opération terminée, le certificat s’affiche dans la liste Certificats managés.

    Capture d’écran du volet « Certificats managés » avec le certificat nouvellement créé répertorié.

  4. Pour sécuriser un domaine personnalisé avec ce certificat, vous devez quand même créer une liaison de certificat. Suivez ces étapes pour apprendre à Sécuriser un nom DNS personnalisé avec une liaison TLS/SSL dans Azure App Service.

Importer un App Service Certificate

Pour importer un certificat App Service, commencez par acheter et configurer un certificat App Service, puis suivez les étapes décrites ici.

  1. Sur le portail Azure, dans le menu de gauche, sélectionnez App Services><nom-application>.

  2. Dans le menu de navigation de votre application, sélectionnez Certificats>Apporter vos propres certificats (.pfx)>Ajouter un certificat.

  3. Dans Source, sélectionnez Importer un certificat App Service.

  4. Dans Certificat App Service, sélectionnez le certificat que vous venez de créer.

  5. Dans Nom convivial du certificat, donnez un nom au certificat dans votre application.

  6. Sélectionnez Valider. Une fois la validation réussie, sélectionnez Ajouter.

    Capture d’écran de la page de gestion des applications avec les options « Certificats », « Apportez vos propres certificats (.pfx) » et « Importer un certificat App Service » sélectionnées, ainsi que la page entière « Ajoutez un certificat de clé privée » avec le bouton **Valider**.

    Une fois l’opération terminée, le certificat s’affiche dans la liste Apportez vos propres certificats.

    Capture d’écran du volet « Apportez vos propres certificats (.pfx) » avec le certificat acheté répertorié.

  7. Pour sécuriser un domaine personnalisé avec ce certificat, vous devez quand même créer une liaison de certificat. Suivez ces étapes pour apprendre à Sécuriser un nom DNS personnalisé avec une liaison TLS/SSL dans Azure App Service.

Importer un certificat à partir de Key Vault

Si vous utilisez Azure Key Vault pour gérer vos certificats, vous pouvez importer un certificat PKCS12 à partir de Key Vault dans App Service tant que vous répondez aux exigences.

Autoriser App Service à lire les données du coffre

Par défaut, le fournisseur de ressources App Service n’a pas accès à votre coffre de clés. Pour utiliser un coffre de clés pour un déploiement de certificat, vous devez autoriser l’accès en lecture au coffre de clés pour le fournisseur de ressources.

Notes

Actuellement, un certificat Key Vault ne prend en charge que la stratégie d’accès Key Vault, et non le modèle RBAC.

Fournisseur de ressources AppId du principal de service Autorisations d’accès au secret du coffre de clés Autorisations de certificat Key Vault
Microsoft Azure App Service ou Microsoft.Azure.WebSites - abfa0a7c-a6b6-4736-8310-5855508787cd qui est identique pour tous les abonnements Azure

- Pour l’environnement cloud Azure Government, utilisez 6a02c803-dafd-4136-b4c3-5a6f318b4714.
Obtenir Obtenir
Microsoft.Azure.CertificateRegistration Obtenir
List
Définissez
DELETE
Obtenir
List

Importer un certificat dans votre application à partir de votre coffre

  1. Sur le portail Azure, dans le menu de gauche, sélectionnez App Services><nom-application>.

  2. Dans le menu de navigation de votre application, sélectionnez Certificats>Apporter vos propres certificats (.pfx)>Ajouter un certificat.

  3. Dans Source, sélectionnez Importer à partir de Key Vault.

  4. Choisissez Sélectionner un certificat du coffre de clés.

    Capture d’écran de la page de gestion des applications avec les options « Certificats », « Apportez vos propres certificats (.pfx) » et « Importer depuis Key Vault » sélectionnées

  5. Pour vous aider à sélectionner le certificat, utilisez le tableau suivant :

    Paramètre Description
    Abonnement Abonnement associé au coffre de clés.
    Key vault Le coffre de clés qui contient le certificat que vous voulez importer.
    Certificate Dans cette liste, sélectionnez un certificat PKCS12 qui se trouve dans le coffre. Tous les certificats PKCS12 du coffre sont listés avec leurs empreintes numériques, mais tous ne sont pas pris en charge dans App Service.
  6. Une fois votre sélection terminée, choisir Sélectionner, Valider, puis Ajouter.

    Une fois l’opération terminée, le certificat s’affiche dans la liste Apportez vos propres certificats. Si l’importation échoue avec une erreur, c’est que le certificat ne répond pas aux exigences App Service.

    Capture d’écran du volet « Apportez vos propres certificats (.pfx) » avec le certificat importé répertorié.

    Notes

    Si vous remplacez votre certificat par un nouveau certificat dans le coffre de clés, App Service synchronise automatiquement votre certificat sous 24 heures.

  7. Pour sécuriser un domaine personnalisé avec ce certificat, vous devez quand même créer une liaison de certificat. Suivez ces étapes pour apprendre à Sécuriser un nom DNS personnalisé avec une liaison TLS/SSL dans Azure App Service.

Téléchargement d’un certificat privé

Une fois que vous avez obtenu un certificat auprès de votre fournisseur de certificats, préparez le certificat pour App Service en suivant les étapes décrites dans cette section.

Fusionner les certificats intermédiaires

Si votre autorité de certification vous fournit plusieurs certificats dans la chaîne, vous devez les fusionner dans le même ordre.

  1. Dans un éditeur de texte, ouvrez chaque certificat reçu.

  2. Pour stocker le certificat fusionné, créez un fichier nommé mergedcertificate.crt.

  3. Copiez le contenu de chaque certificat dans ce fichier. Veillez à suivre la séquence de certificats spécifiée par la chaîne de certificats, en commençant par votre certificat et en terminant par le certificat racine, par exemple :

    -----BEGIN CERTIFICATE-----
    <your entire Base64 encoded SSL certificate>
    -----END CERTIFICATE-----
    
    -----BEGIN CERTIFICATE-----
    <The entire Base64 encoded intermediate certificate 1>
    -----END CERTIFICATE-----
    
    -----BEGIN CERTIFICATE-----
    <The entire Base64 encoded intermediate certificate 2>
    -----END CERTIFICATE-----
    
    -----BEGIN CERTIFICATE-----
    <The entire Base64 encoded root certificate>
    -----END CERTIFICATE-----
    

Exporter un certificat privé fusionné vers PFX

À présent, exportez votre certificat TLS/SSL fusionné avec la clé privée utilisée pour générer votre demande de certificat. Si vous avez généré votre demande de certificat à l’aide d’OpenSSL, vous avez créé un fichier de clé privée.

Notes

Le chiffrement par défaut d’OpenSSL v3 est passé de 3DES à AES256, mais vous pouvez le remplacer sur la ligne de commande -keypbe PBE-SHA1-3DES -certpbe PBE-SHA1-3DES -macalg SHA1. OpenSSL v1 utilise 3DES par défaut, de sorte que les fichiers PFX générés sont pris en charge sans aucune modification spéciale.

  1. Pour exporter votre certificat vers un fichier PFX, exécutez la commande suivante, mais remplacez les espaces réservés <private-key-file> et <merged-certificate-file> avec les chemins d’accès vers votre clé privée et votre fichier de certificat fusionné.

    openssl pkcs12 -export -out myserver.pfx -inkey <private-key-file> -in <merged-certificate-file>  
    
  2. Lorsque vous y êtes invité, spécifiez un mot de passe pour l’opération d’exportation. Lorsque vous chargez ultérieurement votre certificat TLS/SSL vers App Service, vous devez fournir ce mot de passe.

  3. Si vous avez utilisé IIS ou Certreq.exe pour générer votre demande de certificat, installez le certificat sur votre ordinateur local, puis exportez le certificat dans un fichier PFX.

Charger le certificat dans App Service

Vous êtes maintenant prêt à charger le certificat dans App Service.

  1. Sur le portail Azure, dans le menu de gauche, sélectionnez App Services><nom-application>.

  2. Dans le menu de navigation de votre application, sélectionnez Certificats>Apporter vos propres certificats (.pfx)>Charger le certificat.

    Capture d’écran avec les options « Certificats », « Apportez vos propres certificats (.pfx) » et « Charger un certificat » sélectionnées.

  3. Pour vous aider à charger le certificat .pfx, utilisez le tableau suivant :

    Paramètre Description
    Fichier de certificat PFX Sélectionnez votre fichier .pfx.
    Mot de passe du certificat Entrez le mot de passe que vous avez créé lors de l’exportation du fichier PFX.
    Nom convivial du certificat Le nom du certificat à afficher dans votre application web.
  4. Une fois votre sélection terminée, choisir Sélectionner, Valider, puis Ajouter.

    Une fois l’opération terminée, le certificat s’affiche dans la liste Apportez vos propres certificats.

    Capture d’écran du volet « Apportez vos propres certificats » avec le certificat chargé répertorié.

  5. Pour sécuriser un domaine personnalisé avec ce certificat, vous devez quand même créer une liaison de certificat. Suivez ces étapes pour apprendre à Sécuriser un nom DNS personnalisé avec une liaison TLS/SSL dans Azure App Service.

Téléchargement d’un certificat public

Les certificats publics sont pris en charge au format .cer.

Remarque

Une fois que vous avez téléchargé un certificat public dans une application, il n'est accessible que par l'application dans laquelle il a été téléchargé. Les certificats publics doivent être téléchargés dans chaque application web qui a besoin d’un accès. Pour les scénarios spécifiques à App Service Environment, reportez-vous à la documentation relative aux certificats et à l’environnement App Service

Vous pouvez charger jusqu’à 1 000 certificats publics par plan App Service.

  1. Sur le portail Azure, dans le menu de gauche, sélectionnez App Services><nom-application>.

  2. Dans le menu de navigation de votre application, sélectionnez Certificats>Certificats de clé publique (.cer)>Ajouter un certificat.

  3. Pour vous aider à charger le certificat .cer, utilisez le tableau suivant :

    Paramètre Description
    Fichier de certificat CER Sélectionnez votre fichier .cer.
    Nom convivial du certificat Le nom du certificat à afficher dans votre application web.
  4. Une fois que vous avez terminé, sélectionnez Ajouter.

    Capture d’écran du nom et du certificat de clé publique à charger.

  5. Une fois le certificat chargé, copiez l’empreinte du certificat, puis reportez-vous à Rendre le certificat accessible.

Renouveler un certificat sur le point d’expirer

Avant l’expiration d’un certificat, assurez-vous d’ajouter le certificat renouvelé à App Service et à mettre à jour toutes les liaisons de certificat pour le processus dépendant du type de certificat. Par exemple, un certificat importé à partir de Key Vault, y compris un certificat App Service, se synchronise automatiquement avec App Service toutes les 24 heures et met à jour la liaison TLS/SSL lorsque vous renouvelez le certificat. Pour un certificat chargé, il n’existe aucune mise à jour de liaison automatique. En fonction de votre scénario, passez en revue la section correspondante :

Renouveler le certificat chargé

Pour remplacer un certificat arrivant à expiration, la façon dont vous mettez à jour la liaison de certificat avec le nouveau certificat peut nuire à l’expérience utilisateur. Par exemple, votre adresse IP entrante peut être modifiée lorsque vous supprimez une liaison, même si cette liaison repose sur une adresse IP. Ce résultat est particulièrement important lorsque vous renouvelez un certificat qui se trouve déjà dans une liaison reposant sur une adresse IP. Pour éviter une modification de l’adresse IP de votre application, et éviter les temps d’arrêt de votre application en raison d’erreurs HTTPS, suivez ces étapes dans la séquence spécifiée :

  1. Chargez le nouveau certificat.

  2. Accédez à la page Domaines personnalisés de votre application, sélectionnez le bouton d’actions ..., puis sélectionnez Mettre à jour la liaison.

  3. Sélectionnez le nouveau certificat, puis Mettre à jour.

  4. Supprimez le certificat existant.

Renouveler un certificat importé d’Azure Key Vault

Notes

Pour renouveler un certificat App Service, consultez Renouveler un certificat App Service.

Pour renouveler un certificat que vous avez importé dans App Service à partir de Key Vault, consultez Renouveler votre certificat Azure Key Vault.

Une fois le certificat renouvelé dans votre coffre de clés, App Service synchronise automatiquement le nouveau certificat et met à jour toute liaison de certificat applicable sous 24 heures. Pour effectuer une synchronisation manuelle, procédez comme suit :

  1. Accédez à la page Certificat de votre application.

  2. Sous Apporter vos propres certificats (.pfx), sélectionnez le bouton détails ... pour le certificat de coffre de clés importé, ensuite Synchroniser.

Forum aux questions

Comment puis-je automatiser l’ajout d’un certificat bring-your-own-own à une application ?

Puis-je configurer un certificat d’autorité de certification privée sur mon application ?

App Service dispose d'une liste de certificats racine de confiance que vous ne pouvez pas modifier dans la version multi-tenant App Service, mais vous pouvez charger votre propre certificat CA dans le Trusted Root Store dans un App Service Environment (ASE), qui est un environnement à un seul locataire dans App Service. (Les plans Gratuit, De base, Standard et Premium App Service sont tous multi-locataires, et les plans Isolé sont mono-locataires.)

Plus de ressources