Inicio rápido: implementación de una aplicación administrada del catálogo de servicios
Artículo
En este inicio rápido, se usará la definición de aplicación administrada que creó usando uno de los artículos de inicio rápido. La implementación crea dos grupos de recursos. Uno contiene la aplicación administrada y el otro es un grupo de recursos administrado para el recurso implementado. La definición de aplicación administrada implementa un plan de App Service, App Service y cuenta de almacenamiento.
Creación de una aplicación administrada del catálogo de servicios
En los ejemplos se usan los nombres para los grupos de recursos creados en el inicio rápido para publicar una definición de aplicación. Si usó el inicio rápido para publicar una definición con Bring Your Own Storage, use esos nombres de grupo de recursos.
Publicar definición de aplicación: packageStorageGroup y appDefinitionGroup.
Publicar definición con Trae tu almacenamiento: packageStorageGroup, byosDefinitionStorageGroup y byosAppDefinitionGroup.
Obtener la definición de la aplicación administrada
Para obtener la definición de la aplicación administrada con Azure PowerShell, ejecute los siguientes comandos.
En Visual Studio Code, abra un nuevo terminal de PowerShell e inicie sesión en su suscripción de Azure.
Connect-AzAccount
Este comando abrirá el explorador predeterminado y le solicitará iniciar sesión en Azure. Para obtener más información, vaya a Inicio de sesión con Azure PowerShell.
En Azure PowerShell, obtenga la definición de la aplicación administrada. En este ejemplo, use el nombre del grupo de recursos appDefinitionGroup que se creó cuando implementó la definición de aplicación administrada.
Use el valor de variable $definitionid cuando implemente la aplicación administrada.
Para obtener la definición de la aplicación administrada con la CLI de Azure, ejecute los siguientes comandos.
En Visual Studio Code, abra una nueva sesión de terminal de Bash e inicie sesión en su suscripción de Azure. Si tiene Git instalado, seleccione Git Bash.
az login
Este comando abrirá el explorador predeterminado y le solicitará iniciar sesión en Azure. Para obtener más información, vaya a Inicio de sesión con la CLI de Azure.
En la CLI de Azure, obtenga la definición de la aplicación administrada. En este ejemplo, use el nombre del grupo de recursos appDefinitionGroup que se creó cuando implementó la definición de aplicación administrada.
az managedapp definition list --resource-group appDefinitionGroup
El comando enumera todas las definiciones disponibles del grupo de recursos especificado, como sampleManagedApplication.
Cree una variable para el identificador de recurso de la definición de aplicación administrada.
definitionid=$(az managedapp definition show --resource-group appDefinitionGroup --name sampleManagedApplication --query id --output tsv)
Use el valor de variable $definitionid cuando implemente la aplicación administrada.
Para obtener la definición de la aplicación administrada de la Azure Portal, siga los pasos siguientes.
También debe crear un nombre para el grupo de recursos de la aplicación administrada. El grupo de recursos se crea al implementar la aplicación administrada.
Ejecute los comandos siguientes para crear el nombre del grupo de recursos administrado.
Las variables $mrgprefix y $mrgtimestamp se concatenan y almacenan en la variable $mrgname. El valor de la variable tiene el formato mrg-sampleManagedApplication-20230512103059. Use el valor de variable $mrgname cuando implemente la aplicación administrada.
Debe proporcionar varios parámetros al comando de implementación de la aplicación administrada. Puede usar una cadena con formato JSON o crear un archivo JSON. En este ejemplo, se usa una cadena con formato JSON. El carácter de escape de PowerShell para las comillas es el carácter de tilde aguda (`). La tilde aguda también se usa para la continuación de línea en los comandos que puedan usar varias líneas.
La sintaxis de la cadena con formato JSON es la siguiente:
Para mejorar la legibilidad, la cadena JSON completada usa la tilde aguda para la continuación de línea. Los valores se almacenan en el valor de variable $params, que se usa en el comando de implementación. Los parámetros de la cadena JSON son necesarios para implementar los recursos administrados.
appServicePlanName: Crear un nombre para el plan. Máximo de 40 caracteres alfanuméricos y guiones. Por ejemplo, demoAppServicePlan. Los nombres de plan de App Service deben ser únicos dentro de un grupo de recursos de la suscripción.
appServiceNamePrefix: crea un prefijo para el nombre del plan. Máximo de 47 caracteres alfanuméricos o guiones. Por ejemplo, demoApp. Durante la implementación, el prefijo se concatena con una cadena única para crear un nombre único globalmente en Azure.
storageAccountNamePrefix: use solo letras minúsculas y números y un máximo de 11 caracteres. Por ejemplo, demostg1234. Durante la implementación, el prefijo se concatena con una cadena única para crear un nombre único globalmente en Azure. Aunque estás creando un prefijo, el control comprueba los nombres existentes en Azure y puede publicar un mensaje de validación de que el nombre ya existe. Si es así, elige un prefijo diferente.
storageAccountType: Las demás opciones son Premium_LRS, Standard_LRS y Standard_GRS.
Cree un grupo de recursos para la aplicación administrada que se usa durante la implementación.
az group create --name applicationGroup --location westus3
También debe crear un nombre y una ruta para el grupo de recursos de la aplicación administrada. El grupo de recursos se crea al implementar la aplicación administrada.
Ejecute los comandos siguientes para crear la ruta del grupo de recursos administrado.
Las variables $mrgprefix y $mrgtimestamp se concatenan y almacenan en la variable $mrgname. El valor de la variable tiene el formato mrg-sampleManagedApplication-20230512103059. Las variables mrgname y subid se concatenan para crear el valor de la variable mrgpath que crea el grupo de recursos administrado durante la implementación.
Debe proporcionar varios parámetros al comando de implementación de la aplicación administrada. Puede usar una cadena con formato JSON o crear un archivo JSON. En este ejemplo, se usa una cadena con formato JSON. En Bash, el carácter de escape para las comillas es el carácter de barra invertida (\). La barra diagonal inversa también se usa para la continuación de línea en los comandos que puedan usar varias líneas.
La sintaxis de la cadena con formato JSON es la siguiente:
Para facilitar la lectura, la cadena JSON completa usa la barra invertida para la continuación de la línea. Los valores se almacenan en el valor de variable params, que se usa en el comando de implementación. Los parámetros de la cadena JSON son necesarios para implementar los recursos administrados.
appServicePlanName: Crear un nombre para el plan. Máximo de 40 caracteres alfanuméricos y guiones. Por ejemplo, demoAppServicePlan. Los nombres de plan de App Service deben ser únicos dentro de un grupo de recursos de la suscripción.
appServiceNamePrefix: crea un prefijo para el nombre del plan. Máximo de 47 caracteres alfanuméricos o guiones. Por ejemplo, demoApp. Durante la implementación, el prefijo se concatena con una cadena única para crear un nombre único globalmente en Azure.
storageAccountNamePrefix: use solo letras minúsculas y números y un máximo de 11 caracteres. Por ejemplo, demostg1234. Durante la implementación, el prefijo se concatena con una cadena única para crear un nombre único globalmente en Azure. Aunque estás creando un prefijo, el control comprueba los nombres existentes en Azure y puede publicar un mensaje de validación de que el nombre ya existe. Si es así, elige un prefijo diferente.
storageAccountType: Las demás opciones son Premium_LRS, Standard_LRS y Standard_GRS.
Proporciona valores para la pestaña Conceptos básicos y selecciona Siguiente: configuración de la aplicación web.
Suscripción: seleccione la suscripción en la que desea implementar la aplicación administrada.
Grupo de recursos: seleccione el grupo de recursos. En este ejemplo, cree un grupo de recursos denominado applicationGroup.
Región: seleccione la ubicación en la que desea implementar el recurso.
En Nombre de aplicación, escriba el nombre de la aplicación administrada. En este ejemplo, use demoManagedApplication.
Grupo de recursos administrado: nombre del grupo de recursos administrado que contiene los recursos que se implementan para la aplicación administrada. El nombre predeterminado tiene el formato mrg-{definitionName}-{dateTime}, pero puedes cambiar el nombre.
Proporcione valores para la pestaña Configuración de la aplicación web y seleccione Siguiente: configuración de almacenamiento.
Nombre del plan de App Service: crear un nombre de plan. Máximo de 40 caracteres alfanuméricos y guiones. Por ejemplo, demoAppServicePlan. Los nombres de plan de App Service deben ser únicos dentro de un grupo de recursos de la suscripción.
Prefijo de nombre de App Service: crea un prefijo para el nombre del plan. Máximo de 47 caracteres alfanuméricos o guiones. Por ejemplo, demoApp. Durante la implementación, el prefijo se concatena con una cadena única para crear un nombre único globalmente en Azure.
Escriba un prefijo para el nombre de la cuenta de almacenamiento y seleccione el tipo de cuenta de almacenamiento. Seleccione Siguiente: Review + create (Revisar y crear).
Prefijo de nombre de cuenta de almacenamiento: use solo letras minúsculas y números y un máximo de 11 caracteres. Por ejemplo, demostg1234. Durante la implementación, el prefijo se concatena con una cadena única para crear un nombre único globalmente en Azure. Aunque estás creando un prefijo, el control comprueba los nombres existentes en Azure y puede publicar un mensaje de validación de que el nombre ya existe. Si es así, elige un prefijo diferente.
Tipo de cuenta de almacenamiento: seleccione Cambiar tipo para elegir un tipo de cuenta de almacenamiento. El valor predeterminado es Standard_LRS. Las demás opciones son Premium_LRS, Standard_LRS y Standard_GRS.
Los parámetros usados en el comando de implementación:
Name: Especificar un nombre para la aplicación administrada. En este ejemplo, use demoManagedApplication.
ResourceGroupName: Nombre del grupo de recursos que creó para la aplicación administrada.
Location: Especificar la región para implementar los recursos. En este ejemplo, use westus3.
ManagedResourceGroupName: usa el valor de la variable de $mrgname. El grupo de recursos administrado se crea cuando se implementa la aplicación administrada.
ManagedApplicationDefinitionId: Usa el valor de variable $definitionid para el identificador de recurso de la definición de aplicación administrada.
Kind: Especifica el tipo de aplicación administrada. En este ejemplo se usa ServiceCatalog.
Parameter: Usa el valor de variable $params en la cadena con formato JSON.
Ejecute el siguiente comando para implementar la aplicación administrada.
Los parámetros usados en el comando de implementación:
name: Especificar un nombre para la aplicación administrada. En este ejemplo, use demoManagedApplication.
resource-group: Nombre del grupo de recursos que creó para la aplicación administrada.
location: Especificar la región para implementar los recursos. En este ejemplo, use westus3.
managed-rg-id: usa el valor de la variable de $mrgpath. El grupo de recursos administrado se crea cuando se implementa la aplicación administrada.
managedapp-definition-id: Usa el valor de variable $definitionid para el identificador de recurso de la definición de aplicación administrada.
kind: Especifica el tipo de aplicación administrada. En este ejemplo se usa ServiceCatalog.
parameters: Usa el valor de variable $params en la cadena con formato JSON.
Revise el resumen de los valores seleccionados y confirme que aparece Validación superada. Selecciona Crear para implementar la aplicación administrada.
Vista de resultados
Una vez implementada la aplicación administrada del catálogo de servicios, tendrá dos nuevos grupos de recursos. Uno contiene la aplicación administrada El otro grupo de recursos contiene los recursos administrados que se han implementado. En este ejemplo, un App Service, un plan de App Service y una cuenta de almacenamiento.
Aplicación administrada
Una vez finalizada la implementación, puede comprobar el estado de la aplicación administrada.
Ejecute el comando siguiente para comprobar el estado de la aplicación administrada.
az managedapp list --resource-group applicationGroup
El siguiente comando analiza los datos sobre la aplicación administrada para mostrar solo el nombre y el estado de aprovisionamiento de la aplicación.
az managedapp list --resource-group applicationGroup --query "[].{Name:name, provisioningState:provisioningState}"
Ve al grupo de recursos denominado applicationGroup y selecciona Información general. El grupo de recursos contiene la aplicación administrada denominada demoManagedApplication.
Selecciona el nombre de la aplicación administrada para obtener más información, como el vínculo al grupo de recursos administrado.
Recursos administrados
Puede ver los recursos implementados en el grupo de recursos administrados.
Para mostrar los recursos del grupo de recursos administrados, ejecute el siguiente comando. Ha creado la variable $mrgname al crear los parámetros.
Get-AzResource -ResourceGroupName $mrgname
Para mostrar todas las asignaciones de roles para el grupo de recursos administrados.
Get-AzRoleAssignment -ResourceGroupName $mrgname
La definición de aplicación administrada que creó en los artículos de inicio rápido usó un grupo con la asignación de roles Propietario. Cree el grupo con el comando siguiente.
También puede enumerar las asignaciones de denegación para el grupo de recursos administrado.
Get-AzDenyAssignment -ResourceGroupName $mrgname
Para mostrar los recursos del grupo de recursos administrados, ejecute el siguiente comando. Ha creado la variable $mrgname al crear los parámetros.
az resource list --resource-group $mrgname
Ejecute el siguiente comando para enumerar solo el nombre, el tipo y el estado de aprovisionamiento de los recursos administrados.
az resource list --resource-group $mrgname --query "[].{Name:name, Type:type, provisioningState:provisioningState}"
Ejecute el siguiente comando para enumerar la asignación de roles para el grupo que se usó en la definición de la aplicación administrada.
az role assignment list --resource-group $mrgname
El siguiente comando analiza los datos de la asignación de roles del grupo.
az role assignment list --resource-group $mrgname --role Owner --query "[].{ResourceGroup:resourceGroup, GroupName:principalName, RoleDefinition:roleDefinitionId, Role:roleDefinitionName}"
Para revisar las asignaciones de denegación del grupo de recursos administrados, use los comandos Azure Portal o Azure PowerShell.
Ve al grupo de recursos administrados con el prefijo de nombre mrg-sampleManagedApplication y selecciona Información general para mostrar los recursos que se implementaron. El grupo de recursos contiene un App Service, un plan de App Service y una cuenta de almacenamiento.
El grupo de recursos administrado y cada recurso creado por la aplicación administrada tiene una asignación de roles. Cuando usaste un artículo de inicio rápido para crear la definición, creaste un grupo de Microsoft Entra. Ese grupo se usó en la definición de aplicación administrada. Cuando implementaste la aplicación administrada, se agregó una asignación de funciones para ese grupo a los recursos administrados.
Para ver la asignación de roles desde Azure Portal:
Ir al grupo de recursos mrg-sampleManagedApplication.
Seleccione Control de acceso (IAM)>Asignaciones de roles.
También puede ver las asignaciones de denegación del recurso.
La asignación de roles concede acceso al editor de la aplicación para administrar la cuenta de almacenamiento. En este ejemplo, el editor podría ser su departamento de TI. Las asignaciones de denegación impiden que los clientes realicen cambios en la configuración de un recurso administrado. Las aplicaciones administradas están diseñadas para que los clientes no necesiten mantener los recursos. La asignación de denegación excluye el grupo de Microsoft Entra que se asignó en Asignaciones de roles.
Limpieza de recursos
Cuando haya terminado con la aplicación administrada, podrá eliminar los grupos de recursos y eso eliminará todos los recursos creados. Por ejemplo, en esta guía de inicio rápido creó los grupos de recursos applicationGroup y un grupo de recursos administrado con el prefijo mrg-sampleManagedApplication.