Konfigurieren von Anwendungseinstellungen

Abgeschlossen

In App Service handelt es sich bei App-Einstellungen um Variablen, die als Umgebungsvariablen an den Anwendungscode übergeben werden. Bei Linux-Apps und benutzerdefinierten Containern übergibt App Service mithilfe des Flags --env App-Einstellungen an den Container, um die Umgebungsvariable im Container festzulegen.

Sie können auf die Anwendungseinstellungen zugreifen, indem Sie zur Verwaltungsseite Ihrer App navigieren und Konfiguration > Anwendungseinstellungen auswählen.

Navigating to Configuration > Application settings

Für ASP.NET- und ASP.NET Core-Entwickler entspricht die Festlegung von App-Einstellungen in App Service der Festlegung in <appSettings> in Web.config oder appsettings.json, aber die Werte in App Service überschreiben die in Web.config oder appsettings.json. Sie können Entwicklungseinstellungen (z. B. das lokale MySQL-Kennwort) in Web.config oder appsettings.json und Produktionsgeheimnisse (z. B. das Azure MySQL-Datenbank-Kennwort) sicher in App Service speichern. Der gleiche Code verwendet Ihre Entwicklungseinstellungen, wenn Sie lokal debuggen, und verwendet Ihre Produktionsgeheimnisse, wenn sie in Azure bereitgestellt werden.

App-Einstellungen werden bei der Speicherung stets verschlüsselt (encrypted-at-rest).

Hinzufügen und Bearbeiten von Einstellungen

Wählen Sie zum Hinzufügen einer neuen App-Einstellung die Option Neue Anwendungseinstellung aus. Wenn Sie Bereitstellungsslots verwenden, können Sie angeben, ob Ihre Einstellung austauschbar ist oder nicht. Im Dialogfeld können Sie die Einstellung im aktuellen Slot beibehalten.

Selecting deployment slot setting to stick the setting to the current slot.

Um eine Einstellung zu bearbeiten, wählen Sie die Schaltfläche Bearbeiten auf der rechten Seite aus.

Wählen Sie Aktualisieren aus, wenn Sie fertig sind. Vergessen Sie nicht, Speichern auszuwählen, wenn Sie wieder auf der Seite Konfiguration sind.

Hinweis

In einem standardmäßigen oder benutzerdefinierten Linux-Container muss jede geschachtelte JSON-Schlüsselstruktur im App-Einstellungsnamen wie ApplicationInsights:InstrumentationKey in App Service als ApplicationInsights__InstrumentationKey für den Schlüsselnamen konfiguriert werden. Mit anderen Worten: Jedes : muss durch __ (doppelter Unterstrich) ersetzt werden.

Massenbearbeitung von Anwendungseinstellungen

Um App-Einstellungen massenhaft hinzuzufügen oder zu bearbeiten, wählen Sie zum die Bearbeitungsschaltfläche Erweitert aus. Wählen Sie Aktualisieren aus, wenn Sie fertig sind. App-Einstellungen haben folgende JSON-Formatierung:

[
  {
    "name": "<key-1>",
    "value": "<value-1>",
    "slotSetting": false
  },
  {
    "name": "<key-2>",
    "value": "<value-2>",
    "slotSetting": false
  },
  ...
]

Konfigurieren von Verbindungszeichenfolgen

Für ASP.NET- und ASP.NET Core-Entwickler überschreiben die Werte, die Sie in App Service festlegen, die Werte in Web.config. Für andere Sprachstapel ist es besser, stattdessen App-Einstellungen zu verwenden, da Verbindungszeichenfolgen eine besondere Formatierung in den Variablenschlüsseln erfordern, um auf die Werte zuzugreifen. Verbindungszeichenfolgen werden bei der Speicherung stets verschlüsselt (encrypted-at-rest).

Tipp

In einem Fall sollten Sie Verbindungszeichenfolgen anstelle von App-Einstellungen für Nicht-.NET-Sprachen verwenden: bestimmte Azure-Datenbanktypen werden nur dann, wenn Sie eine Verbindungszeichenfolge für die Datenbank in Ihrer App Service-App konfigurieren, zusammen mit der App gesichert.

Das Hinzufügen und Bearbeiten von Verbindungszeichenfolgen entspricht den gleichen Prinzipien wie andere App-Einstellungen, und diese können auch an Bereitstellungsslots gebunden werden. Ein Beispiel für Verbindungszeichenfolgen im JSON-Format, die Sie zum massenhaften Hinzufügen oder Bearbeiten verwenden würden:

[
  {
    "name": "name-1",
    "value": "conn-string-1",
    "type": "SQLServer",
    "slotSetting": false
  },
  {
    "name": "name-2",
    "value": "conn-string-2",
    "type": "PostgreSQL",
    "slotSetting": false
  },
  ...
]