Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Vous pouvez ajouter des certificats de sécurité numérique à utiliser dans votre code d’application ou pour sécuriser des noms DNS (Domain Name System) personnalisés dans Azure App Service. App Service fournit un service d’hébergement web très évolutif et auto-correctif. Les certificats sont actuellement appelés certificats TLS (Transport Layer Security). Ils étaient précédemment appelés certificats SSL (Secure Sockets Layer). Ces certificats privés ou publics vous aident à sécuriser les connexions Internet. Les certificats chiffrent 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.
Choix | Descriptif |
---|---|
Créer un certificat géré de l'App Service gratuit | Certificat privé gratuit et facile à utiliser si vous devez améliorer la sécurité de votre domaine personnalisé dans App Service. |
Importer un App Service Certificate | Azure gère le certificat privé. Il combine la simplicité d’une gestion automatisée et la flexibilité des options de renouvellement et d’exportation. |
Importer un certificat à partir d’Azure Key Vault | Utile si vous utilisez 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é à partir d’un fournisseur non-Microsoft, 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
Créez une application App Service. Le plan App Service de l’application doit être au niveau De base, Standard, Premium ou Isolé. Pour mettre à jour le niveau de service, consultez l'extension d'une application.
Pour un certificat privé, assurez-vous qu’il répond à toutes les exigences d’App Service.
Certificat gratuit uniquement :
- Mappez le domaine où vous souhaitez que le certificat soit attribué à App Service. Pour plus d’informations, consultez Tutoriel : Mapper un nom DNS personnalisé existant à Azure App Service.
- Pour un domaine racine (comme contoso.com), assurez-vous que votre application n’a pas de restrictions IP configurées . La création du certificat et son renouvellement périodique pour un domaine racine dépendent de l’accessibilité de votre application depuis Internet.
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.
- Contiennent tous les certificats intermédiaires et le certificat racine dans la chaîne de certificats.
Si vous souhaitez sécuriser un domaine personnalisé dans une liaison TLS, le certificat doit répondre à ces exigences supplémentaires :
- Contiennent une utilisation étendue de la clé pour l’authentification du serveur (OID = 1.3.6.1.5.5.7.3.1).
- Être signé par une autorité de certification approuvée.
Remarque
Les certificats ECC (Elliptic Curve Cryptography) fonctionnent avec App Service lorsqu’ils sont chargés en tant que PFX, mais ne peuvent pas être importés à partir de Key Vault. Ils ne sont pas couverts par cet article. Pour connaître les étapes exactes de création de certificats ECC, collaborez avec votre autorité de certification.
Après avoir ajouté un certificat privé à une application, le certificat est stocké dans une unité de déploiement liée au groupe de ressources, à la région et au système d’exploitation du plan App Service. En interne, il est appelé 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 les services d’application 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 qui permet de sécuriser votre nom DNS personnalisé dans App Service. App Service gère ce certificat de serveur TLS/SSL sans aucune action de votre part.
Avant de créer un certificat managé gratuit, assurez-vous que vous remplissez les conditions préalables pour votre application.
DigiCert émet des certificats gratuits. Pour certains domaines, vous devez autoriser explicitement DigiCert en tant qu’émetteur de certificat en créant un enregistrement de domaine d’autorisation d’autorité de certification (CAA) avec la valeur 0 issue digicert.com
.
Azure gère entièrement les certificats pour vous, de sorte que tout aspect du certificat managé, y compris l’émetteur racine, puisse changer à tout moment. Les renouvellements de certificat modifient les parties de clé publique et privée. Toutes ces modifications de certificat 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 de la fonctionnalité d’épinglage du certificat, ajoutez un certificat à votre domaine personnalisé en utilisant l'une des autres méthodes disponibles dans cet article.
Le certificat gratuit comprend les limitations suivantes :
- Ne prend pas en charge les certificats wildcard.
- Ne prend pas en charge l’utilisation en tant que certificat client avec les empreintes numériques 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.
- Prend uniquement en charge les caractères alphanumériques, les tirets (-) et les points (.).
- Prend en charge les domaines personnalisés d’une longueur allant jusqu’à 64 caractères.
- Il est nécessaire d'avoir un enregistrement A pointant vers l’adresse IP de votre application web.
- Doit se trouver sur des applications accessibles au public.
- N’est pas pris en charge avec les domaines racines intégrés à Azure Traffic Manager.
- Doit respecter tous les critères précédents pour les émission et renouvellements de certificats réussis.
Dans le portail Azure, dans le volet gauche, sélectionnez App Services><app-name>.
Dans le volet gauche de votre application, sélectionnez Certificats. Dans le volet Certificats managés , sélectionnez Ajouter un certificat.
Sélectionnez le domaine personnalisé pour le certificat gratuit, puis Valider. Une fois la validation 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 apparaît dans la liste des certificats managés .
Pour assurer la sécurité d’un domaine personnalisé avec ce certificat, vous devez 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.
Dans le portail Azure, dans le volet gauche, sélectionnez App Services><app-name>.
Dans le volet gauche de votre application, sélectionnez Certificats>apportez vos propres certificats (.pfx)>Ajouter un certificat.
Sous Source, sélectionnez Importer un certificat App Service.
Sous certificat App Service, sélectionnez le certificat que vous avez créé.
Sous Nom convivial du certificat, donnez au certificat un nom dans votre application.
Sélectionnez Valider. Une fois la validation réussie, sélectionnez Ajouter.
Une fois l’opération terminée, le certificat apparaît dans la liste Bring your own certificates (.pfx).
Pour sécuriser un domaine personnalisé avec ce certificat, vous devez 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 Key Vault pour gérer vos certificats, vous pouvez importer un certificat PKCS12 dans App Service à partir de Key Vault si 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 (App Service). Vous pouvez accorder l’accès avec une stratégie d’accès ou un contrôle d’accès en fonction du rôle (RBAC).
Fournisseur de ressources | ID d’application du principal de service/du destinataire | Rôle RBAC du coffre de clés |
---|---|---|
Azure App Service ou Microsoft.Azure.WebSites |
-
abfa0a7c-a6b6-4736-8310-5855508787cd pour les services cloud Azure - 6a02c803-dafd-4136-b4c3-5a6f318b4714 pour les Services Cloud Azure pour le Gouvernement |
Utilisateur du certificat |
La valeur de l’ID d’application ou du destinataire du principal de service est l’ID du fournisseur de ressources App Service. Lorsque l’accès est accordé à l’aide de RBAC, l’ID d’objet correspondant de l’ID d’application du principal de service est spécifique au locataire. Pour savoir comment autoriser les autorisations Key Vault pour le fournisseur de ressources App Service à l’aide d’une stratégie d’accès, consultez Fournir l’accès aux clés, certificats et secrets Key Vault avec le contrôle d’accès en fonction du rôle Azure.
az role assignment create --role "Key Vault Certificate User" --assignee "abfa0a7c-a6b6-4736-8310-5855508787cd" --scope "/subscriptions/{subscriptionid}/resourcegroups/{resource-group-name}/providers/Microsoft.KeyVault/vaults/{key-vault-name}"
Importer un certificat dans votre application à partir de votre coffre
Dans le portail Azure, dans le volet gauche, sélectionnez App Services><app-name>.
Dans le volet gauche de votre application, sélectionnez Certificats>apportez vos propres certificats (.pfx)>Ajouter un certificat.
Sous Source, sélectionnez Importer dans Key Vault.
Choisissez Sélectionner un certificat de coffre de clés.
Pour vous aider à sélectionner le certificat, utilisez le tableau suivant :
Réglage Descriptif Abonnement Abonnement associé au coffre de clés. Coffre-fort de clés Le coffre de clés qui contient le certificat que vous voulez importer. Certificat 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. Une fois votre sélection terminée, sélectionnez Sélectionner>valider, puis sélectionnez Ajouter.
Une fois l’opération terminée, le certificat apparaît dans la liste Bring your own certificates (.pfx). Si l’importation échoue avec une erreur, c’est que le certificat ne répond pas aux exigences App Service.
Si vous remplacez votre certificat par un nouveau certificat dans le coffre de clés, App Service synchronise automatiquement votre certificat sous 24 heures.
Pour sécuriser un domaine personnalisé avec ce certificat, vous devez 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 donne plusieurs certificats dans la chaîne de certificats, vous devez fusionner les certificats en suivant le même ordre.
Dans un éditeur de texte, ouvrez chaque certificat reçu.
Pour stocker le certificat fusionné, créez un fichier nommé mergedcertificate.crt.
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. Commencez par votre certificat et terminez 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 le 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.
OpenSSL v3 a changé le chiffrement par défaut de 3DES en AES256. Utilisez la ligne -keypbe PBE-SHA1-3DES -certpbe PBE-SHA1-3DES -macalg SHA1
de commande pour remplacer la modification.
OpenSSL v1 utilise 3DES comme valeur par défaut. Par conséquent, les fichiers .pfx générés sont pris en charge sans aucune modification particulière.
Pour exporter votre certificat vers un fichier .pfx, exécutez la commande suivante. Remplacez les espaces réservés <fichier de clé privée> et <fichier de certificat fusionné> par les chemins d’accès menant à votre clé privée et à votre fichier de certificat fusionné.
openssl pkcs12 -export -out myserver.pfx -inkey <private-key-file> -in <merged-certificate-file>
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.
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.
Dans le portail Azure, dans le volet gauche, sélectionnez App Services><app-name>.
Dans le volet gauche de votre application, sélectionnez Certificats>apportez vos propres certificats (.pfx)>Charger le certificat (.pfx).
Pour vous aider à charger le certificat .pfx, utilisez le tableau suivant :
Réglage Descriptif 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 Nom du certificat qui apparaît dans votre application web. Une fois votre sélection terminée, sélectionnez Sélectionner>valider, puis sélectionnez Ajouter.
Une fois l’opération terminée, le certificat apparaît dans la liste Bring your own certificates (.pfx).
Pour assurer la sécurité d’un domaine personnalisé avec ce certificat, vous devez 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.
Une fois que vous avez chargé un certificat public dans une application, il est accessible uniquement par l’application à laquelle elle est chargée. 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.
Dans le portail Azure, dans le volet gauche, sélectionnez App Services><app-name>.
Dans le volet gauche de votre application, sélectionnez Certificats>Certificats de clé publique (.cer)>Ajouter un certificat.
Pour vous aider à charger le certificat .cer, utilisez le tableau suivant :
Réglage Descriptif fichier de certificat .cer Sélectionnez votre fichier .cer. Nom convivial du certificat Nom du certificat qui apparaît dans votre application web. Une fois que vous avez terminé, sélectionnez Ajouter.
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, veillez à ajouter le certificat renouvelé à App Service. Mettez à jour toutes les liaisons de certificat dans lesquelles le processus dépend 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 un certificat chargé
- Renouveler un certificat App Service
- Renouveler un certificat importé d’Azure Key Vault
Renouveler un certificat téléchargé
Quand vous remplacez 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 changer lorsque vous supprimez une liaison, même si cette liaison est basée sur IP. Ce résultat est particulièrement efficace lorsque vous renouvelez un certificat déjà dans une liaison IP.
Pour éviter toute modification de l’adresse IP de votre application et éviter les temps d’arrêt de votre application en raison d’erreurs HTTPS, procédez comme suit :
Accédez à la page Domaines personnalisés de votre application, sélectionnez le bouton ..., puis sélectionnez Mettre à jour la liaison.
Sélectionnez le nouveau certificat, puis sélectionnez Mettre à jour.
Supprimez le certificat existant.
Renouveler un certificat importé d’Azure Key Vault
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 dans les 24 heures les liaisons de certificat applicables. Pour effectuer une synchronisation manuelle, procédez comme suit :
Accédez à la page Certificat de votre application.
Sous Apporter vos propres certificats (.pfx), sélectionnez le bouton ... pour le certificat de coffre de clés importé, puis Synchroniser.
Foire aux questions
Comment puis-je automatiser le processus d’ajout d’un certificat bring-your-own à une application ?
- Azure CLI : Lier un certificat TLS/SSL personnalisé à une application web
- Azure PowerShell : Lier un certificat TLS/SSL personnalisé à une application web à l’aide de PowerShell
Puis-je utiliser un certificat d’autorité de certification privée pour le protocole TLS entrant sur mon application ?
Vous pouvez utiliser un certificat d’autorité de certification privée pour le protocole TLS entrant dans App Service Environment version 3. Cette action n’est pas possible dans App Service (multitenant). Pour plus d’informations sur la comparaison entre l'App Service en mode multitenant et l'App Service en mode locataire unique, consultez la comparaison entre l'App Service Environment v3 et l'App Service public multitenant.
Puis-je effectuer des appels sortants à l’aide d’un certificat client d’autorité de certification privé à partir de mon application ?
Cette fonctionnalité est prise en charge pour les applications conteneur Windows uniquement dans App Service multilocataire. Vous pouvez effectuer des appels sortants à l’aide d’un certificat client d’autorité de certification privée avec des applications basées sur du code et basées sur des conteneurs dans App Service Environment version 3. Pour plus d’informations sur la comparaison entre l'App Service en mode multitenant et l'App Service en mode locataire unique, consultez la comparaison entre l'App Service Environment v3 et l'App Service public multitenant.
Puis-je charger un certificat d’autorité de certification privée dans mon magasin racine approuvé App Service ?
Vous pouvez charger votre propre certificat d’autorité de certification dans le magasin racine approuvé dans App Service Environment version 3. Vous ne pouvez pas modifier la liste des certificats racines de confiance dans App Service (multitenant). Pour plus d’informations sur la comparaison entre l'App Service en mode multitenant et l'App Service en mode locataire unique, consultez la comparaison entre l'App Service Environment v3 et l'App Service public multitenant.
Les certificats App Service peuvent-ils être utilisés pour d’autres services ?
Oui. Vous pouvez exporter et utiliser des certificats App Service avec Azure Application Gateway ou d’autres services. Pour plus d’informations, consultez l’article de blog Création d’une copie PFX locale du certificat App Service.