web-dev-qa-db-fra.com

Comment et où définir une variable d'environnement sur Azure

J'ai une application Web ASP.NET MVC déployée sur Azure. Je lis mon réglage en utilisant la méthode GetEnvironmentVariable(...).

Le problème est que je ne trouve pas de moyen de définir cette variable d'environnement dans le portail Azure. Où puis-je faire ça?

Je ne veux pas avoir ce genre de choses dans un fichier. Les données qui seront là sont des informations d'identification.

50
jstadnicki

En fait, cela résout mon problème (que j'ai trouvé hier - et c'est aussi sur le blog de Scott Hanselman):

Meilleures pratiques pour les données de configuration privées et les chaînes de connexion lors de la configuration dans ASP.NET et Azure

TLDR;

Placez les paramètres dans un fichier séparé qui ne va pas dans le référentiel et n'est pas déployé sur le serveur. Définissez ensuite les variables manquantes dans les paramètres d'application, comme l'a montré Xiaomin Wu.

1
jstadnicki

Je suppose que vous utilisez Azure App Service (anciennement connu sous le nom de sites Web Azure).

Pour définir votre propre variable d'environnement, cliquez sur votre site → Tous les paramètres Paramètres de l'application :

Enter image description here

Ajoutez un paramètre d'application dans la section "Paramètres d'application":

Enter image description here

Vous pouvez vérifier la valeur à partir de la console de débogage.

Aller à https: // {nom de votre site} .scm.azurewebsites.net/DebugConsole:

Enter image description here

96
Xiaomin Wu

Je suis tombé sur cette question face au même problème moi-même. Eh bien, juste pour donner une réponse plus claire que j’ai trouvée à blog.elmah.io .

Tout ce que vous devez faire c'est:

  1. Incluez le nouveau paramétrage de l'application. {Env} .json dans les options de publication du fichier project.json.
  2. Accédez au portail Azure et ouvrez l'application Web.
  3. Sélectionnez les paramètres de l'application.
  4. Ajoutez une entrée pour ASPNETCORE_ENVIRONMENT et définissez-la comme vous le souhaitez.

C'est ça.

16
binjiezhao