Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Pokud předdefinované role Azure nesplňují konkrétní požadavky vaší organizace, můžete si vytvořit vlastní role RBAC. V tomto kurzu pomocí Azure PowerShellu vytvoříte vlastní roli nazvanou Čtenář podporových tiketů. 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.
Poznámka:
Při práci s Azure doporučujeme používat modul Azure Az PowerShellu. Začněte tím, že si projdete téma Instalace Azure PowerShellu. Informace o tom, jak migrovat na modul Az PowerShell, najdete v tématu Migrace Azure PowerShellu z AzureRM na Az.
Požadavky
Pro absolvování tohoto kurzu potřebujete:
- Oprávnění k vytváření vlastních rolí, jako je správce uživatelských přístupů
- Azure Cloud Shell nebo Azure PowerShell
Přihlášení k Azure PowerShellu
Přihlaste se k Azure PowerShellu.
Vytvoření vlastní role
Nejjednodušší způsob, jak vytvořit vlastní roli, je začít s předdefinovanou rolí, upravit ji a pak vytvořit novou roli.
V PowerShellu pomocí příkazu Get-AzProviderOperation získejte seznam operací pro poskytovatele prostředků Microsoft.Support. Je užitečné znát operace, které máte k dispozici k vytváření oprávnění. Můžete také zobrazit seznam všech operací v operacích poskytovatele prostředků Azure.
Get-AzProviderOperation "Microsoft.Support/*" | FT Operation, Description -AutoSizeOperation Description --------- ----------- Microsoft.Support/register/action Registers to Support Resource Provider Microsoft.Support/supportTickets/read Gets Support Ticket details (including status, severity, contact ... Microsoft.Support/supportTickets/write Creates or Updates a Support Ticket. You can create a Support Tic...Pomocí příkazu Get-AzRoleDefinition exportujte roli Čtenář ve formátu JSON.
Get-AzRoleDefinition -Name "Reader" | ConvertTo-Json | Out-File C:\CustomRoles\ReaderSupportRole.jsonV editoru otevřete soubor ReaderSupportRole.json.
Následuje ukázka výstupu JSON. Informace o různých vlastnostech najdete v tématu Vlastní role Azure.
{ "Name": "Reader", "Id": "acdd72a7-3385-48ef-bd42-f606fba81ae7", "IsCustom": false, "Description": "Lets you view everything, but not make any changes.", "Actions": [ "*/read" ], "NotActions": [], "DataActions": [], "NotDataActions": [], "AssignableScopes": [ "/" ] }Upravte soubor JSON a přidejte
"Microsoft.Support/*"akci doActionsvlastnosti. Nezapomeňte za akci čtení zahrnout čárku. Tato akce umožní uživateli vytvářet tikety podpory.Pomocí příkazu Get-AzSubscription získejte ID vašeho předplatného.
Get-AzSubscriptionDo vlastnosti
AssignableScopespřidejte ID vašeho předplatného v následujícím formátu:"/subscriptions/00000000-0000-0000-0000-000000000000".Musíte přidat explicitní ID předplatných, jinak tuto roli nebudete moct importovat do svého předplatného.
Odstraňte řádek vlastnosti
Ida změňte vlastnostIsCustomna hodnotutrue.Změňte vlastnosti
NameaDescriptionna "Podpora čtenáře" a "Zobrazit vše v předplatném a také otevírat tiket 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 New-AzRoleDefinition a zadejte definiční soubor role JSON.
New-AzRoleDefinition -InputFile "C:\CustomRoles\ReaderSupportRole.json"Name : Reader Support Tickets Id : 22222222-2222-2222-2222-222222222222 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}Nová vlastní role je teď k dispozici na webu Azure Portal 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 zobrazit seznam všech vlastních rolí, použijte příkaz Get-AzRoleDefinition .
Get-AzRoleDefinition | ? {$_.IsCustom -eq $true} | FT Name, IsCustomName IsCustom ---- -------- Reader Support Tickets TrueVlastní roli můžete zobrazit také na webu Azure Portal.
Aktualizace vlastní role
Pokud chcete aktualizovat vlastní roli, můžete aktualizovat soubor JSON nebo použít objekt PSRoleDefinition.
Pokud chcete aktualizovat soubor JSON, použijte příkaz Get-AzRoleDefinition k výstupu vlastní role ve formátu JSON.
Get-AzRoleDefinition -Name "Reader Support Tickets" | ConvertTo-Json | Out-File C:\CustomRoles\ReaderSupportRole2.jsonOtevřete soubor v editoru.
V
Actionsaplikaci přidejte akci pro vytvoření a správu nasazení"Microsoft.Resources/deployments/*"skupin prostředků .Váš aktualizovaný soubor JSON by měl vypadat následovně:
{ "Name": "Reader Support Tickets", "Id": "22222222-2222-2222-2222-222222222222", "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 Set-AzRoleDefinition a zadejte aktualizovaný soubor JSON.
Set-AzRoleDefinition -InputFile "C:\CustomRoles\ReaderSupportRole2.json"Name : Reader Support Tickets Id : 22222222-2222-2222-2222-222222222222 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 objekt použít
PSRoleDefinitionk aktualizaci vlastní role, nejprve pomocí příkazu Get-AzRoleDefinition získejte roli.$role = Get-AzRoleDefinition "Reader Support Tickets"AddVoláním metody přidejte akci pro čtení nastavení diagnostiky.$role.Actions.Add("Microsoft.Insights/diagnosticSettings/*/read")K aktualizaci role použijte Set-AzRoleDefinition.
Set-AzRoleDefinition -Role $roleName : Reader Support Tickets Id : 22222222-2222-2222-2222-222222222222 IsCustom : True Description : View everything in the subscription and also open support tickets. Actions : {*/read, Microsoft.Support/*, Microsoft.Resources/deployments/*, Microsoft.Insights/diagnosticSettings/*/read} NotActions : {} DataActions : {} NotDataActions : {} AssignableScopes : {/subscriptions/00000000-0000-0000-0000-000000000000}
Odstranění vlastní role
Pomocí příkazu Get-AzRoleDefinition získejte ID vlastní role.
Get-AzRoleDefinition "Reader Support Tickets"Použijte příkaz Remove-AzRoleDefinition a zadejte ID role k odstranění vlastní role.
Remove-AzRoleDefinition -Id "22222222-2222-2222-2222-222222222222"Confirm Are you sure you want to remove role definition with id '22222222-2222-2222-2222-222222222222'. [Y] Yes [N] No [S] Suspend [?] Help (default is "Y"):Když se zobrazí výzva k potvrzení, zadejte Y.