Megosztás a következőn keresztül:


Azure-szerepkörök hozzárendelése az Azure PowerShell használatával

Az Azure-beli szerepköralapú hozzáférés-vezérlés (Azure RBAC) az Azure-erőforrásokhoz való hozzáférés kezeléséhez használt engedélyezési rendszer. A hozzáférés biztosításához adott hatókör mellett szerepköröket rendelhet a felhasználókhoz, csoportokhoz, szolgáltatásnevekhez vagy felügyelt identitásokhoz. Ez a cikk bemutatja, hogyan rendelhet hozzá szerepköröket az Azure PowerShell használatával.

Feljegyzés

Javasoljuk, hogy az Azure Az PowerShell modult használja az Azure-ral való interakcióhoz. Első lépésként tekintse meg az Azure PowerShell telepítését ismertető témakört. Az Az PowerShell-modulra történő migrálás részleteiről lásd: Az Azure PowerShell migrálása az AzureRM modulból az Az modulba.

Előfeltételek

Szerepkörök hozzárendeléséhez a következőket kell tennie:

Azure-szerepkör hozzárendelésének lépései

A szerepkör hozzárendelése három elemből áll: a biztonsági tagból, a szerepkördefinícióból és a hatókörből.

1. lépés: Annak meghatározása, hogy kinek van szüksége hozzáférésre

Szerepkört rendelhet egy felhasználóhoz, csoporthoz, szolgáltatásnévhez vagy felügyelt identitáshoz. Szerepkör hozzárendeléséhez szükség lehet az objektum egyedi azonosítójának megadására. Az azonosító formátuma: 11111111-1111-1111-1111-111111111111. Az azonosítót az Azure Portalon vagy az Azure PowerShellben szerezheti be.

Felhasználó

Microsoft Entra-felhasználó esetén kérje le az egyszerű felhasználónevet, például patlong@contoso.com a felhasználói objektum azonosítóját. Az objektumazonosító lekéréséhez használhatja a Get-AzADUsert.

Get-AzADUser -StartsWith <userName>
(Get-AzADUser -DisplayName <userName>).id

Csoport

Microsoft Entra-csoport esetén a csoportobjektum-azonosítóra van szükség. Az objektumazonosító lekéréséhez használhatja a Get-AzADGroupot.

Get-AzADGroup -SearchString <groupName>
(Get-AzADGroup -DisplayName <groupName>).id

Egyszerű szolgáltatás

A Microsoft Entra szolgáltatásnévhez (egy alkalmazás által használt identitáshoz) a szolgáltatásnév objektumazonosítója szükséges. Az objektumazonosító lekéréséhez használhatja a Get-AzADServicePrincipal parancsot. Szolgáltatásnév esetén használja az objektumazonosítót, és ne az alkalmazásazonosítót.

Get-AzADServicePrincipal -SearchString <principalName>
(Get-AzADServicePrincipal -DisplayName <principalName>).id

Kezelt identitás

Rendszer által hozzárendelt vagy felhasználó által hozzárendelt felügyelt identitáshoz szükség van az objektumazonosítóra. Az objektumazonosító lekéréséhez használhatja a Get-AzADServicePrincipal parancsot.

Get-AzADServicePrincipal -SearchString <principalName>
(Get-AzADServicePrincipal -DisplayName <principalName>).id

2. lépés: Válassza ki a megfelelő szerepkört

Az engedélyek szerepkörökbe vannak csoportosítva. Számos beépített Azure-szerepkör listájából választhat, vagy használhatja saját egyéni szerepköreit. Ajánlott eljárás a szükséges legkevesebb jogosultsággal rendelkező hozzáférés biztosítása, ezért ne rendeljen hozzá szélesebb szerepkört.

A szerepkörök listázásához és az egyedi szerepkör-azonosító lekéréséhez használhatja a Get-AzRoleDefinition parancsot.

Get-AzRoleDefinition | Format-Table -Property Name, IsCustom, Id

Az alábbiakban egy adott szerepkör részleteit sorolhatja fel.

Get-AzRoleDefinition -Name <roleName>

További információ: Azure-szerepkördefiníciók listázása.

3. lépés: A szükséges hatókör azonosítása

Az Azure négy hatókörszintet biztosít: erőforrás, erőforráscsoport, előfizetés és felügyeleti csoport. Ajánlott eljárás a szükséges legkisebb jogosultsággal rendelkező hozzáférés biztosítása, ezért ne rendeljen hozzá szerepkört szélesebb körben. A hatókörről további információt a hatókör ismertetése című témakörben talál.

Erőforrás hatóköre

