Guia de início rápido: atribuir uma função do Azure usando o Bicep
O Azure RBAC (controle de acesso baseado em função do Azure) é a maneira usada para gerenciar o acesso aos recursos no Azure. Neste início rápido, você cria um grupo de recursos e permite acesso a um usuário para criar e gerenciar máquinas virtuais no grupo de recursos. Este início rápido usa o Bicep para conceder o acesso.
O Bicep é um DSL (linguagem específica de domínio) que usa sintaxe declarativa para implantar recursos do Azure. Ele fornece sintaxe concisa, segurança de tipos confiável e suporte para reutilização de código. O Bicep oferece a melhor experiência de criação para suas soluções de infraestrutura como código no Azure.
Pré-requisitos
Para atribuir funções do Azure e remover atribuições de função, você precisa ter:
- Se você não tiver uma assinatura do Azure, crie uma conta gratuita antes de começar.
- Permissões
Microsoft.Authorization/roleAssignments/write
eMicrosoft.Authorization/roleAssignments/delete
, como Administrador de controle de acesso baseado em função. - Para atribuir uma função você precisa especificar três elementos: entidade de segurança, definição de função e escopo. Para este início rápido, a entidade de segurança é você ou outro usuário no seu diretório, a definição de função é Colaborador de Máquina Virtual e o escopo é um grupo de recursos especificado por você.
Examinar o arquivo Bicep
O arquivo Bicep usado neste guia de início rápido vem dos Modelos de início rápido do Azure. O arquivo Bicep tem dois parâmetros e uma seção de recursos. Na seção de recursos, observe se ele tem os três elementos de uma atribuição de função: entidade de segurança, definição de função e escopo.
@description('Specifies the role definition ID used in the role assignment.')
param roleDefinitionID string
@description('Specifies the principal ID assigned to the role.')
param principalId string
var roleAssignmentName= guid(principalId, roleDefinitionID, resourceGroup().id)
resource roleAssignment 'Microsoft.Authorization/roleAssignments@2022-04-01' = {
name: roleAssignmentName
properties: {
roleDefinitionId: resourceId('Microsoft.Authorization/roleDefinitions', roleDefinitionID)
principalId: principalId
}
}
output name string = roleAssignment.name
output resourceGroupName string = resourceGroup().name
output resourceId string = roleAssignment.id
O recurso definido no arquivo Bicep é:
Implante o arquivo Bicep
Salve o arquivo Bicep como main.bicep em seu computador local.
Para implantar o arquivo Bicep, use a CLI do Azure ou o Azure PowerShell.
az group create --name exampleRG --location eastus az deployment group create --resource-group exampleRG --template-file main.bicep --parameters roleDefinitionID=9980e02c-c2be-4d73-94e8-173b1dc7cf3c principalId=<principal-id>
Observação
Substitua <principal-id> pela ID da entidade de segurança atribuída à função.
Quando a implantação for concluída, você deverá ver uma mensagem indicando que ela foi bem-sucedida.
Examinar os recursos implantados
Use o portal do Azure, a CLI do Azure ou o Azure PowerShell para listar os recursos implantados no grupo de recursos.
az role assignment list --resource-group exampleRG
Limpar os recursos
Quando a atribuição de função não for mais necessária, use o portal do Azure, a CLI do Azure ou o Azure PowerShell para removê-la. Para saber mais, confira Remover atribuições de função do Azure.
Use o portal do Azure, a CLI do Azure ou o Azure PowerShell para excluir o grupo de recursos.
az group delete --name exampleRG