Vlastní role pro prostředky AzureCustom roles for Azure resources

Pokud předdefinované role pro prostředky Azure nevyhovují konkrétním potřebám vaší organizace, můžete vytvořit vlastní role.If the built-in roles for Azure resources don't meet the specific needs of your organization, you can create your own custom roles. Stejně jako předdefinované role můžete přiřadit vlastní role uživatelům, skupinám a instančním objektům v předplatném, skupině prostředků a oborech prostředků.Just like built-in roles, you can assign custom roles to users, groups, and service principals at subscription, resource group, and resource scopes.

Vlastní role se dají sdílet mezi předplatnými, která důvěřují stejnému adresáři služby Azure AD.Custom roles can be shared between subscriptions that trust the same Azure AD directory. Pro každý adresář je povolený limit 5 000 vlastních rolí.There is a limit of 5,000 custom roles per directory. (Pro specializované cloudy, jako je Azure Government, Azure Německo a Azure Čína 21Vianet, je limit 2 000 vlastních rolí.) Vlastní role se dají vytvořit pomocí Azure PowerShell, Azure CLI nebo REST API.(For specialized clouds, such as Azure Government, Azure Germany, and Azure China 21Vianet, the limit is 2,000 custom roles.) Custom roles can be created using Azure PowerShell, Azure CLI, or the REST API.

Příklad vlastní roleCustom role example

Následující text ukazuje, jak vlastní role vypadá jako zobrazený ve formátu JSON.The following shows what a custom role looks like as displayed in JSON format. Tato vlastní role se dá použít k monitorování a restartování virtuálních počítačů.This custom role can be used for monitoring and restarting virtual machines.

{
  "Name": "Virtual Machine Operator",
  "Id": "88888888-8888-8888-8888-888888888888",
  "IsCustom": true,
  "Description": "Can monitor and restart virtual machines.",
  "Actions": [
    "Microsoft.Storage/*/read",
    "Microsoft.Network/*/read",
    "Microsoft.Compute/*/read",
    "Microsoft.Compute/virtualMachines/start/action",
    "Microsoft.Compute/virtualMachines/restart/action",
    "Microsoft.Authorization/*/read",
    "Microsoft.ResourceHealth/availabilityStatuses/read",
    "Microsoft.Resources/subscriptions/resourceGroups/read",
    "Microsoft.Insights/alertRules/*",
    "Microsoft.Insights/diagnosticSettings/*",
    "Microsoft.Support/*"
  ],
  "NotActions": [],
  "DataActions": [],
  "NotDataActions": [],
  "AssignableScopes": [
    "/subscriptions/{subscriptionId1}",
    "/subscriptions/{subscriptionId2}",
    "/subscriptions/{subscriptionId3}"
  ]
}

Když vytvoříte vlastní roli, zobrazí se v Azure Portal s ikonou oranžového prostředku.When you create a custom role, it appears in the Azure portal with an orange resource icon.

Ikona vlastní role

Postup vytvoření vlastní roleSteps to create a custom role

  1. Rozhodněte, jak chcete vytvořit vlastní roli.Decide how you want to create the custom role

    Vlastní role můžete vytvořit pomocí Azure PowerShell, rozhraní příkazového řádku Azurenebo REST API.You can create custom roles using Azure PowerShell, Azure CLI, or the REST API.

  2. Určete potřebná oprávnění.Determine the permissions you need

    Při vytváření vlastní role potřebujete znát operace poskytovatele prostředků, které jsou k dispozici pro definování vašich oprávnění.When you create a custom role, you need to know the resource provider operations that are available to define your permissions. Chcete-li zobrazit seznam operací, přečtěte si téma operace poskytovatele prostředků Azure Resource Manager.To view the list of operations, see the Azure Resource Manager resource provider operations. Přidáte operace do vlastností Actions nebo NotActions definice role.You will add the operations to the Actions or NotActions properties of the role definition. Pokud máte datové operace, přidejte je do vlastností DataActions nebo NotDataActions.If you have data operations, you will add those to the DataActions or NotDataActions properties.

  3. Vytvoření vlastní roleCreate the custom role

    Obvykle začínáte stávající integrovanou rolí a pak ji upravíte podle svých potřeb.Typically, you start with an existing built-in role and then modify it for your needs. Pak pomocí příkazu New-AzRoleDefinition nebo AZ role definition Create vytvořte vlastní roli.Then you use the New-AzRoleDefinition or az role definition create commands to create the custom role. Pokud chcete vytvořit vlastní roli, musíte mít oprávnění Microsoft.Authorization/roleDefinitions/write pro všechny AssignableScopes, jako je například vlastník nebo Správce přístupu uživatelů.To create a custom role, you must have the Microsoft.Authorization/roleDefinitions/write permission on all AssignableScopes, such as Owner or User Access Administrator.

  4. Test vlastní roleTest the custom role

    Jakmile máte vlastní roli, musíte ji otestovat, abyste ověřili, že funguje podle očekávání.Once you have your custom role, you have to test it to verify that it works as you expect. Pokud potřebujete provést úpravy později, můžete aktualizovat vlastní roli.If you need to make adjustments later, you can update the custom role.

Podrobný návod, jak vytvořit vlastní roli, najdete v tématu kurz: Vytvoření vlastní role pomocí Azure PowerShell nebo kurzu: Vytvoření vlastní role pomocí rozhraní příkazového řádku Azure CLI.For a step-by-step tutorial on how to create a custom role, see Tutorial: Create a custom role using Azure PowerShell or Tutorial: Create a custom role using Azure CLI.