Az erőforrás-hatókörhöz az erőforrás erőforrás-azonosítóját kell megadnia. Az erőforrás-azonosítót az erőforrás tulajdonságainak az Azure Portalon való megtekintésével találja meg. Az erőforrás-azonosító formátuma a következő.

/subscriptions/<subscriptionId>/resourcegroups/<resourceGroupName>/providers/<providerName>/<resourceType>/<resourceSubType>/<resourceName>

Erőforráscsoport hatóköre

Az erőforráscsoport hatóköréhez szüksége van az erőforráscsoport nevére. A nevet az Erőforráscsoportok lapon találja az Azure Portalon, vagy használhatja a Get-AzResourceGroupot.

Get-AzResourceGroup

Előfizetés hatóköre

Az előfizetés hatóköréhez szüksége van az előfizetés azonosítóra. Az azonosítót az Azure Portal Előfizetések lapján találja, vagy használhatja a Get-AzSubscription parancsot.

Get-AzSubscription

Felügyeleti csoport hatóköre

A felügyeleti csoport hatóköréhez szüksége van a felügyeleti csoport nevére. A nevet az Azure Portal Felügyeleti csoportok lapján találja, vagy használhatja a Get-AzManagementGroup szolgáltatást.

Get-AzManagementGroup

4. lépés: Szerepkör hozzárendelése

Szerepkör hozzárendeléséhez használja a New-AzRoleAssignment parancsot. A hatókörtől függően a parancs általában az alábbi formátumok egyikével rendelkezik.

Erőforrás hatóköre

New-AzRoleAssignment -ObjectId <objectId> `
-RoleDefinitionName <roleName> `
-Scope /subscriptions/<subscriptionId>/resourcegroups/<resourceGroupName>/providers/<providerName>/<resourceType>/<resourceSubType>/<resourceName>
New-AzRoleAssignment -ObjectId <objectId> `
-RoleDefinitionId <roleId> `
-ResourceName <resourceName> `
-ResourceType <resourceType> `
-ResourceGroupName <resourceGroupName>

Erőforráscsoport hatóköre

New-AzRoleAssignment -SignInName <emailOrUserprincipalname> `
-RoleDefinitionName <roleName> `
-ResourceGroupName <resourceGroupName>
New-AzRoleAssignment -ObjectId <objectId> `
-RoleDefinitionName <roleName> `
-ResourceGroupName <resourceGroupName>

Előfizetés hatóköre

New-AzRoleAssignment -SignInName <emailOrUserprincipalname> `
-RoleDefinitionName <roleName> `
-Scope /subscriptions/<subscriptionId>
New-AzRoleAssignment -ObjectId <objectId> `
-RoleDefinitionName <roleName> `
-Scope /subscriptions/<subscriptionId>

Felügyeleti csoport hatóköre

New-AzRoleAssignment -SignInName <emailOrUserprincipalname> `
-RoleDefinitionName <roleName> `
-Scope /providers/Microsoft.Management/managementGroups/<groupName>
New-AzRoleAssignment -ObjectId <objectId> `
-RoleDefinitionName <roleName> `
-Scope /providers/Microsoft.Management/managementGroups/<groupName>

Példák hozzárendelése szerepkörökhöz

Szerepkör hozzárendelése az összes blobtárolóhoz egy tárfiók erőforrás-hatókörében

A Storage Blob Data Contributor szerepkör hozzárendelése egy 5555555555-5555-5555-5555-5555-555555555-ös objektumazonosítójú szolgáltatásnévhez és alkalmazáshoz Id 66666666-6666-6666-6666-6666666666 egy storage12345 nevű tárfiók erőforrás-hatókörében.

PS C:\> New-AzRoleAssignment -ApplicationId 66666666-6666-6666-6666-666666666666 `
-RoleDefinitionName "Storage Blob Data Contributor" `
-Scope "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Example-Storage-rg/providers/Microsoft.Storage/storageAccounts/storage12345"

RoleAssignmentId   : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Example-Storage-rg/providers/Microsoft.Storage/storageAccounts/storage12345/providers/Microsoft.Authorization/roleAssignments/cccccccc-cccc-cccc-cccc-cccccccccccc
Scope              : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Example-Storage-rg/providers/Microsoft.Storage/storageAccounts/storage12345
DisplayName        : example-identity
SignInName         :
RoleDefinitionName : Storage Blob Data Contributor
RoleDefinitionId   : ba92f5b4-2d11-453d-a403-e96b0029c9fe
ObjectId           : 55555555-5555-5555-5555-555555555555
ObjectType         : ServicePrincipal
CanDelegate        : False

Szerepkör hozzárendelése adott blobtároló erőforrás-hatóköréhez

