Öğretici: Azure CLI kullanarak Azure özel rolü oluşturma
Azure yerleşik rolleri kuruluşunuzun belirli gereksinimlerini karşılamıyorsa kendi özel rollerinizi oluşturabilirsiniz. Bu öğretici için Azure CLI'yı kullanarak Reader Support Tickets adlı özel bir rol oluşturacaksınız. Özel rol, kullanıcının aboneliğin denetim düzlemindeki her şeyi görüntülemesine ve ayrıca destek biletlerini açmasına olanak tanır.
Bu öğreticide aşağıdakilerin nasıl yapılacağını öğreneceksiniz:
- Özel rol oluşturma
- Özel rolleri listeleme
- Özel rolü güncelleştirme
- Özel rolü silme
Azure aboneliğiniz yoksa başlamadan önce ücretsiz bir hesap oluşturun.
Önkoşullar
Bu öğreticiyi tamamlamak için aşağıdakiler gerekir:
- Kullanıcı Erişimi Yönetici istrator gibi özel roller oluşturma izinleri
- Azure Cloud Shell veya Azure CLI
Azure CLI'da oturum açma
Azure CLI'da oturum açın.
Özel rol oluşturma
Özel rol oluşturmanın en kolay yolu bir JSON şablonuyla başlayıp değişikliklerinizi ekledikten sonra yeni bir rol oluşturmaktır.
Microsoft.Support kaynak sağlayıcısı için eylemlerin listesini gözden geçirin. İzinlerinizi oluşturmak için kullanılabilecek eylemleri bilmek yararlı olur.
Eylem Açıklama Microsoft.Support/register/action Destek Kaynağı Sağlayıcısı'na kayıt yapar Microsoft.Support/supportTickets/read Durum, önem derecesi, kişi ayrıntıları ve iletişimler gibi Destek Biletleri ayrıntılarını alır veya aboneliklerdeki Destek Biletleri listesini alır. Microsoft.Support/supportTickets/write Destek Bileti oluşturur veya güncelleştirir. Teknik, Faturalama, Kotalar veya Abonelik Yönetimi konusunda bir Destek Bileti oluşturabilirsiniz. Var olan destek biletlerinin önem derecesini, iletişim bilgilerini ve iletişimlerini güncelleştirebilirsiniz. ReaderSupportRole.json adlı yeni bir dosya oluşturun.
ReaderSupportRole.json dosyasını bir düzenleyicide açıp aşağıdaki JSON kodunu ekleyin.
Farklı özellikler hakkında bilgi için bkz . Azure özel rolleri.
{ "Name": "", "IsCustom": true, "Description": "", "Actions": [], "NotActions": [], "DataActions": [], "NotDataActions": [], "AssignableScopes": [ "/subscriptions/{subscriptionId1}" ] }
Özelliğine aşağıdaki eylemleri
Actions
ekleyin. Bu eylemler, kullanıcının abonelikteki her şeyi görüntülemesini ve destek bileti oluşturmasını sağlar."*/read", "Microsoft.Support/*"
az account list komutunu kullanarak aboneliğinizin kimliğini alın.
az account list --output table
AssignableScopes
içinde{subscriptionId1}
yerine abonelik kimliğinizi yazın.Açık abonelik kimliklerini girmeniz gerekir, aksi halde rolü aboneliğinize aktaramazsınız.
Name
veDescription
özelliklerini "Okuyucu Destek Biletleri" ve "Abonelikteki her şeyi görüntüleme ve destek bileti açma." olarak değiştirin.JSON dosyanız aşağıdaki gibi görünmelidir:
{ "Name": "Reader Support Tickets", "IsCustom": true, "Description": "View everything in the subscription and also open support tickets.", "Actions": [ "*/read", "Microsoft.Support/*" ], "NotActions": [], "DataActions": [], "NotDataActions": [], "AssignableScopes": [ "/subscriptions/00000000-0000-0000-0000-000000000000" ] }
Yeni özel rolü oluşturmak için az role definition create komutunu kullanın ve JSON rol tanımı dosyasını belirtin.
az role definition create --role-definition "~/CustomRoles/ReaderSupportRole.json"
{ "additionalProperties": {}, "assignableScopes": [ "/subscriptions/00000000-0000-0000-0000-000000000000" ], "description": "View everything in the subscription and also open support tickets.", "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Authorization/roleDefinitions/22222222-2222-2222-2222-222222222222", "name": "22222222-2222-2222-2222-222222222222", "permissions": [ { "actions": [ "*/read", "Microsoft.Support/*" ], "additionalProperties": {}, "dataActions": [], "notActions": [], "notDataActions": [] } ], "roleName": "Reader Support Tickets", "roleType": "CustomRole", "type": "Microsoft.Authorization/roleDefinitions" }
Yeni özel rol artık kullanılabilir ve yerleşik roller gibi kullanıcılara, gruplara veya hizmet sorumlularına atanabilir.
Özel rolleri listeleme
Özel rollerinizin tümünü listelemek için az role definition list komutunu
--custom-role-only
parametresiyle birlikte kullanın.az role definition list --custom-role-only true
[ { "additionalProperties": {}, "assignableScopes": [ "/subscriptions/00000000-0000-0000-0000-000000000000" ], "description": "View everything in the subscription and also open support tickets.", "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Authorization/roleDefinitions/22222222-2222-2222-2222-222222222222", "name": "22222222-2222-2222-2222-222222222222", "permissions": [ { "actions": [ "*/read", "Microsoft.Support/*", "Microsoft.Resources/deployments/*", "Microsoft.Insights/diagnosticSettings/*/read" ], "additionalProperties": {}, "dataActions": [], "notActions": [], "notDataActions": [] } ], "roleName": "Reader Support Tickets", "roleType": "CustomRole", "type": "Microsoft.Authorization/roleDefinitions" } ]
Özel rolü Azure portalında da görebilirsiniz.
Özel rolü güncelleştirme
Özel rolü güncelleştirmek için JSON dosyasını ve ardından özel rolü güncelleştirin.
ReaderSupportRole.json dosyasını açın.
içinde
Actions
, kaynak grubu dağıtımlarını"Microsoft.Resources/deployments/*"
oluşturmak ve yönetmek için eylemini ekleyin. Önceki eylemden sonra virgül eklediğinizden emin olun.Güncelleştirilmiş JSON dosyanız aşağıdaki gibi görünmelidir:
{ "Name": "Reader Support Tickets", "IsCustom": true, "Description": "View everything in the subscription and also open support tickets.", "Actions": [ "*/read", "Microsoft.Support/*", "Microsoft.Resources/deployments/*" ], "NotActions": [], "DataActions": [], "NotDataActions": [], "AssignableScopes": [ "/subscriptions/00000000-0000-0000-0000-000000000000" ] }
Özel rolü güncelleştirmek için az role definition update komutunu kullanarak güncelleştirilmiş JSON dosyasını belirtin.
az role definition update --role-definition "~/CustomRoles/ReaderSupportRole.json"
{ "additionalProperties": {}, "assignableScopes": [ "/subscriptions/00000000-0000-0000-0000-000000000000" ], "description": "View everything in the subscription and also open support tickets.", "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Authorization/roleDefinitions/22222222-2222-2222-2222-222222222222", "name": "22222222-2222-2222-2222-222222222222", "permissions": [ { "actions": [ "*/read", "Microsoft.Support/*", "Microsoft.Resources/deployments/*" ], "additionalProperties": {}, "dataActions": [], "notActions": [], "notDataActions": [] } ], "roleName": "Reader Support Tickets", "roleType": "CustomRole", "type": "Microsoft.Authorization/roleDefinitions" }
Özel rolü silme
Özel rolü silmek için az role definition delete komutunu kullanın ve rol adını veya rol kimliğini belirtin.
az role definition delete --name "Reader Support Tickets"