Gerir funções de principais de serviço
Para restringir o acesso aos seus recursos do Azure, você pode usar uma entidade de serviço para gerenciar atribuições de função. Cada função fornece permissões diferentes permitidas pelo usuário ao acessar recursos do Azure. Esta etapa do tutorial explica como criar e remover funções de entidade de serviço.
A CLI do Azure tem os seguintes comandos para gerenciar atribuições de função:
Criar ou remover uma atribuição de função
A função de Colaborador tem permissões totais para ler e gravar em uma conta do Azure. A função Leitor é mais restritiva com acesso somente leitura. Use sempre o princípio do menor privilégio. Para obter uma lista completa das funções disponíveis no RBAC do Azure, consulte Funções internas do Azure.
Adicionar uma função não restringe as permissões atribuídas anteriormente. Este exemplo adiciona a função Reader e remove a função Contributor:
az role assignment create --assignee myServicePrincipalID \
--role Reader \
--scope /subscriptions/mySubscriptionID/resourceGroups/myResourceGroupName
az role assignment delete --assignee myServicePrincipalID \
--role Contributor \
--scope /subscriptions/mySubscriptionID/resourceGroups/myResourceGroupName
Console de saída:
{
"condition": null,
"conditionVersion": null,
"createdBy": null,
"createdOn": "yyyy-mm-ddT00:00:00.000000+00:00",
"delegatedManagedIdentityResourceId": null,
"description": null,
"id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Authorization/roleAssignments/00000000-0000-0000-0000-000000000000",
"name": "00000000-0000-0000-0000-000000000000",
"principalId": "00000000-0000-0000-0000-000000000000",
"principalType": "ServicePrincipal",
"roleDefinitionId": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Authorization/roleDefinitions/00000000-0000-0000-0000-000000000000",
"scope": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroupName",
"type": "Microsoft.Authorization/roleAssignments",
"updatedBy": "00000000-0000-0000-0000-000000000000",
"updatedOn": "yyyy-mm-ddT00:00:00.000000+00:00"
}
Como obter um valor para o parâmetro scope
Uma pergunta que você pode ter é "Como eu sei o valor do --scope
parâmetro?" A resposta é localizar e copiar a ID do recurso do Azure que sua entidade de serviço precisa acessar. Essas informações geralmente são encontradas na página Propriedades ou Pontos de Extremidade do portal do Azure de cada recurso. Aqui estão exemplos comuns --scope
, mas confie no seu ID de recurso para um formato e valor reais.
Âmbito | Exemplo |
---|---|
Subscrição | /subscriptions/mySubscriptionID |
Grupo de recursos | /subscriptions/mySubscriptionID/resourceGroups/myResourceGroupName |
Máquina virtual | /subscriptions/mySubscriptionID/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachines/myVMname |
Serviço de arquivo de conta de armazenamento | /subscriptions/mySubscriptionID/resourceGroups/myResourceGroupName/providers/Microsoft.Storage/storageAccounts/myStorageAccountName/fileServices/default |
Fábrica de dados | /subscriptions/mySubscriptionID/resourceGroups/myResourceGroupName/providers/Microsoft.DataFactory/factories/myDataFactoryName |
Para obter mais exemplos de escopo, consulte Entender o escopo do RBAC do Azure.
Verificar alterações
As alterações podem ser verificadas ao listar as funções atribuídas:
# list all role assignments for the current subscription
az role assignment list ---output table
# list role assignments for a user
az role assignment list --assignee myUserName@contoso.com
# list role assignments for a subscription
az role assignment list --subscription mySubscriptionID
Você também pode entrar no portal do Azure e atribuir manualmente a função à entidade de serviço no menu Controle de acesso (IAM). Para obter mais exemplos sobre como listar atribuições de função, consulte Listar atribuições de função do Azure usando a CLI do Azure.
Passos Seguintes
Agora que você aprendeu como gerenciar suas funções de entidade de serviço, prossiga para a próxima etapa para aprender a usar entidades de serviço para criar um recurso.