A Storage Blob-adatszolgáltató szerepkör hozzárendelése egy szolgáltatásnévhez 555555555-5555-5555-5555-55555555 és 55555555 objektumazonosítóval 66666666-6666-6666-6666-666666666666 egy blob-container-01 nevű blobtároló erőforrás-hatókörében.

PS C:\> New-AzRoleAssignment -ApplicationId 66666666-6666-6666-6666-666666666666 `
-RoleDefinitionName "Storage Blob Data Contributor" `
-Scope "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Example-Storage-rg/providers/Microsoft.Storage/storageAccounts/storage12345/blobServices/default/containers/blob-container-01"

RoleAssignmentId   : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Example-Storage-rg/providers/Microsoft.Storage/storageAccounts/storage12345/blobServices/default/containers/blob-container-01/providers/Microsoft.Authorization/roleAssignm
                     ents/dddddddd-dddd-dddd-dddd-dddddddddddd
Scope              : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/Example-Storage-rg/providers/Microsoft.Storage/storageAccounts/storage12345/blobServices/default/containers/blob-container-01
DisplayName        : example-identity
SignInName         :
RoleDefinitionName : Storage Blob Data Contributor
RoleDefinitionId   : ba92f5b4-2d11-453d-a403-e96b0029c9fe
ObjectId           : 55555555-5555-5555-5555-555555555555
ObjectType         : ServicePrincipal
CanDelegate        : False

Szerepkör hozzárendelése csoporthoz egy adott virtuális hálózati erőforrás hatókörében

Hozzárendeli a virtuálisgép-közreműködői szerepkört az aaa-aa-a-a-a-aaa-aaa azonosítójú Pharma Sales Rendszergazda s csoporthoz egy pharma-sales-project-network nevű virtuális hálózat erőforrás-hatókörében.

PS C:\> New-AzRoleAssignment -ObjectId aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa `
-RoleDefinitionName "Virtual Machine Contributor" `
-ResourceName pharma-sales-project-network `
-ResourceType Microsoft.Network/virtualNetworks `
-ResourceGroupName MyVirtualNetworkResourceGroup

RoleAssignmentId   : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MyVirtualNetworkResourceGroup
                     /providers/Microsoft.Network/virtualNetworks/pharma-sales-project-network/providers/Microsoft.Authorizat
                     ion/roleAssignments/bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb
Scope              : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MyVirtualNetworkResourceGroup
                     /providers/Microsoft.Network/virtualNetworks/pharma-sales-project-network
DisplayName        : Pharma Sales Admins
SignInName         :
RoleDefinitionName : Virtual Machine Contributor
RoleDefinitionId   : 9980e02c-c2be-4d73-94e8-173b1dc7cf3c
ObjectId           : aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa
ObjectType         : Group
CanDelegate        : False

Szerepkör hozzárendelése egy felhasználóhoz egy erőforráscsoport hatókörében

Hozzárendeli a virtuálisgép-közreműködői szerepkört a felhasználóhoz patlong@contoso.com a gyógyszer-értékesítési erőforráscsoport hatókörében.

PS C:\> New-AzRoleAssignment -SignInName patlong@contoso.com `
-RoleDefinitionName "Virtual Machine Contributor" `
-ResourceGroupName pharma-sales

RoleAssignmentId   : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pharma-sales/pr
                     oviders/Microsoft.Authorization/roleAssignments/55555555-5555-5555-5555-555555555555
Scope              : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pharma-sales
DisplayName        : Pat Long
SignInName         : patlong@contoso.com
RoleDefinitionName : Virtual Machine Contributor
RoleDefinitionId   : 9980e02c-c2be-4d73-94e8-173b1dc7cf3c
ObjectId           : 44444444-4444-4444-4444-444444444444
ObjectType         : User
CanDelegate        : False

Másik lehetőségként megadhatja a teljes erőforráscsoportot a -Scope következő paraméterrel:

PS C:\> New-AzRoleAssignment -SignInName patlong@contoso.com `
-RoleDefinitionName "Virtual Machine Contributor" `
-Scope "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pharma-sales"

RoleAssignmentId   : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pharma-sales/providers/Microsoft.Authorization/roleAssignments/55555555-5555-5555-5555-555555555555
Scope              : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pharma-sales
DisplayName        : Pat Long
SignInName         : patlong@contoso.com
RoleDefinitionName : Virtual Machine Contributor
RoleDefinitionId   : 9980e02c-c2be-4d73-94e8-173b1dc7cf3c
ObjectId           : 44444444-4444-4444-4444-444444444444
ObjectType         : User
CanDelegate        : False

Szerepkör hozzárendelése egy felhasználóhoz az erőforráscsoport hatókörében található egyedi szerepkör-azonosító használatával