Vlastnosti vlastní roleCustom role properties

Vlastní role má následující vlastnosti.A custom role has the following properties.

VlastnostProperty Požaduje seRequired TypType PopisDescription
Name AnoYes ŘetězecString Zobrazované jméno vlastní roleThe display name of the custom role. I když je definice role prostředkem na úrovni předplatného, dá se použít definice role ve více předplatných, která sdílejí stejný adresář služby Azure AD.While a role definition is a subscription-level resource, a role definition can be used in multiple subscriptions that share the same Azure AD directory. Tento zobrazovaný název musí být jedinečný v oboru adresáře služby Azure AD.This display name must be unique at the scope of the Azure AD directory. Může obsahovat písmena, číslice, mezery a speciální znaky.Can include letters, numbers, spaces, and special characters. Maximální počet znaků je 128.Maximum number of characters is 128.
Id AnoYes ŘetězecString Jedinečné ID vlastní roleThe unique ID of the custom role. Pro Azure PowerShell a Azure CLI se toto ID automaticky vygeneruje při vytvoření nové role.For Azure PowerShell and Azure CLI, this ID is automatically generated when you create a new role.
IsCustom AnoYes ŘetězecString Označuje, zda se jedná o vlastní roli.Indicates whether this is a custom role. Pro vlastní role nastavte true.Set to true for custom roles.
Description AnoYes ŘetězecString Popis vlastní roleThe description of the custom role. Může obsahovat písmena, číslice, mezery a speciální znaky.Can include letters, numbers, spaces, and special characters. Maximální počet znaků je 1024.Maximum number of characters is 1024.
Actions AnoYes Řetězec []String[] Pole řetězců, které určuje operace správy, které může role provést.An array of strings that specifies the management operations that the role allows to be performed. Další informace najdete v tématu Akce.For more information, see Actions.
NotActions NeNo Řetězec []String[] Pole řetězců, které určuje operace správy, které jsou vyloučeny z povolených Actions.An array of strings that specifies the management operations that are excluded from the allowed Actions. Další informace najdete v tématu NotActions.For more information, see NotActions.
DataActions NeNo Řetězec []String[] Pole řetězců, které určuje datové operace, které může role provádět na vašich datech v rámci daného objektu.An array of strings that specifies the data operations that the role allows to be performed to your data within that object. Další informace naleznete v tématu Dataactions.For more information, see DataActions.
NotDataActions NeNo Řetězec []String[] Pole řetězců, které určuje operace s daty, které jsou vyloučeny z povolených DataActions.An array of strings that specifies the data operations that are excluded from the allowed DataActions. Další informace najdete v tématu NotDataActions.For more information, see NotDataActions.
AssignableScopes AnoYes Řetězec []String[] Pole řetězců, které určuje rozsahy, které jsou k dispozici pro přiřazení vlastní role.An array of strings that specifies the scopes that the custom role is available for assignment. U vlastních rolí aktuálně nemůžete nastavit AssignableScopes do kořenového oboru ("/") nebo do oboru skupiny pro správu.For custom roles, you currently cannot set AssignableScopes to the root scope ("/") or a management group scope. Další informace najdete v tématu AssignableScopes a uspořádání prostředků pomocí skupin pro správu Azure.For more information, see AssignableScopes and Organize your resources with Azure management groups.

Kdo může vytvořit, odstranit, aktualizovat nebo zobrazit vlastní roliWho can create, delete, update, or view a custom role

Stejně jako předdefinované role určuje vlastnost AssignableScopes rozsahy, které je role k dispozici pro přiřazení.Just like built-in roles, the AssignableScopes property specifies the scopes that the role is available for assignment. Vlastnost AssignableScopes pro vlastní roli také řídí, kdo může vytvořit, odstranit, aktualizovat nebo zobrazit vlastní roli.The AssignableScopes property for a custom role also controls who can create, delete, update, or view the custom role.

ÚkolTask OperaceOperation PopisDescription
Vytvoření nebo odstranění vlastní roleCreate/delete a custom role Microsoft.Authorization/ roleDefinitions/write Uživatelé, kterým je tato operace udělena na všech AssignableScopes vlastní role, mohou vytvořit (nebo odstranit) vlastní role pro použití v těchto oborech.Users that are granted this operation on all the AssignableScopes of the custom role can create (or delete) custom roles for use in those scopes. Například vlastníci a Správci přístupu uživatelů k předplatným, skupinám prostředků a prostředkům.For example, Owners and User Access Administrators of subscriptions, resource groups, and resources.
Aktualizace vlastní roleUpdate a custom role Microsoft.Authorization/ roleDefinitions/write Uživatelé, kterým je tato operace udělená na všech AssignableScopes vlastní role, můžou aktualizovat vlastní role v těchto oborech.Users that are granted this operation on all the AssignableScopes of the custom role can update custom roles in those scopes. Například vlastníci a Správci přístupu uživatelů k předplatným, skupinám prostředků a prostředkům.For example, Owners and User Access Administrators of subscriptions, resource groups, and resources.
Zobrazení vlastní roleView a custom role Microsoft.Authorization/ roleDefinitions/read Uživatelé, kterým je tato operace udělená v oboru, můžou zobrazit vlastní role, které jsou k dispozici pro přiřazení v daném oboru.Users that are granted this operation at a scope can view the custom roles that are available for assignment at that scope. Všechny předdefinované role umožňují, aby byly vlastní role k dispozici pro přiřazení.All built-in roles allow custom roles to be available for assignment.

Další krokyNext steps