Sdílet prostřednictvím


Kurz: Vytvoření vlastní role Azure pomocí Azure CLI

Pokud integrované role Azure nesplňují konkrétní požadavky vaší organizace, můžete si vytvořit vlastní role. Pro účely tohoto kurzu vytvoříte vlastní roli s názvem Podpora čtenáře pro lístky pomocí Azure CLI. Vlastní role umožňuje uživateli zobrazit vše v kontrolní rovině předplatného a také otevřít podporné tikety.

V tomto kurzu se naučíte:

  • Vytvoření vlastní role
  • Výpis vlastních rolí
  • Aktualizace vlastní role
  • Odstraňte vlastní roli

Pokud ještě nemáte předplatné Azure, vytvořte si napřed bezplatný účet.

Požadavky

Pro absolvování tohoto kurzu potřebujete:

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, přidat změny a pak vytvořit novou roli.

  1. 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í.

    Činnost Popis
    Microsoft.Support/register/action Zaregistruje se k poskytovateli prostředků podpory.
    Microsoft.Support/supportTickets/read Získá podrobnosti lístku podpory (včetně stavu, závažnosti, kontaktních údajů a komunikace) nebo získá seznam lístků podpory napříč předplatnými.
    Microsoft.Podpora/tiketyPodpora/psát Vytvoří nebo aktualizuje požadavek podpory. Můžete vytvořit lístek podpory pro problémy související s technickými problémy, fakturací, kvótami nebo správou předplatného. Můžete aktualizovat závažnost, kontaktní údaje a komunikaci pro stávající tikety podpory.
  2. Vytvořte nový soubor s názvem ReaderSupportRole.json.

  3. Otevřete ReaderSupportRole.json v editoru a přidejte 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}"
      ]
    }
    
  4. Do vlastnosti Actions přidejte následující akce. Tyto akce umožňují uživateli zobrazit všechno v předplatném a vytvořit lístky podpory.

    "*/read",
    "Microsoft.Support/*"
    
  5. Pomocí příkazu az account list získejte ID vašeho předplatného.

    az account list --output table
    
  6. V AssignableScopes nahraďte {subscriptionId1} vaším ID předplatného.

    Musíte přidat explicitní ID předplatných, jinak tuto roli nebudete moct importovat do svého předplatného.

  7. Změňte vlastnost Name na Podpora vstupenek pro čtenáře a vlastnost Description na Zobrazit vše v předplatném a otevírat lístky 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"
      ]
    }
    
  8. Pokud chcete vytvořit novou vlastní roli, použijte příkaz az role definition create a zadejte soubor definice role JSON.

    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ď dostupná a dá se 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 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.

    snímek obrazovky webu Azure Portal s importovanou vlastní rolí

Aktualizace vlastní role

Pokud chcete aktualizovat vlastní roli, aktualizujte soubor JSON a potom aktualizujte vlastní roli.

  1. Otevřete soubor ReaderSupportRole.json.

  2. V Actionsaplikaci 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"
      ]
    }
    
  3. 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"
    }
    

Odstraňte vlastní roli

  • K odstranění vlastní role použijte příkaz az role definition delete a zadejte název role nebo ID role.

    az role definition delete --name "Reader Support Tickets"
    

Další kroky