Azure özel rollerini yönetme

Tamamlandı

Bu ünitede, Azure özel rollerini kimlerin yönetebileceğini ve nasıl yönetebileceğini öğreneceksiniz.

Özel rolleri kimler yönetebilir?

Genel olarak, Sahip veya Kullanıcı Erişimi Yönetici istrator rollerine sahip yöneticilerin özel roller oluşturma ve yönetme izinleri vardır. Varsayılan olarak, bu rollerin Microsoft.Authorization/roleDefinitions/write tüm rol atama kapsamları üzerinde izni vardır. Bu izin, özel rolleri oluşturmak, silmek veya güncelleştirmek için gereklidir.

Rol atama kapsamları AssignableScopes içindeki özel rol tanımında tanımlanır. 2. ünitede açıklandığı gibi AssignableScopes bir veya daha fazla abonelik, kaynak grubu veya kaynak olabilir.

Aşağıdaki tabloda özel rolleri oluşturmak, silmek, güncelleştirmek veya görüntülemek için ihtiyacınız olan izinler listelenmiştir. Özel rolleri yönetmek için rol tanımında ilgili Eylemler ve AssignableScopes bulunan bir role atanmalısınız.

Görev Eylemler Tanım
Oluştur/Sil Microsoft.Authorization/roleDefinitions/write Kullanıcılar kapsamlarda kullanılmak üzere özel roller oluşturabilir veya silebilir. Örneğin: Aboneliklerin, kaynak gruplarının ve kaynakların sahipleri ve Kullanıcı Erişimi Yönetici.
Güncelleştir Microsoft.Authorization/roleDefinitions/write Kullanıcılar kapsamlardaki özel rolleri güncelleştirebilir. Örneğin: Aboneliklerin, kaynak gruplarının ve kaynakların sahipleri ve Kullanıcı Erişimi Yönetici.
Görünüm Microsoft.Authorization/roleDefinitions/read Kullanıcılar, bir kapsamda atama için kullanılabilen özel rolleri görüntüleyebilir. Tüm yerleşik roller, özel rollerin atama için kullanılabilir olmasını sağlar.

Özel roller oluşturma

Önceki ünitede, Azure CLI kullanarak özel bir rol oluşturdunuz. Azure portalını veya Azure PowerShell'i kullanarak da özel bir rol oluşturabilirsiniz.

Azure portalını kullanarak özel roller oluşturma

Azure portalında, özel rol kapsamının uygulanmasını istediğiniz aboneliğe veya kaynak grubuna gidin, ardından Erişim denetimi (IAM) bölümüne gidin ve Özel rol ekle'yi>seçin.

Screenshot that shows Add custom role option under Add button.

Mevcut bir rolü kopyalamayı veya sıfırdan başlamayı seçebilirsiniz.

Screenshot of clone role radio button selected and Virtual Machine Contributor as role to clone.

Her iki seçimle de izinleri, kapsamları ve sonuçta elde edilen JSON'ı düzenleyebilirsiniz.

Azure PowerShell kullanarak özel rol oluşturma

Azure PowerShell kullanarak rol oluşturma adımları, önceki iki ünitede ele aldığımız adımlara benzer. Özel rolü bir JSON dosyasında tanımladıktan sonra, özel rolü oluşturmak için Azure CLI'da aşağıdaki komutu kullanın:

az role definition create --role-definition vm-operator-role.json

Azure PowerShell'de rol oluşturmak için aşağıdaki komutu çalıştırın:

New-AzRoleDefinition -InputFile "vm-operator-role.json"

Özel rolleri güncelleştirme

Özel bir rolü güncelleştirmek için Azure CLI veya Azure PowerShell kullanabilirsiniz. Sonraki ünitede özel rol tanımınızı güncelleştirmek için belirli adımları inceleyeceksiniz; ancak genel olarak JSON dosyasını değişikliklerinizle güncelleştirdikten sonra aşağıdaki komutlardan birini çalıştırırsınız.

Azure CLI kullanarak özel rolü güncelleştirmek için, güncelleştirmelerinizi içeren JSON dosyasının yolu ile aşağıdaki komutu çalıştırın:

az role definition update --role-definition "<<path-to-json-file>>"

