Esercitazione: Connessione un'app Web per app Azure configurazione con service Connessione or
Articolo
Informazioni su come connettere un'app ASP.NET Core in esecuzione in app Azure Service a app Azure Configuration usando uno dei metodi seguenti:
Identità gestita assegnata dal sistema
Identità gestita assegnata dall'utente (UMI)
Entità servizio
Connection string
In questa esercitazione usare l'interfaccia della riga di comando di Azure per completare le attività seguenti:
Configurare le risorse di Azure
Creare una connessione tra un'app Web e Configurazione app
Compilare e distribuire l'app nel servizio app Azure
Prerequisiti
Un account Azure con una sottoscrizione attiva. Il ruolo di accesso all'interno della sottoscrizione deve essere "Collaboratore" o "Proprietario". Creare un account gratuitamente.
Seguire questa procedura per creare un servizio app e distribuire l'app di esempio. Assicurarsi di avere il ruolo Collaboratore sottoscrizione o Proprietario.
Creare un servizio app e distribuire l'app di esempio che usa l'identità gestita assegnata dal sistema per interagire con Configurazione app.
# Change directory to the SMI sample
cd serviceconnector-webapp-appconfig-dotnet\system-managed-identity
# Create a web app
LOCATION='eastus'
RESOURCE_GROUP_NAME='service-connector-tutorial-rg'
APP_SERVICE_NAME='webapp-appconfig-smi'
az webapp up --location $LOCATION --resource-group $RESOURCE_GROUP_NAME --name $APP_SERVICE_NAME
Parametro
Descrizione
Esempio
Ufficio
Selezionare una località nelle vicinanze. Usare az account list-locations --output table per elencare le posizioni.
eastus
Nome gruppo di risorse
Questo gruppo di risorse verrà usato per organizzare tutte le risorse di Azure necessarie per completare questa esercitazione.
service-connector-tutorial-rg
Nome del servizio app
Il nome del servizio app viene usato come nome della risorsa in Azure e per formare il nome di dominio completo per l'app, sotto forma di endpoint https://<app-service-name>.azurewebsites.comserver . Questo nome deve essere univoco in tutti Azure e gli unici caratteri consentiti sono A-Z,-09 e .-
webapp-appconfig-smi
Creare un servizio app e distribuire l'app di esempio che usa l'identità gestita assegnata dall'utente per interagire con Configurazione app.
# Change directory to the UMI sample
cd serviceconnector-webapp-appconfig-dotnet\user-assigned-managed-identity
# Create a web app
LOCATION='eastus'
RESOURCE_GROUP_NAME='service-connector-tutorial-rg'
APP_SERVICE_NAME='webapp-appconfig-umi'
az webapp up --location $LOCATION --resource-group $RESOURCE_GROUP_NAME --name $APP_SERVICE_NAME
Parametro
Descrizione
Esempio
Ufficio
Selezionare una località nelle vicinanze. Usare az account list-locations --output table per elencare le posizioni.
eastus
Nome gruppo di risorse
Questo gruppo di risorse verrà usato per organizzare tutte le risorse di Azure necessarie per completare questa esercitazione.
service-connector-tutorial-rg
Nome del servizio app
Il nome del servizio app viene usato come nome della risorsa in Azure e per formare il nome di dominio completo per l'app, sotto forma di endpoint https://<app-service-name>.azurewebsites.comserver . Questo nome deve essere univoco in tutti Azure e gli unici caratteri consentiti sono A-Z,-09 e .-
webapp-appconfig-umi
Creare un'identità gestita assegnata dall'utente. Salvare l'output in un Blocco note temporaneo.
az identity create --resource-group $RESOURCE_GROUP_NAME -n "myIdentity"
Creare un servizio app e distribuire l'app di esempio che usa l'entità servizio per interagire con Configurazione app.
# Change directory to the service principal sample
cd serviceconnector-webapp-appconfig-dotnet\service-principal
# Create a web app
LOCATION='eastus'
RESOURCE_GROUP_NAME='service-connector-tutorial-rg'
APP_SERVICE_NAME='webapp-appconfig-sp'
az webapp up --location $LOCATION --resource-group $RESOURCE_GROUP_NAME --name $APP_SERVICE_NAME
Parametro
Descrizione
Esempio
Ufficio
Selezionare una località nelle vicinanze. Usare az account list-locations --output table per elencare le posizioni.
eastus
Nome gruppo di risorse
Questo gruppo di risorse verrà usato per organizzare tutte le risorse di Azure necessarie per completare questa esercitazione.
service-connector-tutorial-rg
Nome del servizio app
Il nome del servizio app viene usato come nome della risorsa in Azure e per formare il nome di dominio completo per l'app, sotto forma di endpoint https://<app-service-name>.azurewebsites.comserver . Questo nome deve essere univoco in tutti Azure e gli unici caratteri consentiti sono A-Z,-09 e .-
webapp-appconfig-sp
Creare un'entità servizio, assicurarsi di sostituire con l'ID yourSubscriptionID sottoscrizione effettivo. Salvare l'output in un Blocco note temporaneo.
az ad sp create-for-rbac --name myServicePrincipal --role Contributor --scopes /subscriptions/{yourSubscriptionID}/resourceGroups/$RESOURCE_GROUP_NAME
Creare un servizio app e distribuire l'app di esempio che usa stringa di connessione per interagire con Configurazione app.
# Change directory to the service principal sample
cd serviceconnector-webapp-appconfig-dotnet\connection-string
# Create a web app
LOCATION='eastus'
RESOURCE_GROUP_NAME='service-connector-tutorial-rg'
APP_SERVICE_NAME='webapp-appconfig-cs'
az webapp up --location $LOCATION --resource-group $RESOURCE_GROUP_NAME --name $APP_SERVICE_NAME
Parametro
Descrizione
Esempio
Ufficio
Selezionare una località nelle vicinanze. Usare az account list-locations --output table per elencare le posizioni.
eastus
Nome gruppo di risorse
Questo gruppo di risorse verrà usato per organizzare tutte le risorse di Azure necessarie per completare questa esercitazione.
service-connector-tutorial-rg
Nome del servizio app
Il nome del servizio app viene usato come nome della risorsa in Azure e per formare il nome di dominio completo per l'app, sotto forma di endpoint https://<app-service-name>.azurewebsites.comserver . Questo nome deve essere univoco in tutti Azure e gli unici caratteri consentiti sono A-Z,-09 e .-
Creare una connessione tra l'applicazione Web e l'archivio Configurazione app usando un'autenticazione dell'identità gestita assegnata dal sistema. Questa connessione viene eseguita tramite service Connessione or.
system-identity fa riferimento al tipo di autenticazione SMI (System-Assigned Managed Identity). Service Connessione or supporta anche le autenticazioni seguenti: identità gestita assegnata dall'utente (UMI), stringa di connessione (segreto) e entità servizio.
Creare una connessione tra l'applicazione Web e l'archivio Configurazione app usando un'autenticazione dell'identità gestita assegnata dall'utente. Questa connessione viene eseguita tramite service Connessione or.
user-identity fa riferimento al tipo di autenticazione dell'identità gestita assegnata dall'utente. Service Connessione or supporta anche le autenticazioni seguenti: identità gestita assegnata dal sistema, stringa di connessione (segreto) e entità servizio.
Esistono due modi per trovare :client-id
Nell'interfaccia della riga di comando di Azure immettere az identity show -n "myIdentity" -g $RESOURCE_GROUP_NAME --query 'clientId'.
Nella portale di Azure aprire l'identità gestita creata in precedenza e in Panoramica ottenere il valore in ID client.
Creare una connessione tra l'applicazione Web e l'archivio Configurazione app usando un'entità servizio. Questa operazione viene eseguita tramite service Connessione or.
service-principal fa riferimento al tipo di autenticazione dell'entità servizio. Service Connessione or supporta anche le autenticazioni seguenti: identità gestita assegnata dal sistema (UMI), identità gestita assegnata dall'utente (UMI) e stringa di connessione (segreto).
Creare una connessione tra l'applicazione Web e l'archivio Configurazione app usando un stringa di connessione. Questa connessione viene eseguita tramite service Connessione or.
secret fa riferimento al tipo di autenticazione della stringa di connessione. Service Connessione or supporta anche le autenticazioni seguenti: identità gestita assegnata dal sistema, identità gestita assegnata dall'utente e entità servizio.
Convalidare la connessione
Per verificare se la connessione funziona, passare all'app Web dal https://<myWebAppName>.azurewebsites.net/ browser. Una volta che il sito Web è in esecuzione, verrà visualizzato "Hello. L'app Web di Azure è connessa a Configurazione app dal servizio Connessione or".
Funzionamento
Di seguito sono riportati i Connessione or del servizio gestiti in background per ogni tipo di autenticazione.
Service Connessione or gestisce automaticamente la configurazione della connessione:
Configurare l'app Web per consentire all'applicazione AZURE_APPCONFIGURATION_ENDPOINT di accedervi e ottenere l'endpoint Configurazione app. Accedere al codice di esempio.
Attivare l'autenticazione gestita assegnata dal sistema dell'app Web e concedere Configurazione app un ruolo lettore dati per consentire all'applicazione di eseguire l'autenticazione al Configurazione app usando DefaultAzureCredential da Azure.Identity. Accedere al codice di esempio.
Service Connessione or gestisce automaticamente la configurazione della connessione:
Configurare l'app Web per consentire all'applicazione AZURE_APPCONFIGURATION_ENDPOINTAZURE_APPCONFIGURATION_CLIENTID di accedervi e ottenere l'endpoint di configurazione dell'app nel codice;
Attivare l'autenticazione gestita assegnata dall'utente dell'app Web e concedere Configurazione app un ruolo lettore dati per consentire all'applicazione di eseguire l'autenticazione al Configurazione app usando DefaultAzureCredential da Azure.Identity. Accedere al codice di esempio.
Service Connessione or gestisce automaticamente la configurazione della connessione:
Configurare l'app Web per consentire all'applicazione AZURE_APPCONFIGURATION_ENDPOINT di accedervi e ottenere l'endpoint Configurazione app. Accedere al codice di esempio.
salvare le credenziali dell'entità servizio nell'app Web Impostazioni AZURE_APPCONFIGURATION_CLIENTID. AZURE_APPCONFIGURATION_TENANTIDe AZURE_APPCONFIGURATION_CLIENTSECRET concedere Configurazione app ruolo lettore dati all'entità servizio, in modo che l'applicazione possa essere autenticata nel Configurazione app nel codice usando azure.IdentityClientSecretCredential.
Service Connessione or gestisce automaticamente la configurazione della connessione:
Configurare l'app Web per consentire all'applicazione AZURE_APPCONFIGURATION_CONNECTIONSTRING di accedervi e ottenere il Configurazione app stringa di connessione. Accedere al codice di esempio.
Attivare l'autenticazione gestita assegnata dal sistema dell'app Web e concedere Configurazione app un ruolo lettore dati per consentire all'applicazione di eseguire l'autenticazione al Configurazione app usando DefaultAzureCredential da Azure.Identity. Accedere al codice di esempio.
Per altre informazioni, vedere Service Connessione or internals (Elementi interni di Service Connessione or).
Test (facoltativo)
Facoltativamente, eseguire i test seguenti:
Aggiornare il valore della chiave SampleApplication:Settings:Messages nel Configurazione app Store.
az appconfig kv set -n <myAppConfigStoreName> --key SampleApplication:Settings:Messages --value hello --yes
Passare all'app Web di Azure passando a https://<myWebAppName>.azurewebsites.net/ e aggiornando la pagina. Si noterà che il messaggio viene aggiornato a "hello".
Pulire le risorse
Al termine, se non si useranno più queste risorse di Azure, eliminarle eseguendo il az group delete comando . Questo comando elimina il gruppo di risorse e tutte le risorse al suo interno.
az group delete -n <myResourceGroupName> --yes
Passaggi successivi
Seguire le esercitazioni elencate di seguito per altre informazioni su Service Connessione or.