Udostępnij za pośrednictwem


Szybki start: przypisywanie roli platformy Azure przy użyciu Bicep

Kontrola dostępu oparta na rolach Azure (Azure RBAC, Role Based Access Control) to sposób zarządzania dostępem do zasobów na platformie Azure. W tym przewodniku Szybki start utworzysz grupę zasobów i przyznasz użytkownikowi dostęp do tworzenia maszyn wirtualnych w grupie zasobów i zarządzania nimi. W tym przewodniku Szybki start jest używany element Bicep w celu udzielenia dostępu.

Bicep to język specyficzny dla domeny (DSL), który używa składni deklaratywnej do wdrażania zasobów platformy Azure. Zapewnia zwięzłą składnię, niezawodne bezpieczeństwo typów i obsługę ponownego użycia kodu. Bicep oferuje najlepsze środowisko tworzenia rozwiązań infrastruktury jako kodu na platformie Azure.

Wymagania wstępne

Aby przypisać role platformy Azure i usunąć przypisania ról, musisz mieć następujące elementy:

  • Jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto.
  • Microsoft.Authorization/roleAssignments/write i Microsoft.Authorization/roleAssignments/delete uprawnienia, takie jak administrator kontroli dostępu opartej na rolach.
  • Aby przypisać rolę, należy określić trzy elementy: podmiot zabezpieczeń, definicję roli i zakres. W tym przewodniku Szybki start podmiot zabezpieczeń jest użytkownikiem lub innym użytkownikiem w katalogu, definicją roli jest Współautor maszyny wirtualnej, a zakresem jest określona grupa zasobów.

Przejrzyj plik Bicep

Plik Bicep używany w tym przewodniku Szybki start pochodzi z szablonów szybkiego startu platformy Azure. Plik Bicep ma dwa parametry i sekcję zasobów. W sekcji zasobów zwróć uwagę, że ma trzy elementy przypisania roli: podmiot zabezpieczeń, definicję roli i zakres.

@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

Zasób zdefiniowany w pliku Bicep to:

Wdrażanie pliku Bicep

  1. Zapisz plik Bicep jako main.bicep na komputerze lokalnym.

  2. Wdróż plik Bicep przy użyciu interfejsu wiersza polecenia platformy Azure lub programu 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>
    

Uwaga

Zastąp wartość <principal-id> identyfikatorem podmiotu zabezpieczeń przypisanym do roli.

Po zakończeniu wdrażania powinien zostać wyświetlony komunikat informujący o pomyślnym wdrożeniu.

Przeglądanie wdrożonych zasobów

Użyj witryny Azure Portal, interfejsu wiersza polecenia platformy Azure lub programu Azure PowerShell, aby wyświetlić listę wdrożonych zasobów w grupie zasobów.

az role assignment list --resource-group exampleRG

Czyszczenie zasobów

Gdy przypisanie roli nie jest już potrzebne, użyj witryny Azure Portal, interfejsu wiersza polecenia platformy Azure lub programu Azure PowerShell. Aby uzyskać więcej informacji, zobacz Usuwanie przypisań ról platformy Azure.

Użyj witryny Azure Portal, interfejsu wiersza polecenia platformy Azure lub programu Azure PowerShell, aby usunąć grupę zasobów.

az group delete --name exampleRG

Następne kroki