Azure PowerShell'de güncelleştirilmiş JSON dosyasının yolu ile aşağıdaki komutu çalıştırın:

Set-AzRoleDefinition -InputFile "<<path-to-json-file>>"

Özel rolleri görüntüleme

Sonraki ünitede Azure portalında özel rolleri görüntülemeyi öğreneceksiniz. Azure CLI veya PowerShell kullanarak özel rollerin listesini de alabilirsiniz.

Azure CLI kullanarak tüm özel rolleri listelemek için aşağıdaki komutu kullanın:

az role definition list --custom-role-only true --output json | jq '.[] | {"roleName":.roleName, "roleType":.roleType}'

Komutun yalnızca rol adını ve rol türünü nasıl sorduğuna dikkat edin. Bu, birçok rolü görüntülemeyi kolaylaştırır.

Azure PowerShell kullanarak tüm özel rolleri listelemek için aşağıdaki komutu kullanın. Bu komut, abonelikte atama için kullanılabilen özel rolleri listeler. Abonelik rolün AssignableScopes içinde değilse, özel rol listelenmez.

Get-AzRoleDefinition | ? {$_.IsCustom -eq $true} | FT Name, IsCustom

Rol tanımını görüntüleme

Belirli bir rolün tam tanımını görmek için aşağıdaki Azure CLI komutunu kullanın:

az role definition list --name "Virtual Machine Operator"

PowerShell'de tanımı görmek için aşağıdaki komutu kullanın:

Get-AzRoleDefinition "Virtual Machine Operator" 

Özel rol ataması listeleme

Aşağıdaki komut, Azure CLI'da oluşturduğunuz özel role kimlerin atandiğini görmenizi sağlar:

az role assignment list --role "Virtual Machine Operator"

PowerShell için aşağıdaki komutu kullanın:

Get-AzRoleAssignment -RoleDefinitionName "Virtual Machine Operator"

Özel rolleri silme

Sonraki ünitedeki alıştırmalar için önceki ünitede oluşturduğunuz özel role ihtiyacınız vardır, bu nedenle özel rolünüzü henüz silmeyin. İlk olarak özel bir rolü nasıl sildiğiniz hakkında konuşalım.

Rol atamalarını kaldır

Özel role artık ihtiyacınız olmadığına karar verirseniz, rolü silmeden önce rol atamalarını kaldırmanız gerekir.

Azure portalında, özel rolün kapsamının geçerli olduğu aboneliğe, kaynak grubuna veya kaynağa giderek atamaları kaldırabilirsiniz. Ardından Erişim denetimi (IAM)>Rol atamaları'na gidin. Rol adına göre filtreleyin, role atanan tüm kullanıcıları seçin ve Kaldır'ı seçin.

Azure CLI'da, özel rolün adıyla aşağıdaki komutu kullanın:

   az role assignment delete --role "role name"

Azure PowerShell'de cmdlet'ini Remove-AzRoleAssignment kullanın. Komut aşağıdakine benzer görünebilir:

Remove-AzRoleAssignment -ObjectId <object_id> -RoleDefinitionName "role name" -Scope /subscriptions/<subscription_id>

ObjectID kullanıcı, grup veya hizmet sorumlusunun Microsoft Entra ObjectId değeridir.

Özel rolü silme

Azure portalını, Azure CLI'yı veya Azure PowerShell'i kullanarak özel bir rolü silebilirsiniz.

Azure portalında, özel rolün kapsamının geçerli olduğu aboneliğe, kaynak grubuna veya kaynağa gidin, ardından Erişim denetimi (IAM)>Roller'e gidin. Rolü bulmak için CustomRole Yazın'ı>seçin.

Screenshot that shows custom roles selected from drop-down list.

Rolü seçin ve ardından Kaldır'ı seçin.

Sonraki ünitede, Azure CLI kullanarak özel rolü silmek için aşağıdaki komutu kullanacaksınız:

az role definition delete --name "role name"

PowerShell'de bir rolü silmek için aşağıdaki komutu kullanın:

Get-AzRoleDefinition "role name" | Remove-AzRoleDefinition

Bilginizi ölçün

1.

Özel bir rolü güncelleştirmek için Azure PowerShell cmdlet'i nedir?

2.

Özel rolü kaldırma adımları nelerdir?