Előfordulhat, hogy egy szerepkör neve megváltozik, például:

  • Saját egyéni szerepkört használ, és úgy dönt, hogy megváltoztatja a nevet.
  • Olyan előzetes szerepkört használ, amelynek neve (előzetes verzió) szerepel. A szerepkör felszabadításakor a szerepkör átnevezve lesz.

Még ha átneveznek is egy szerepkört, a szerepkör azonosítója nem változik. Ha szkriptekkel vagy automatizálással hozza létre a szerepkör-hozzárendeléseket, ajánlott az egyedi szerepkör-azonosítót használni a szerepkör neve helyett. Ezért ha egy szerepkört átneveznek, a szkriptek nagyobb valószínűséggel fognak működni.

Az alábbi példa a virtuálisgép-közreműködői szerepkört rendeli hozzá a patlong@contoso.com felhasználóhoz a gyógyszer-értékesítési erőforráscsoport hatókörében.

PS C:\> New-AzRoleAssignment -ObjectId 44444444-4444-4444-4444-444444444444 `
-RoleDefinitionId 9980e02c-c2be-4d73-94e8-173b1dc7cf3c `
-Scope "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pharma-sales"

RoleAssignmentId   : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pharma-sales/providers/Microsoft.Authorization/roleAssignments/55555555-5555-5555-5555-555555555555
Scope              : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pharma-sales
DisplayName        : Pat Long
SignInName         : patlong@contoso.com
RoleDefinitionName : Virtual Machine Contributor
RoleDefinitionId   : 9980e02c-c2be-4d73-94e8-173b1dc7cf3c
ObjectId           : 44444444-4444-4444-4444-444444444444
ObjectType         : User
CanDelegate        : False

Szerepkör hozzárendelése egy alkalmazáshoz egy erőforráscsoport hatókörében

A virtuálisgép-közreműködői szerepkör hozzárendelése egy 7777777777-7777-7777-7777-7777777777 azonosítójú szolgáltatásnév-objektummal rendelkező alkalmazáshoz a gyógyszer-értékesítési erőforráscsoport hatókörében.

PS C:\> New-AzRoleAssignment -ObjectId 77777777-7777-7777-7777-777777777777 `
-RoleDefinitionName "Virtual Machine Contributor" `
-ResourceGroupName pharma-sales

RoleAssignmentId   : /subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Authorization/roleAssignments/66666666-6666-6666-6666-666666666666
Scope              : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pharma-sales
DisplayName        : MyApp1
SignInName         :
RoleDefinitionName : Virtual Machine Contributor
RoleDefinitionId   : 9980e02c-c2be-4d73-94e8-173b1dc7cf3c
ObjectId           : 77777777-7777-7777-7777-777777777777
ObjectType         : ServicePrincipal
CanDelegate        : False

Szerepkör hozzárendelése egy felhasználóhoz egy előfizetés hatókörében

Hozzárendeli az Olvasó szerepkört a annm@example.com felhasználóhoz egy előfizetési hatókörben.

PS C:\> New-AzRoleAssignment -SignInName annm@example.com `
-RoleDefinitionName "Reader" `
-Scope "/subscriptions/00000000-0000-0000-0000-000000000000"

RoleAssignmentId   : /subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Authorization/roleAssignments/66666666-6666-6666-6666-666666666666
Scope              : /subscriptions/00000000-0000-0000-0000-000000000000
DisplayName        : Ann M
SignInName         : annm@example.com
RoleDefinitionName : Reader
RoleDefinitionId   : acdd72a7-3385-48ef-bd42-f606fba81ae7
ObjectId           : 77777777-7777-7777-7777-777777777777
ObjectType         : ServicePrincipal
CanDelegate        : False

Szerepkör hozzárendelése egy felhasználóhoz egy felügyeleti csoport hatókörében

Hozzárendeli a Számlázási olvasó szerepkört a alain@example.com felhasználóhoz egy felügyeleti csoport hatókörében.

PS C:\> New-AzRoleAssignment -SignInName alain@example.com `
-RoleDefinitionName "Billing Reader" `
-Scope "/providers/Microsoft.Management/managementGroups/marketing-group"

RoleAssignmentId   : /providers/Microsoft.Management/managementGroups/marketing-group/providers/Microsoft.Authorization/roleAssignments/22222222-2222-2222-2222-222222222222
Scope              : /providers/Microsoft.Management/managementGroups/marketing-group
DisplayName        : Alain Charon
SignInName         : alain@example.com
RoleDefinitionName : Billing Reader
RoleDefinitionId   : fa23ad8b-c56e-40d8-ac0c-ce449e1d2c64
ObjectId           : 44444444-4444-4444-4444-444444444444
ObjectType         : User
CanDelegate        : False

Következő lépések