SE APLICA A: Azure Database for PostgreSQL con servidor flexible
En este artículo se proporcionan instrucciones paso a paso para habilitar o deshabilitar una identidad administrada asignada por el sistema de un servidor flexible de Azure Database for PostgreSQL.
Busque el servidor en el portal si no lo tiene abierto. Una forma de hacerlo es escribiendo el nombre del servidor en la barra de búsqueda. Cuando aparezca el recurso con el nombre coincidente, selecciónelo.
En el menú de recursos, en Seguridad, seleccione Identidad.
En la sección Identidad administrada asignada por el sistema, seleccione En.
Seleccione Guardar.
Una vez completado el proceso, una notificación le informa de que la identidad administrada asignada por el sistema está habilitada.
El comando az postgres flexible-server update aún no proporciona compatibilidad integrada para habilitar y deshabilitar la identidad administrada asignada por el sistema. Como solución alternativa, puede usar el comando az rest para invocar directamente la API de REST Servidores - Actualización.
# Enable system assigned managed identity
subscriptionId=<subscription-id>
resourceGroup=<resource-group>
server=<server>
result=$(az postgres flexible-server show --resource-group $resourceGroup --name $server --query "identity.type" --output tsv)
if [ -z "$result" ]; then
az rest --method patch --url https://management.azure.com/subscriptions/$subscriptionId/resourceGroups/$resourceGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/$server?api-version=2024-08-01 --body '{"identity":{"type":"SystemAssigned"}}'
elif [ "$result" == "UserAssigned" ]; then
az rest --method patch --url https://management.azure.com/subscriptions/$subscriptionId/resourceGroups/$resourceGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/$server?api-version=2024-08-01 --body '{"identity":{"type":"SystemAssigned,UserAssigned"}}'
else
echo "System Assigned Managed identity is already enabled."
fi
Pasos para deshabilitar para servidores existentes
Busque el servidor en el portal si no lo tiene abierto. Una forma de hacerlo es escribiendo el nombre del servidor en la barra de búsqueda. Cuando aparezca el recurso con el nombre coincidente, selecciónelo.
En el menú de recursos, en Seguridad, seleccione Identidad.
En la sección Identidad administrada asignada por el sistema, seleccione Desactivado.
Seleccione Guardar.
Una vez completado el proceso, una notificación le informa de que la identidad administrada asignada por el sistema está deshabilitada.
El comando az postgres flexible-server update aún no proporciona compatibilidad integrada para habilitar y deshabilitar la identidad administrada asignada por el sistema. Como solución alternativa, puede usar el comando az rest para invocar directamente la API de REST Servidores - Actualización.
# Disable system assigned managed identity
subscriptionId=<subscription-id>
resourceGroup=<resource-group>
server=<server>
result=$(az postgres flexible-server show --resource-group $resourceGroup --name $server --query "identity.type" --output tsv)
if [ "$result" == "SystemAssigned" ]; then
az rest --method patch --url https://management.azure.com/subscriptions/$subscriptionId/resourceGroups/$resourceGroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/$server?api-version=2024-08-01 --body '{"identity":{"type":"None"}}'
elif [ "$result" == "SystemAssigned,UserAssigned" ]; then
echo "System Assigned Managed identity cannot be disabled as the instance has User Assigned Managed identities assigned."
else
echo "System Assigned Managed identity is already disabled."
fi
Busque el servidor en el portal si no lo tiene abierto. Una forma de hacerlo es escribiendo el nombre del servidor en la barra de búsqueda. Cuando aparezca el recurso con el nombre coincidente, selecciónelo.
En el menú de recursos, seleccione Información general
Seleccione Vista JSON.
En el panel JSON de recursos que se abre, busque la propiedad identidad y, dentro de ella, podrá encontrar los valores de principalId y tenantId de la identidad administrada asignada por el sistema.
# Show the system assigned managed identity
resourceGroup=<resource-group>
server=<server>
az postgres flexible-server identity list --resource-group $resourceGroup --server-name $server --query "{principalId:principalId, tenantId:tenantId}" --output table
Busque el servicio Aplicaciones de empresa en el portal, si no lo tiene abierto. Una forma de hacerlo es escribiendo su nombre en la barra de búsqueda. Cuando aparezca el servicio con el nombre coincidente, selecciónelo.
Elija Tipo de aplicación == Identidad administrada.
Indique el nombre de su instancia de servidor flexible de Azure Database for PostgreSQL en el cuadro de texto Buscar por nombre de aplicación o id. de objeto.
# Verify the system assigned managed identity
server=<server>
az ad sp list --display-name $server