Início Rápido: Implantar um aplicativo gerenciado do catálogo de serviços
Artigo
Neste início rápido, você usa a definição de aplicativo gerenciado que criou usando um dos artigos de início rápido. A implantação cria dois grupos de recursos. Um grupo de recursos contém o aplicativo gerenciado e o outro é um grupo de recursos gerenciados para os recursos implantados. A definição de aplicativo gerenciado implanta um Plano do Serviço de Aplicativo, Serviço de Aplicativo e uma conta de armazenamento.
Criar um aplicativo gerenciado do catálogo de serviços
Os exemplos usam os nomes de grupos de recursos criados no início rápido para publicar uma definição de aplicativo. Se você usou o início rápido para publicar uma definição com armazenamento próprio, use esses nomes de grupo de recursos.
Publicar a definição de aplicativo: packageStorageGroup e appDefinitionGroup.
Publicar a definição com trazer seu próprio armazenamento: packageStorageGroup, byosDefinitionStorageGroup e byosAppDefinitionGroup.
Para obter a definição do aplicativo gerenciado com o Azure PowerShell, execute os comandos a seguir.
No Visual Studio Code, abra um novo terminal do PowerShell e entre em sua assinatura do Azure.
Connect-AzAccount
O comando abre o navegador padrão e solicita que você entre no Azure. Para obter mais informações, vá para Entrar com o Azure PowerShell.
Em Azure PowerShell, obtenha a definição do aplicativo gerenciado. Neste exemplo, use o nome do grupo de recursos appDefinitionGroup que foi criado quando você implantou a definição do aplicativo gerenciado.
Você usará o valor de variável $definitionid ao implantar a definição de aplicativo gerenciado.
Para obter a definição do aplicativo gerenciado com a CLI do Azure, execute os seguintes comandos.
No Visual Studio Code, abra uma nova sessão do terminal Bash e entre com sua assinatura do Azure. Se você tem o Git instalado, selecione Git Bash.
az login
O comando abre o navegador padrão e solicita que você entre no Azure. Para obter mais informações, acesse Entrar com a CLI do Azure .
A partir da CLI do Azure, obtenha a definição do aplicativo gerenciado. Neste exemplo, use o nome do grupo de recursos appDefinitionGroup que foi criado quando você implantou a definição do aplicativo gerenciado.
az managedapp definition list --resource-group appDefinitionGroup
O comando lista todas as definições disponíveis no grupo de recursos especificado, como sampleManagedApplication.
Criar uma variável para a ID do recurso da definição de aplicativo gerenciado.
definitionid=$(az managedapp definition show --resource-group appDefinitionGroup --name sampleManagedApplication --query id --output tsv)
Você usará o valor de variável $definitionid ao implantar a definição de aplicativo gerenciado.
Para obter a definição do aplicativo gerenciado do portal do Azure, use as etapas a seguir.
Você também precisará criar um nome para o grupo de recursos de aplicativo gerenciado. O grupo de recursos é criado quando você implanta o aplicativo gerenciado.
Execute os comandos a seguir para criar o nome do grupo de recursos gerenciado.
As variáveis $mrgprefix e $mrgtimestamp são concatenadas e armazenadas na variável $mrgname. O valor da variável está no formato mrg-sampleManagedApplication-20230512103059. Você usará o valor de variável $mrgname ao implantar a definição de aplicativo gerenciado.
Você precisa fornecer vários parâmetros ao comando de implantação para o aplicativo gerenciado. Você poderá usar uma cadeia de caracteres formatada em JSON ou criar um arquivo JSON. Neste exemplo, usamos uma cadeia de caracteres formatada em JSON. O caractere de escape do PowerShell para as aspas é o caractere backtick (`). O backtick também é usado para continuação de linha para que os comandos possam usar várias linhas.
A sintaxe da cadeia de caracteres formatada em JSON é a seguinte:
Para legibilidade, a cadeia de caracteres JSON concluída usa o backtick para continuação de linha. Os valores são armazenados na variável $params e usados no comando de implantação. Os parâmetros na cadeia de caracteres JSON são necessários para implantar os recursos gerenciados.
appServicePlanName: crie um nome de plano. Máximo de 40 caracteres alfanuméricos e hifens. Por exemplo, demoAppServicePlan. Os nomes dos Planos dos Serviços de Aplicativo devem ser exclusivos dentro de um grupo de recursos em sua assinatura.
appServiceNamePrefix: Criar um prefixo para o nome do plano. Máximo de 47 caracteres alfanuméricos ou hifens. Por exemplo, demoApp. Durante a implantação, o prefixo é concatenado com uma cadeia de caracteres exclusiva para criar um nome global que é exclusivo em todo o Azure.
Crie um grupo de recursos para a implantação do aplicativo gerenciado.
az group create --name applicationGroup --location westus
Você também precisa criar um nome e um caminho para o grupo de recursos de aplicativos gerenciados. O grupo de recursos é criado quando você implanta o aplicativo gerenciado.
Execute os seguintes comandos para criar o caminho do grupo de recursos gerenciados.
As variáveis $mrgprefix e $mrgtimestamp são concatenadas e armazenadas na variável $mrgname. O valor da variável está no formato mrg-sampleManagedApplication-20230512103059. As variáveis mrgname e subid são concatenadas para criar o valor da variável mrgpath que cria o grupo de recursos gerenciados durante a implantação.
Você precisa fornecer vários parâmetros ao comando de implantação para o aplicativo gerenciado. Você poderá usar uma cadeia de caracteres formatada em JSON ou criar um arquivo JSON. Neste exemplo, usamos uma cadeia de caracteres formatada em JSON. Em Bash, o caractere de escape para as aspas é o caractere de barra invertida (\). A barra invertida também é usada para a continuação da linha para que os comandos possam usar várias linhas.
A sintaxe da cadeia de caracteres formatada em JSON é a seguinte:
Para legibilidade, a cadeia de caracteres JSON concluída usa a barra invertida para continuação de linha. Os valores são armazenados na variável params e usados no comando de implantação. Os parâmetros na cadeia de caracteres JSON são necessários para implantar os recursos gerenciados.
appServicePlanName: crie um nome de plano. Máximo de 40 caracteres alfanuméricos e hifens. Por exemplo, demoAppServicePlan. Os nomes dos Planos dos Serviços de Aplicativo devem ser exclusivos dentro de um grupo de recursos em sua assinatura.
appServiceNamePrefix: Criar um prefixo para o nome do plano. Máximo de 47 caracteres alfanuméricos ou hifens. Por exemplo, demoApp. Durante a implantação, o prefixo é concatenado com uma cadeia de caracteres exclusiva para criar um nome global que é exclusivo em todo o Azure.
Forneça valores para a guia Noções básicas e selecione Próximo.
Assinatura: escolha a assinatura na qual deseja implantar o aplicativo gerenciado.
Grupo de recursos: escolha o grupo de recursos. Para este exemplo, crie um grupo de recursos chamado applicationGroup.
Região: selecione a localização na qual deseja implantar os recursos.
Nome do Aplicativo: insira um nome para o aplicativo. Para este exemplo, use demoManagedApplication.
Grupo de Recursos Gerenciados: o nome do grupo de recursos gerenciados que contém os recursos que são implantados para o aplicativo gerenciado. O nome padrão está no formato mrg-{definitionName}-{dateTime} mas você pode alterar o nome.
Forneça valores para a guia Configurações do aplicativo Web e selecione Próximo.
Nomes dos Planos dos Serviços de Aplicativo: Criar um nome de plano. Máximo de 40 caracteres alfanuméricos e hifens. Por exemplo, demoAppServicePlan. Os nomes dos Planos dos Serviços de Aplicativo devem ser exclusivos dentro de um grupo de recursos em sua assinatura.
Prefixo do nome do Serviço de Aplicativo: Criar um prefixo para o nome do plano. Máximo de 47 caracteres alfanuméricos ou hifens. Por exemplo, demoApp. Durante a implantação, o prefixo é concatenado com uma cadeia de caracteres exclusiva para criar um nome global que é exclusivo em todo o Azure.
name: especifique um nome para o aplicativo gerenciado. Para este exemplo, use demoManagedApplication.
resource-group: nome do grupo de recursos que você criou para o aplicativo gerenciado.
location: especifique a região para implantar os recursos. Para este exemplo, use westus.
managed-rg-id: usa o valor da variável $mrgpath. O grupo de recursos gerenciados é criado quando o aplicativo gerenciado é implantado.
managedapp-definition-id: usa o valor da variável $definitionid para a ID de recurso da definição de aplicativo gerenciado.
kind: especifica esse tipo de aplicativo gerenciado. Este exemplo usa ServiceCatalog.
parameters: usa o valor da variável $params na cadeia de caracteres formatada em JSON.
Revise o resumo dos valores que você selecionou e verifique se não há erros exibidos. Selecione Criar para implantar o aplicativo gerenciado.
Exibir os resultados
Depois que o aplicativo gerenciado do catálogo de serviços tiver sido implantado, você terá dois novos grupos de recursos. Um grupo de recursos contém o aplicativo gerenciado. O outro grupo de recursos contém os recursos gerenciados que foram implantados. Neste exemplo, um Serviço de Aplicativo, Plano do Serviço de Aplicativo e uma conta de armazenamento.
Aplicativo gerenciado
Depois que a implantação for concluída, você poderá verificar o status do aplicativo gerenciado.
Execute o comando a seguir para verificar o status do aplicativo gerenciado.
az managedapp list --resource-group applicationGroup
O comando a seguir analisa os dados sobre o aplicativo gerenciado para mostrar apenas o nome e o estado do provisionamento do aplicativo.
az managedapp list --resource-group applicationGroup --query "[].{Name:name, provisioningState:provisioningState}"
Vá para o grupo de recursos denominado applicationGroup e selecione Visão geral. O grupo de recursos contém seu aplicativo gerenciado chamado demoManagedApplication.
Selecione o nome do aplicativo gerenciado para obter mais informações como o link para o grupo de recursos gerenciados.
Recursos gerenciados
Você pode exibir os recursos implantados no grupo de recursos gerenciados.
Para exibir os recursos do grupo de recursos gerenciados, execute o comando a seguir. Você criou a variável $mrgname quando criou os parâmetros.
Get-AzResource -ResourceGroupName $mrgname
Para exibir todas as atribuições de função para o grupo de recursos gerenciados.
Get-AzRoleAssignment -ResourceGroupName $mrgname
A definição de aplicativo gerenciado que você criou nos artigos de início rápido usou um grupo com a atribuição de função Proprietário. Você pode exibir o grupo com o comando a seguir.
Você também pode listar as atribuições de negação para o grupo de recursos gerenciados.
Get-AzDenyAssignment -ResourceGroupName $mrgname
Para exibir os recursos do grupo de recursos gerenciados, execute o comando a seguir. Você criou a variável $mrgname quando criou os parâmetros.
az resource list --resource-group $mrgname
Execute o comando a seguir para listar somente o nome, tipo e estado de provisionamento dos recursos gerenciados.
az resource list --resource-group $mrgname --query "[].{Name:name, Type:type, provisioningState:provisioningState}"
Execute o comando a seguir para listar a atribuição de função do grupo que foi usado na definição do aplicativo gerenciado.
az role assignment list --resource-group $mrgname
O seguinte comando analisa os dados para a atribuição de função do grupo.
az role assignment list --resource-group $mrgname --role Owner --query "[].{ResourceGroup:resourceGroup, GroupName:principalName, RoleDefinition:roleDefinitionId, Role:roleDefinitionName}"
Para examinar as atribuições de negação do grupo de recursos gerenciados, utilize os comandos do Azure PowerShell ou o portal do Azure.
Vá para o grupo de recursos gerenciados com o prefixo mrg-sampleManagedApplication e selecione Visão geral para exibir os recursos que foram implantados. O grupo de recursos contém um Serviço de Aplicativo, Plano do Serviço de Aplicativo e uma conta de armazenamento.
O grupo de recursos gerenciados e cada recurso criado pelo aplicativo gerenciado tem uma atribuição de função. Quando você usou um artigo de início rápido para criar a definição, também criou um grupo do Microsoft Entra. Esse grupo foi usado na definição do aplicativo gerenciado. Quando você implantou o aplicativo gerenciado, uma atribuição de função para esse grupo foi adicionada aos recursos gerenciados.
Para ver a atribuição de função do portal do Azure:
Vá para o seu grupo de recursos mrg-sampleManagedApplication.
Selecione Controle de acesso (IAM)>Atribuição de função.
Você também pode exibir as Atribuições de negação do recurso.
A atribuição de função fornece ao editor do aplicativo acesso para gerenciar a conta de armazenamento. Neste exemplo, o publicador pode ser seu departamento de TI. As Atribuições de negação impedem que os clientes façam alterações na configuração de um recurso gerenciado. Os aplicativos gerenciados são projetados para que os clientes não precisem manter os recursos. As Atribuições de negação excluem o grupo do Microsoft Entra atribuído nas Atribuições de função.
Limpar os recursos
Ao terminar com o aplicativo gerenciado, você poderá excluir os grupos de recursos e isso remove todos os recursos que você criou. Por exemplo, nesse início rápido você criou os grupos de recursos applicationGroup e um grupo de recurso gerenciado com o prefixo mrg-sampleManagedApplication.