Configurazione delle credenziali per la distribuzione del Servizio app di Azure

Per proteggere la distribuzione di app da un computer locale, app Azure Servizio supporta due tipi di credenziali per la distribuzione Git locale e la distribuzione FTP/S. Queste credenziali sono diverse dalle credenziali della sottoscrizione di Azure.

  • Credenziali a livello di utente: un insieme di credenziali per tutto l'account Azure. Può essere usato per distribuire il Servizio app per qualsiasi app, in tutte le sottoscrizioni a cui l'account di Azure è autorizzato ad accedere. Corrisponde al set predefinito indicato nell'interfaccia utente grafica del portale, ad esempio nelle aree Panoramica e Proprietà della pagina delle risorse dell'app. Quando a un utente viene concesso l'accesso all'app tramite il controllo degli accessi in base al ruolo (RBAC) o le autorizzazioni di co-amministratore, tale utente può usare le proprie credenziali a livello di utente fino a quando non viene revocato l'accesso. Non condividere queste credenziali con altri utenti di Azure.

  • Credenziali a livello di applicazione: un insieme di credenziali per ogni applicazione. Può essere usato per distribuire solo in quella app. Le credenziali per ogni app vengono generate automaticamente al momento della creazione dell'app. Non possono essere configurate manualmente, ma possono essere reimpostate in qualsiasi momento. Per ottenere l'accesso alle credenziali a livello di app tramite il controllo degli accessi in base al ruolo (RBAC), l'utente deve avere il ruolo di Collaboratore o un ruolo superiore per l'app, incluso il ruolo predefinito Collaboratore sito Web. I lettori non sono autorizzati alla pubblicazione e quindi non possono accedere a queste credenziali.

Nota

Quando l'autenticazione di base è disabilitata, non è possibile visualizzare o configurare le credenziali di distribuzione nel Centro distribuzione.

Configurare le credenziali dell'ambito utente

Eseguire il comando az webapp deployment user set . Sostituire <nome utente e <password> con un nome utente> e una password dell'utente di distribuzione.

  • Il nome utente deve essere univoco in Azure e per i push Git locali non deve contenere il simbolo "\@".
  • La password deve essere composta da almeno otto caratteri, con due dei tre elementi seguenti: lettere, numeri e simboli.
az webapp deployment user set --user-name <username> --password <password>

L'output JSON mostra la password come null.

Usare le credenziali dell'ambito utente con FTP/FTPS

L'autenticazione a un endpoint FTP/FTPS con credenziali con ambito utente richiede un nome utente nel formato seguente: <app-name>\<user-name>

Poiché le credenziali dell'ambito utente sono collegate all'utente e non a una risorsa specifica, il nome utente deve essere in questo formato per indirizzare l'azione di accesso all'endpoint dell'app corretto.

Ottenere le credenziali dell'ambito dell'applicazione

Ottenere le credenziali di application-scope usando il comando az webapp deployment list-publishing-profiles . Ad esempio:

az webapp deployment list-publishing-profiles --resource-group <group-name> --name <app-name>

Per la distribuzione Git locale, è anche possibile usare il comando az webapp deployment list-publishing-credentials per ottenere un URI remoto Git per l'app, con le credenziali dell'ambito dell'applicazione già incorporate. Ad esempio:

az webapp deployment list-publishing-credentials --resource-group <group-name> --name <app-name> --query scmUri

Si noti che l'URI remoto Git restituito non contiene /<app-name>.git alla fine. Quando si aggiunge l'URI remoto, assicurarsi di aggiungere /<app-name>.git per evitare un errore 22 con git-http-push. Inoltre, quando si usa git remote add ... tramite shell che usano il segno di dollaro per l'interpolazione variabile (ad esempio bash), escape di qualsiasi segno di dollaro (\$) nel nome utente o nella password. L'impossibilità di eseguire l'escape di questo carattere può causare errori di autenticazione.

Reimpostare le credenziali dell'ambito dell'applicazione

Reimpostare le credenziali dell'ambito applicazione usando il comando az resource invoke-action :

az resource invoke-action --action newpassword --resource-group <group-name> --name <app-name> --resource-type Microsoft.Web/sites

Disabilitare l'autenticazione di base

Vedere Disabilitare l'autenticazione di base nelle distribuzioni di servizio app.

Passaggi successivi

Informazioni su come usare queste credenziali per distribuire l'app da GIT locale o usando FTP/S.