Utiliser des certificats TLS/SSL dans votre application dans Azure Spring Apps
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 au : Niveau ✔️ De base/Standard ✔️ Entreprise
Cet article vous explique comment utiliser des certificats publics dans Azure Spring Apps pour votre application. Il est possible que votre application joue le rôle d’un client et accède à un service externe qui exige une authentification par certificat. Elle pourrait également être amenée à effectuer des tâches de chiffrement.
Lorsque vous confiez la gestion de vos certificats TLS/SSL à Azure Spring Apps, vous pouvez conserver les certificats et le code de votre application séparément pour protéger vos données sensibles. Le code de votre application a accès aux certificats publics que vous ajoutez à votre instance Azure Spring Apps.
Prérequis
- Une application déployée dans Azure Spring Apps. Consultez Démarrage rapide : Déploiement d’une première application dans Azure Spring Apps ou utilisez une application existante.
- Un fichier de certificat dotée de l’extension .crt, .cer, .pem ou .der, ou une instance d’Azure Key Vault déployée avec un certificat privé.
Importer un certificat
Vous pouvez choisir d’importer votre certificat dans votre instance Azure Spring Apps à partir de Key Vault ou d’utiliser un fichier de certificat local.
Importer un certificat à partir de Key Vault
Vous devez accorder à Azure Spring Apps l’accès à votre coffre de clés avant d’importer votre certificat.
Azure Key Vault propose deux systèmes d'autorisation : le contrôle d’accès en fonction du rôle (Azure RBAC), qui fonctionne sur les plans de contrôle et de données d'Azure, et le modèle de politique d'accès, qui fonctionne uniquement sur le plan de données.
Pour accorder l’accès, procédez comme suit :
Connectez-vous au portail Azure.
Sélectionnez Coffres de clés, puis le coffre de clés à partir duquel vous importez votre certificat.
Dans le volet de navigation, sélectionnez Stratégies d’accès, puis sélectionnez Créer.
Sélectionnez Autorisations du certificat, puis Get (Obtenir) et List (Lister).
Sous principal, sélectionnez fournisseur de ressources Azure Spring Cloud.
Sélectionnez Vérifier + créer, puis Créer.
Après avoir accordé l’accès à votre coffre de clés, vous pouvez importer votre certificat en procédant comme suit :
Accédez à votre instance de service.
Dans le volet de navigation gauche de votre instance, sélectionnez Paramètres TLS/SSL.
Sélectionnez Importer un certificat de coffre de clés dans la section Certificats à clé publique.
Sélectionnez votre coffre de clés dans la section Coffres de clés, puis votre certificat dans la section Certificat, enfin Sélectionner.
Fournissez une valeur pour Nom du certificat, sélectionnez Activer la synchronisation automatique si nécessaire, puis Appliquer. Pour obtenir plus d’informations, consultez la section Certificat de synchronisation automatique de Mapper un domaine personnalisé existant à Azure Spring Apps.
Une fois que vous avez correctement importé votre certificat, vous le voyez dans la liste des certificats de clé publique.
Remarque
Les instances Azure Key Vault et Azure Spring Apps doivent se trouver dans le même locataire.
Importation d’un fichier de certificat local
Pour importer un fichier de certificat stocké localement, procédez comme suit :
- Accédez à votre instance de service.
- Dans le volet de navigation gauche de votre instance, sélectionnez Paramètres TLS/SSL.
- Sélectionnez Charger un certificat public dans la section Certificats à clé publique.
Une fois que vous avez correctement importé votre certificat, vous le voyez dans la liste des certificats de clé publique.
Chargement d’un certificat
Pour charger un certificat dans votre application dans Azure Spring Apps, commencez par suivre cette procédure :
- Accédez à votre instance d’application.
- Dans le volet de navigation gauche de votre application, sélectionnez Gestion des certificats.
- Sélectionnez Ajouter un certificat pour choisir les certificats accessibles à l’application.
Chargement d’un certificat à partir du code
Vos certificats chargés sont disponibles dans le dossier /etc/azure-spring-cloud/certs/public. Utilisez le code Java suivant pour charger un certificat public dans une application dans Azure Spring Apps.
CertificateFactory factory = CertificateFactory.getInstance("X509");
FileInputStream is = new FileInputStream("/etc/azure-spring-cloud/certs/public/<certificate name>");
X509Certificate cert = (X509Certificate) factory.generateCertificate(is);
// use the loaded certificate
Chargement d’un certificat dans le magasin de confiance
Dans le cas d’une application Java, vous pouvez choisir Charger dans le magasin de confiance pour le certificat sélectionné. Le certificat est automatiquement ajouté aux TrustStores par défaut Java pour authentifier un serveur dans l’authentification TLS/SSL.
Le journal suivant de l’application montre que le certificat a bien été chargé.
Load certificate from specific path. alias = <certificate alias>, thumbprint = <certificate thumbprint>, file = <certificate name>