Kurz: Vytvoření vlastní role Azure pomocí Azure CLI
Pokud předdefinované role Azure nevyhovují konkrétním potřebám vaší organizace, můžete vytvořit vlastní role. V tomto kurzu pomocí Azure CLI vytvoříte vlastní roli Čtenář lístků podpory. Vlastní role umožňuje uživateli zobrazit vše v řídicí rovině předplatného a také otevřít lístky podpory.
V tomto kurzu se naučíte:
- Vytvoření vlastní role
- Výpis vlastních rolí
- Aktualizace vlastní role
- Odstranění vlastní role
Pokud ještě nemáte předplatné Azure, vytvořte si napřed bezplatný účet.
Požadavky
Pro absolvování tohoto kurzu potřebujete:
- Oprávnění k vytváření vlastních rolí, jako je uživatelský přístup Správa istrator
- Azure Cloud Shell nebo Azure CLI
Přihlášení k Azure CLI
Přihlaste se k Azure CLI.
Vytvoření vlastní role
Nejjednodušší způsob, jak vytvořit vlastní roli, je začít se šablonou JSON, upravit ji a pak vytvořit novou roli.
Projděte si seznam akcí pro poskytovatele prostředků Microsoft.Support. Je užitečné znát akce, které jsou k dispozici k vytvoření vašich oprávnění.
Akce Popis Microsoft.Support/register/action Registruje poskytovatele prostředků podpory. Microsoft.Support/supportTickets/read Umožňuje získat podrobnosti lístku podpory (včetně stavu, závažnosti, podrobností kontaktu a komunikací) nebo seznam lístků podpory pro všechna předplatná. Microsoft.Support/supportTickets/write Umožňuje vytvořit nebo aktualizovat lístek podpory. Můžete vytvořit lístek podpory pro technické problémy, problémy s fakturací nebo kvótami nebo problémy související se správou předplatného. U stávajících lístků podpory můžete aktualizovat závažnost, podrobnosti kontaktu a komunikace. Vytvořte nový soubor ReaderSupportRole.json.
Otevřete soubor ReaderSupportRole.json v editoru a přidejte do něj následující JSON.
Informace o různých vlastnostech najdete v tématu Vlastní role Azure.
{ "Name": "", "IsCustom": true, "Description": "", "Actions": [], "NotActions": [], "DataActions": [], "NotDataActions": [], "AssignableScopes": [ "/subscriptions/{subscriptionId1}" ] }
Do vlastnosti přidejte následující akce
Actions
. Tyto akce umožní uživateli zobrazit vše v předplatném a vytvářet lístky podpory."*/read", "Microsoft.Support/*"
Získejte ID vašeho předplatného pomocí příkazu az account list.
az account list --output table
Ve vlastnosti
AssignableScopes
nahraďte{subscriptionId1}
za ID vašeho předplatného.Musíte přidat explicitní ID předplatných, jinak tuto roli nebudete moct importovat do svého předplatného.
Změňte vlastnost
Name
na Čtenář lístků podpory a vlastnostDescription
na Zobrazení všeho v předplatném a také otevírání lístků podpory.Váš soubor JSON by měl vypadat následovně:
{ "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" ] }
Pokud chcete vytvořit novou vlastní roli, použijte příkaz az role definition create a zadejte soubor JSON s definicí role.
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" }
Nová vlastní role je teď k dispozici a můžete ji přiřadit uživatelům, skupinám nebo instančním objektům stejně jako předdefinované role.
Výpis vlastních rolí
Pokud chcete vypsat všechny vaše vlastní role, použijte příkaz az role definition list s parametrem
--custom-role-only
.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" } ]
Vlastní roli můžete zobrazit také na webu Azure Portal.
Aktualizace vlastní role
Pokud chcete aktualizovat vlastní roli, aktualizujte soubor JSON a pak aktualizujte vlastní roli.
Otevřete soubor ReaderSupportRole.json.
V
Actions
aplikaci přidejte akci pro vytvoření a správu nasazení"Microsoft.Resources/deployments/*"
skupin prostředků . Nezapomeňte za předchozí akci uvést čárku.Váš aktualizovaný soubor JSON by měl vypadat následovně:
{ "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" ] }
Pokud chcete aktualizovat vlastní roli, použijte příkaz az role definition update a zadejte aktualizovaný soubor JSON.
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" }
Odstranění vlastní role
Vlastní roli odstraníte pomocí příkazu az role definition delete, pro který zadáte název a ID role.
az role definition delete --name "Reader Support Tickets"