Guia de início rápido: atribuir uma função do Azure usando o Bicep

O controlo de acesso baseado em funções do Azure (RBAC do Azure) é a forma de gerir o acesso a recursos no Azure. Neste início rápido, você cria um grupo de recursos e concede a um usuário acesso para criar e gerenciar máquinas virtuais no grupo de recursos. Este guia de início rápido usa o Bicep para conceder o acesso.

O Bicep é uma linguagem específica do domínio que utiliza sintaxe declarativa para implementar recursos do Azure. Fornece sintaxe concisa, segurança de tipos fiá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ê deve ter:

  • Se não tiver uma subscrição do Azure, crie uma conta gratuita antes de começar.
  • Microsoft.Authorization/roleAssignments/write e Microsoft.Authorization/roleAssignments/delete permissões, como Administrador de Controle de Acesso Baseado em Função.
  • Para atribuir uma função, você deve 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 em seu diretório, a definição de função é Colaborador de Máquina Virtual e o escopo é um grupo de recursos que você especifica.

Revise o arquivo Bicep

O arquivo Bicep usado neste início rápido é de 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 que 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 é:

Implantar o arquivo Bicep

  1. Salve o arquivo Bicep como main.bicep em seu computador local.

  2. Implante o arquivo Bicep usando 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>
    

Nota

Substitua <principal-id> pelo ID principal atribuído à função.

Quando a implantação terminar, você verá uma mensagem indicando que a implantação foi bem-sucedida.

Rever os recursos implementados

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

Clean up resources (Limpar recursos)

Quando não for mais necessário, use o portal do Azure, a CLI do Azure ou o Azure PowerShell para remover a atribuição de função. Para obter mais informações, veja Remover atribuições de funções 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

Próximos passos