Avvio rapido: Distribuire un'applicazione gestita del catalogo di servizi
Articolo
In questa guida di avvio rapido si usa la definizione dell'applicazione gestita creata usando uno degli articoli di avvio rapido. La distribuzione crea a due gruppi di risorse. Un gruppo di risorse contiene l'applicazione gestita e l'altro è un gruppo di risorse gestite per le risorse distribuite. La definizione dell'applicazione gestita distribuisce un piano di servizio app, un servizio app e un account di archiviazione.
Creare un'applicazione gestita del catalogo di servizi
Gli esempi usano i nomi dei gruppi di risorse creati nella guida di avvio rapido per pubblicare una definizione di applicazione. Se è stata usata la guida di avvio rapido per pubblicare una definizione con una risorsa di archiviazione personalizzata (BYOS, Bring Your Own Storage), usare i nomi dei gruppi di risorse usati nell'articolo della guida.
Pubblicare una definizione di applicazione: packageStorageGroup e appDefinitionGroup.
Pubblicare una definizione con una risorsa di archiviazione personalizzata (BYOS, Bring Your Own Storage): packageStorageGroup, byosDefinitionStorageGroup e byosAppDefinitionGroup.
Per ottenere la definizione dell'applicazione gestita con Azure PowerShell, eseguire i comandi seguenti.
In Visual Studio Code aprire un nuovo terminale di PowerShell e accedere alla sottoscrizione di Azure.
Connect-AzAccount
Verrà aperto il browser predefinito e richiesto di eseguire l'accesso ad Azure. Per altre informazioni, vedere Accedere con Azure PowerShell.
Da Azure PowerShell recuperare la definizione dell'applicazione gestita. In questo esempio usare il nome del gruppo di risorse appDefinitionGroup creato durante la distribuzione della definizione dell'applicazione gestita.
Dall'interfaccia della riga di comando di Azure recuperare la definizione dell'applicazione gestita. In questo esempio usare il nome del gruppo di risorse appDefinitionGroup creato durante la distribuzione della definizione dell'applicazione gestita.
az managedapp definition list --resource-group appDefinitionGroup
Il comando elenca tutte le definizioni disponibili nel gruppo di risorse specificato, ad esempio sampleManagedApplication.
Creare una variabile per l'ID risorsa della definizione dell'applicazione gestita.
definitionid=$(az managedapp definition show --resource-group appDefinitionGroup --name sampleManagedApplication --query id --output tsv)
Quando si distribuisce l'applicazione gestita, si usa il valore della variabile $definitionid.
Per ottenere la definizione dell'applicazione gestita dal portale di Azure, seguire questa procedura.
È anche necessario creare un nome per il gruppo di risorse dell'applicazione gestita. Il gruppo di risorse viene creato quando si distribuisce l'applicazione gestita.
Eseguire i comandi seguenti per creare il nome del gruppo di risorse gestite.
Le variabili $mrgprefix e $mrgtimestamp vengono concatenate e archiviate nella variabile $mrgname. Il valore della variabile è espresso nel formato mrg-sampleManagedApplication-20230512103059. Quando si distribuisce l'applicazione gestita, si usa il valore della variabile $mrgname.
È necessario fornire numerosi parametri al comando di distribuzione per l'applicazione gestita. È possibile usare una stringa in formato JSON o creare un file JSON. In questo esempio viene usata una stringa in formato JSON. Il carattere di escape di PowerShell per le virgolette è il carattere di apice inverso (`). L'apice inverso viene usato anche per la continuazione della riga in modo che i comandi possano estendersi su più righe.
La sintassi della stringa in formato JSON è la seguente:
Per la leggibilità, la stringa JSON completata usa l'apice inverso per la continuazione della riga. I valori vengono archiviati nella variabile $params e usati nel comando di distribuzione. I parametri nella stringa JSON sono necessari per distribuire le risorse gestite.
appServicePlanName: creare un nome di piano. Può includere massimo 40 caratteri alfanumerici e trattini. Ad esempio, demoAppServicePlan. I nomi dei piani di servizio app devono essere univoci all'interno di un gruppo di risorse nella sottoscrizione.
appServiceNamePrefix: creare un prefisso per il nome del piano. Può includere massimo 47 caratteri alfanumerici e trattini. Ad esempio, demoApp. Durante la distribuzione, il prefisso viene concatenato con una stringa univoca per creare un nome univoco a livello globale in Azure.
Creare un gruppo di risorse per la distribuzione dell'applicazione gestita.
az group create --name applicationGroup --location westus
È anche necessario creare un nome e un percorso per il gruppo di risorse dell'applicazione gestita. Il gruppo di risorse viene creato quando si distribuisce l'applicazione gestita.
Eseguire i comandi seguenti per creare il percorso del gruppo di risorse gestite.
Le variabili $mrgprefix e $mrgtimestamp vengono concatenate e archiviate nella variabile $mrgname. Il valore della variabile è espresso nel formato mrg-sampleManagedApplication-20230512103059. Le variabili mrgname e subid vengono concatenate per creare il valore della variabile mrgpath che crea il gruppo di risorse gestite durante la distribuzione.
È necessario fornire numerosi parametri al comando di distribuzione per l'applicazione gestita. È possibile usare una stringa in formato JSON o creare un file JSON. In questo esempio viene usata una stringa in formato JSON. Il carattere di escape di Bash per le virgolette è il carattere di barra rovesciata (\). La barra rovesciata viene usata anche per la continuazione della riga in modo che i comandi possano estendersi su più righe.
La sintassi della stringa in formato JSON è la seguente:
Per la leggibilità, la stringa JSON completata usa la barra rovesciata per la continuazione della riga. I valori vengono archiviati nella variabile params e usati nel comando di distribuzione. I parametri nella stringa JSON sono necessari per distribuire le risorse gestite.
appServicePlanName: creare un nome di piano. Può includere massimo 40 caratteri alfanumerici e trattini. Ad esempio, demoAppServicePlan. I nomi dei piani di servizio app devono essere univoci all'interno di un gruppo di risorse nella sottoscrizione.
appServiceNamePrefix: creare un prefisso per il nome del piano. Può includere massimo 47 caratteri alfanumerici e trattini. Ad esempio, demoApp. Durante la distribuzione, il prefisso viene concatenato con una stringa univoca per creare un nome univoco a livello globale in Azure.
Specificare i valori per la scheda Informazioni di base e selezionare Avanti.
Sottoscrizione: selezionare la sottoscrizione in cui si vuole distribuire l'applicazione gestita.
Gruppo di risorse: selezionare il gruppo di risorse. Per questo esempio, creare un nuovo gruppo di risorse denominato applicationGroup.
Area: selezionare la località in cui si vuole distribuire la risorsa.
Nome applicazione: immettere un nome per l'applicazione gestita. Per questo esempio, usare demoManagedApplication.
Gruppo di risorse gestite: nome del gruppo di risorse gestite che contiene le risorse distribuite per l'applicazione gestita. Il nome predefinito è nel formato mrg-{definitionName}-{dateTime}, ma è possibile modificarlo.
Specificare i valori per la scheda Impostazioni dell'app Web e selezionare Avanti.
Nome del piano di servizio app: assegnare un nome al piano. Può includere massimo 40 caratteri alfanumerici e trattini. Ad esempio, demoAppServicePlan. I nomi dei piani di servizio app devono essere univoci all'interno di un gruppo di risorse nella sottoscrizione.
Prefisso del nome del servizio app: creare un prefisso per il nome del piano. Può includere massimo 47 caratteri alfanumerici e trattini. Ad esempio, demoApp. Durante la distribuzione, il prefisso viene concatenato con una stringa univoca per creare un nome univoco a livello globale in Azure.
Name: specificare un nome per l'applicazione gestita. Per questo esempio, usare demoManagedApplication.
ResourceGroupName: nome del gruppo di risorse creato per l'applicazione gestita.
Location: specificare l'area per la distribuzione delle risorse. Per questo esempio, usare westus.
ManagedResourceGroupName: usa il valore della variabile $mrgname. Il gruppo di risorse gestite viene creato quando viene distribuita l'applicazione gestita.
ManagedApplicationDefinitionId: usa il valore della variabile $definitionid per l'ID risorsa della definizione dell'applicazione gestita.
Kind: specifica il tipo di applicazione gestita. Questo esempio usa ServiceCatalog.
Parameter: usa il valore della variabile $params nella stringa in formato JSON.
Eseguire il comando seguente per distribuire l'applicazione gestita.
name: specificare un nome per l'applicazione gestita. Per questo esempio, usare demoManagedApplication.
resource-group: nome del gruppo di risorse creato per l'applicazione gestita.
location: specificare l'area per la distribuzione delle risorse. Per questo esempio, usare westus.
managed-rg-id: usa il valore della variabile $mrgpath. Il gruppo di risorse gestite viene creato quando viene distribuita l'applicazione gestita.
managedapp-definition-id: usa il valore della variabile $definitionid per l'ID risorsa della definizione dell'applicazione gestita.
kind: specifica il tipo di applicazione gestita. Questo esempio usa ServiceCatalog.
parameters: usa il valore della variabile $params nella stringa in formato JSON.
Esaminare il riepilogo dei valori selezionati e verificare che non vengano visualizzati errori. Selezionare Crea per distribuire l'applicazione gestita.
Visualizza risultati
Dopo la distribuzione dell'applicazione gestita del catalogo di servizi, sono disponibili due nuovi gruppi di risorse. Un gruppo di risorse contiene l'applicazione gestita. L'altro gruppo di risorse contiene le risorse gestite distribuite. In questo esempio, un servizio app, un piano di servizio app e un account di archiviazione.
Applicazione gestita
Al termine della distribuzione, è possibile verificare lo stato dell'applicazione gestita.
Eseguire il comando seguente per verificare lo stato dell'applicazione gestita.
az managedapp list --resource-group applicationGroup
Il comando seguente analizza i dati relativi all'applicazione gestita per visualizzare solo il nome e lo stato di provisioning dell'applicazione.
az managedapp list --resource-group applicationGroup --query "[].{Name:name, provisioningState:provisioningState}"
Passare al gruppo di risorse denominato applicationGroup e selezionare Panoramica. Il gruppo di risorse contiene l'applicazione gestita denominata demoManagedApplication.
Selezionare il nome dell'applicazione gestita per ottenere altre informazioni, ad esempio il collegamento al gruppo di risorse gestite.
Risorse gestite
È possibile visualizzare le risorse distribuite nel gruppo di risorse gestite.
Per visualizzare le risorse del gruppo di risorse gestite, eseguire il comando seguente. La variabile $mrgname è stata creata al momento della creazione dei parametri.
Get-AzResource -ResourceGroupName $mrgname
Per visualizzare tutte le assegnazioni di ruolo per il gruppo di risorse gestite.
Get-AzRoleAssignment -ResourceGroupName $mrgname
Per la definizione dell'applicazione gestita creata negli articoli di avvio rapido è stato usato un gruppo con l'assegnazione di ruolo Proprietario. È possibile visualizzare il gruppo con il comando seguente.
È anche possibile elencare le assegnazioni di rifiuto per il gruppo di risorse gestite.
Get-AzDenyAssignment -ResourceGroupName $mrgname
Per visualizzare le risorse del gruppo di risorse gestite, eseguire il comando seguente. La variabile $mrgname è stata creata al momento della creazione dei parametri.
az resource list --resource-group $mrgname
Eseguire il comando seguente per elencare solo il nome, il tipo e lo stato di provisioning per le risorse gestite.
az resource list --resource-group $mrgname --query "[].{Name:name, Type:type, provisioningState:provisioningState}"
Eseguire il comando seguente per elencare l'assegnazione di ruolo per il gruppo usato nella definizione dell'applicazione gestita.
az role assignment list --resource-group $mrgname
Il comando seguente analizza i dati per l'assegnazione di ruolo del gruppo.
az role assignment list --resource-group $mrgname --role Owner --query "[].{ResourceGroup:resourceGroup, GroupName:principalName, RoleDefinition:roleDefinitionId, Role:roleDefinitionName}"
Per esaminare le assegnazioni di rifiuto del gruppo di risorse gestite, usare il portale di Azure o i comandi di Azure PowerShell.
Passare al gruppo di risorse gestite con il prefisso del nome mrg-sampleManagedApplication e selezionare Panoramica per visualizzare le risorse distribuite. Il gruppo di risorse contiene un servizio app, un piano di servizio app e un account di archiviazione.
Il gruppo di risorse gestite e ogni risorsa creata dall'applicazione gestita ha un'assegnazione di ruolo. Se per creare la definizione è stato usato un articolo dell'avvio rapido, è stato creato un gruppo Microsoft Entra. Tale gruppo è stato usato nella definizione dell'applicazione gestita. Quando è stata distribuita l'applicazione gestita, è stata aggiunta un'assegnazione di ruolo per tale gruppo alle risorse gestite.
Per visualizzare l'assegnazione di ruolo dal portale di Azure:
Passare al gruppo di risorse mrg-sampleManagedApplication.
Selezionare Controllo di accesso (IAM)>Assegnazioni di ruolo.
È anche possibile visualizzare le assegnazioni di rifiuto della risorsa.
L'assegnazione di ruolo consente all'editore dell'applicazione di accedere per gestire l'account di archiviazione. In questo esempio, l'editore potrebbe essere il reparto IT. Le assegnazioni di rifiuto impediscono ai clienti di apportare modifiche alla configurazione di una risorsa gestita. Le app gestite sono progettate in modo che i clienti non debbano gestire le risorse. L'opzione Assegnazioni di rifiuto esclude il gruppo Microsoft Entra assegnato in Assegnazioni di ruolo.
Pulire le risorse
Quando l'applicazione gestita non è più necessaria, è possibile eliminare i gruppi di risorse, rimuovendo così tutte le risorse create. In questa guida di avvio rapido, ad esempio, sono stati creati i gruppi di risorse applicationGroup e un gruppo di risorse gestite con il prefisso mrg-sampleManagedApplication.
Il comando chiede di confermare la rimozione del gruppo di risorse.
Remove-AzResourceGroup -Name applicationGroup
Il comando richiede la conferma e quindi torna al prompt dei comandi mentre le risorse vengono eliminate.
az group delete --resource-group applicationGroup --no-wait
Nel campo di ricerca della pagina Home del portale di Azure immettere gruppi di risorse.
Selezionare Gruppi di risorse.
Selezionare applicationGroup ed Elimina gruppo di risorse.
Per confermare l'eliminazione, immettere il nome del gruppo di risorse e selezionare Elimina.
Per eliminare la definizione dell'applicazione gestita, eliminare i gruppi di risorse creati negli articoli di avvio rapido.
Pubblicare una definizione di applicazione: packageStorageGroup e appDefinitionGroup.
Pubblicare una definizione con una risorsa di archiviazione personalizzata (BYOS, Bring Your Own Storage): packageStorageGroup, byosDefinitionStorageGroup e byosAppDefinitionGroup.