Hoy voy a mostrar cómo almacenar los secretos de configuración de Azure App ServiceAzure App Service es una plataforma de Microsoft que permite desarrollar y alojar aplicaciones web y móviles en la nube. Ofrece soporte para varios lenguajes de programación, como .NET, Java, PHP y Python. Con características como escalado automático, integración continua y seguridad avanzada, Azure App Service facilita a los desarrolladores la construcción de aplicaciones robustas y escalables sin preocuparse por la infraestructura subyacente.... dans Azure Key VaultAzure Key Vault es un servicio de Microsoft Azure diseñado para almacenar y gestionar secretos, claves de cifrado y certificados de manera segura. Permite a las organizaciones proteger información sensible, controlando el acceso a través de políticas y autenticación. Con la integración de Azure Active Directory, facilita la gestión de identidades y permisos, garantizando que solo los usuarios autorizados puedan acceder a los datos críticos. Ideal para mejorar la seguridad.... Dans cet exemple, je vais utiliser un Plateforme DNN sitio web basado en Azure App Service utilizando una base de donnéesUne base de données est un ensemble organisé d’informations qui vous permet de stocker, Gérez et récupérez efficacement les données. Utilisé dans diverses applications, Des systèmes d’entreprise aux plateformes en ligne, Les bases de données peuvent être relationnelles ou non relationnelles. Une bonne conception est essentielle pour optimiser les performances et garantir l’intégrité de l’information, facilitant ainsi la prise de décision éclairée dans différents contextes.... SQL, qui stocke la chaîne de connexion de la base de données SQL dans Azure Key Vault. Je ne modifierai en aucun cas la base de code de l'application pour accéder à Azure Key Vault. Nous tirerons parti de la fonctionnalité d'identité gérée d'App Service pour récupérer automatiquement les secrets de Key Vault.
Aprovisionar Azure Key Vault
-
Aprovisionar Azure Key Vault
-
Pour cette démo, nous allons changer le modèle d'autorisation pour le nouveau contrôle d'accès basé sur les rôles Azure (RBAC). Il est actuellement en avant-première.
-
En fonction de votre mise en œuvre, changez le réseau comme vous le souhaitez. Pour cette démo, nous le laisserons comme point de terminaison public pour correspondre aux paramètres App Service.
- Clique sur le Revoir + Créer bouton pour démarrer le déploiement
-
Une fois créé, ajoutez-vous à la fonction « Administrateur du coffre de clés (version d'aperçu) » via le contrôle d'accès (JE SUIS). Vous pouvez maintenant commencer à gérer les secrets.
Ajouter une chaîne de connexion aux secrets Key Vault
-
Ajouter un nouveau secret à Key Vault
-
Spécifiez le type secret « Manuel », donnez-lui un nom et définissez la valeur sur la chaîne de connexion à la base de données SQL actuelle stockée dans l'application web.config
- Cliquez sur Créer. Une fois créé, cliquez sur le secret pour afficher les détails du secret, puis cliquez à nouveau sur la version actuelle
-
À côté de l'identifiant secret, cliquez sur le bouton Copier dans le presse-papiers
Ajouter la référence d'identifiant secret à la configuration Azure App Service
- Ouvrez les paramètres App Service et ajoutez un nouveau paramètre de chaîne de connexion
- Saisissez le nom de la chaîne de connexion (« SiteSqlServer » pour la plateforme DNN) et définissez la valeur « @ Microsoft.KeyVault (SecretUri = VALUE_FROM_CLIPBOARD) », où VALUE_FROM_CLIPBOARD est celui de l'étape 4 de la section précédente.
-
Cliquez sur Enregistrer pour enregistrer les paramètres de l'application.
Autoriser App Service à accéder à Key Vault
- Dans App Service à nouveau, cliquez sur Identité pour activer l'identité attribuée par le système.
-
Cliquez sur Enregistrer après l'activation « Activé » l'état
-
Cliquez sur le bouton « Attributions de rôles » puis cliquez « Ajouter une attribution de rôle (aperçu) »
-
Dans l'attribution des rôles, choisir la portée « Coffre à clés », abonnez-vous à l'abonnement où vous avez créé le Key Vault dans les étapes précédentes et le nom de la ressource Key Vault. Pour le rôle, il suffit de sélectionner « Utilisateur des clés secrètes du coffre-fort (aperçu) »
-
Finalement, accédez au fichier web.config du site Web de votre plate-forme DNN et supprimez le contenu de la chaîne de connexion.
- Visitez le site Web et vérifiez qu'il se charge correctement. À présent, la chaîne de connexion est stockée en toute sécurité dans Azure Key Vault et n'est plus stockée dans le système de fichiers.
Problèmes connus
-
ERREUR: Une erreur apparaît « Mot clé non pris en charge: ‘@ microsoft.keyvault (secrets' ». J'ai constaté que les autorisations RBAC peuvent prendre une minute ou deux à appliquer, alors essayez après quelques minutes. Essayez également de redémarrer l'application pensée dans le portail App Service, donc rien n'est mis en cache.
- Lors de la vérification des journaux DNN log4net, vous voyez de nombreuses erreurs d'un processus essayant d'initialiser une connexion à une base de données avec une chaîne de connexion invalide pendant le processus d'initialisation DNN. Cette erreur se produit actuellement dans les versions 9.7.2 ou plus tôt avec une pull request en attente pour le corriger https://github.com/dnnsoftware/Dnn.Platform/issues/4227
- IMPORTANT: si vous prévoyez d'utiliser la fonctionnalité de sauvegarde d'Azure App Service, n'utilisez pas cette méthode pour stocker les chaînes de connexion à la base de données SQL dans Azure Key Vault, car ils ne sont pas pris en charge par la fonction de sauvegarde App Service. https://stackoverflow.com/questions/56101504/backingup-azure-webapp-when-connection-string-is-injected-through-keyvault
J'espère que ça aide!
Articles Similaires:
- Automatización de renovaciones de certificados SSL de Azure Application Gateway con Let’s Encrypt y Azure Automation
- MLOps en Microsoft Azure | Opérations de ML sur Microsoft Azure
- Utilisez Data Vault pour concevoir correctement votre entrepôt de données
- Émulateur Android NoxPlayer (Lecteur d'application Nox): mieux basé sur les commentaires des utilisateurs