Azure PowerShell kullanarak Azure rol atamalarını listeleme
Azure rol tabanlı erişim denetimi (Azure RBAC), Azure kaynaklarına erişimi yönetmek için kullandığınız yetkilendirme sistemidir. Kullanıcıların, grupların, hizmet sorumlularının veya yönetilen kimliklerin hangi kaynaklara erişimi olduğunu belirlemek için rol atamalarını listelersiniz. Bu makalede, Azure PowerShell kullanarak rol atamalarının nasıl listelenmesi açıklanır.
Dekont
Azure ile etkileşim kurmak için Azure Az PowerShell modülünü kullanmanızı öneririz. Başlamak için bkz. Azure PowerShell'i yükleme. Az PowerShell modülüne nasıl geçeceğinizi öğrenmek için bkz. Azure PowerShell’i AzureRM’den Az’ye geçirme.
Dekont
Kuruluşunuzun Azure Lighthouse kullanan bir hizmet sağlayıcısına dış kaynaklı yönetim işlevleri varsa, bu hizmet sağlayıcısı tarafından yetkilendirilmiş rol atamaları burada gösterilmez. Benzer şekilde, hizmet sağlayıcısı kiracısında bulunan kullanıcılar, atanmış oldukları rolden bağımsız olarak bir müşterinin kiracısında kullanıcılar için rol atamalarını görmez.
Önkoşullar
Geçerli abonelik için rol atamalarını listeleme
Geçerli abonelikteki tüm rol atamalarının listesini almanın en kolay yolu (kök ve yönetim gruplarından devralınan rol atamaları dahil) Get-AzRoleAssignment'ı parametre olmadan kullanmaktır.
Get-AzRoleAssignment
PS C:\> Get-AzRoleAssignment
RoleAssignmentId : /subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Authorization/roleAssignments/11111111-1111-1111-1111-111111111111
Scope : /subscriptions/00000000-0000-0000-0000-000000000000
DisplayName : Alain
SignInName : alain@example.com
RoleDefinitionName : Storage Blob Data Reader
RoleDefinitionId : 2a2b9908-6ea1-4ae2-8e65-a410df84e7d1
ObjectId : 44444444-4444-4444-4444-444444444444
ObjectType : User
CanDelegate : False
RoleAssignmentId : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pharma-sales/providers/Microsoft.Authorization/roleAssignments/33333333-3333-3333-3333-333333333333
Scope : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pharma-sales
DisplayName : Marketing
SignInName :
RoleDefinitionName : Contributor
RoleDefinitionId : b24988ac-6180-42a0-ab88-20f7382dd24c
ObjectId : 22222222-2222-2222-2222-222222222222
ObjectType : Group
CanDelegate : False
...
Bir aboneliğin rol atamalarını listeleme
Abonelik kapsamındaki tüm rol atamalarını listelemek için Get-AzRoleAssignment komutunu kullanın. Abonelik kimliğini almak için azure portalındaki Abonelikler dikey penceresinde bulabilir veya Get-AzSubscription kullanabilirsiniz.
Get-AzRoleAssignment -Scope /subscriptions/<subscription_id>
PS C:\> Get-AzRoleAssignment -Scope /subscriptions/00000000-0000-0000-0000-000000000000
Bir kullanıcının rol atamalarını listeleme
Belirtilen kullanıcıya atanan tüm rolleri listelemek için Get-AzRoleAssignment komutunu kullanın.
Get-AzRoleAssignment -SignInName <email_or_userprincipalname>
PS C:\> Get-AzRoleAssignment -SignInName isabella@example.com | FL DisplayName, RoleDefinitionName, Scope
DisplayName : Isabella Simonsen
RoleDefinitionName : BizTalk Contributor
Scope : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pharma-sales
Belirli bir kullanıcıya atanan tüm rolleri ve kullanıcının ait olduğu gruplara atanan rolleri listelemek için Get-AzRoleAssignment kullanın.
Get-AzRoleAssignment -SignInName <email_or_userprincipalname> -ExpandPrincipalGroups
Get-AzRoleAssignment -SignInName isabella@example.com -ExpandPrincipalGroups | FL DisplayName, RoleDefinitionName, Scope
Kaynak grubunun rol atamalarını listeleme
Bir kaynak grubu kapsamındaki tüm rol atamalarını listelemek için Get-AzRoleAssignment komutunu kullanın.
Get-AzRoleAssignment -ResourceGroupName <resource_group_name>
PS C:\> Get-AzRoleAssignment -ResourceGroupName pharma-sales | FL DisplayName, RoleDefinitionName, Scope
DisplayName : Alain Charon
RoleDefinitionName : Backup Operator
Scope : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pharma-sales
DisplayName : Isabella Simonsen
RoleDefinitionName : BizTalk Contributor
Scope : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pharma-sales
DisplayName : Alain Charon
RoleDefinitionName : Virtual Machine Contributor
Scope : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pharma-sales
Yönetim grubu için rol atamalarını listeleme
Bir yönetim grubu kapsamındaki tüm rol atamalarını listelemek için Get-AzRoleAssignment komutunu kullanın. Yönetim grubu kimliğini almak için, bunu Azure portalındaki Yönetim grupları dikey penceresinde bulabilir veya Get-AzManagementGroup kullanabilirsiniz.
Get-AzRoleAssignment -Scope /providers/Microsoft.Management/managementGroups/<group_id>
PS C:\> Get-AzRoleAssignment -Scope /providers/Microsoft.Management/managementGroups/marketing-group
Kaynak için rol atamalarını listeleme
Belirli bir kaynağın rol atamalarını listelemek için Get-AzRoleAssignment ve parametresini -Scope
kullanın. Kapsam kaynağa bağlı olarak farklı olacaktır. Kapsamı almak için, tüm rol atamalarını listelemek ve ardından listelemek istediğiniz kapsamı bulmak için herhangi bir parametre olmadan çalıştırabilirsiniz Get-AzRoleAssignment
.
Get-AzRoleAssignment -Scope "/subscriptions/<subscription_id>/resourcegroups/<resource_group_name>/providers/<provider_name>/<resource_type>/<resource>
Aşağıdaki örnekte bir depolama hesabı için rol atamalarının nasıl listelenmesi gösterilmektedir. Bu komutun, bu depolama hesabı için geçerli olan kaynak grupları ve abonelikler gibi daha yüksek kapsamlarda rol atamalarını da listelediğini unutmayın.
PS C:\> Get-AzRoleAssignment -Scope "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/storage-test-rg/providers/Microsoft.Storage/storageAccounts/storagetest0122"
Doğrudan bir kaynağa atanan rol atamalarını listelemek istiyorsanız, listeyi filtrelemek için Where-Object komutunu kullanabilirsiniz.
PS C:\> Get-AzRoleAssignment | Where-Object {$_.Scope -eq "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/storage-test-rg/providers/Microsoft.Storage/storageAccounts/storagetest0122"}
Klasik hizmet yöneticisi ve ortak yöneticiler için rol atamalarını listeleme
Klasik abonelik yöneticisinin ve ortak yöneticilerin rol atamalarını listelemek için Get-AzRoleAssignment komutunu kullanın.
Get-AzRoleAssignment -IncludeClassicAdministrators
Yönetilen kimlik için rol atamalarını listeleme
Sistem tarafından atanan veya kullanıcı tarafından atanan yönetilen kimliğin nesne kimliğini alın.
Kullanıcı tarafından atanan yönetilen kimliğin nesne kimliğini almak için Get-AzADServicePrincipal kullanabilirsiniz.
Get-AzADServicePrincipal -DisplayNameBeginsWith "<name> or <vmname>"
Rol atamalarını listelemek için Get-AzRoleAssignment komutunu kullanın.
Get-AzRoleAssignment -ObjectId <objectid>