Azure-szerepkör-definíciók listázása

A szerepkör-definíciók végrehajtható engedélyek gyűjteményei, például olvasás, írás és törlés. Ezt általában csak szerepkörnek nevezik. Az Azure szerepköralapú hozzáférés-vezérlése (Azure RBAC) több mint 120 beépített szerepkört biztosít, vagy létrehozhat saját egyéni szerepköröket. Ez a cikk bemutatja, hogyan listázhatja azOkat a beépített és egyéni szerepköröket, amelyekkel hozzáférést biztosíthat az Azure-erőforrásokhoz.

A Azure Active Directory rendszergazdai szerepköreinek listáját a rendszergazdai szerepkörök engedélyeivel Azure Active Directory című témakörben tekintheti meg.

Azure Portal

Az összes szerepkör listázása

Az alábbi lépéseket követve listázhatja a Azure Portal összes szerepkörét.

  1. A Azure Portal kattintson a Minden szolgáltatás elemre, majd válasszon ki egy hatókört. Választhat például felügyeleti csoportokat, előfizetéseket, erőforráscsoportokat vagy erőforrásokat.

  2. Kattintson az adott erőforrásra.

  3. Kattintson a Hozzáférés-vezérlés (IAM) elemre.

  4. A beépített és egyéni szerepkörök listájának megtekintéséhez kattintson a Szerepkörök lapra.

    Screenshot showing Roles list using new experience.

  5. Egy adott szerepkör engedélyeinek megtekintéséhez a Részletek oszlopban kattintson a Nézet hivatkozásra.

    Megjelenik egy engedélyek panel.

  6. Kattintson az Engedélyek fülre a kijelölt szerepkör engedélyeinek megtekintéséhez és kereséséhez.

    Screenshot showing role permissions using new experience.

Azure PowerShell

Az összes szerepkör listázása

Az Azure PowerShell összes szerepkörének listázásához használja a Get-AzRoleDefinition parancsot.

Get-AzRoleDefinition | FT Name, Description
AcrImageSigner                                    acr image signer
AcrQuarantineReader                               acr quarantine data reader
AcrQuarantineWriter                               acr quarantine data writer
API Management Service Contributor                Can manage service and the APIs
API Management Service Operator Role              Can manage service but not the APIs
API Management Service Reader Role                Read-only access to service and APIs
Application Insights Component Contributor        Can manage Application Insights components
Application Insights Snapshot Debugger            Gives user permission to use Application Insights Snapshot Debugge...
Automation Job Operator                           Create and Manage Jobs using Automation Runbooks.
Automation Operator                               Automation Operators are able to start, stop, suspend, and resume ...
...

Szerepkör-definíció listázása

Egy adott szerepkör részleteinek listázásához használja a Get-AzRoleDefinition parancsot.

Get-AzRoleDefinition <role_name>
PS C:\> Get-AzRoleDefinition "Contributor"

Name             : Contributor
Id               : b24988ac-6180-42a0-ab88-20f7382dd24c
IsCustom         : False
Description      : Lets you manage everything except access to resources.
Actions          : {*}
NotActions       : {Microsoft.Authorization/*/Delete, Microsoft.Authorization/*/Write,
                   Microsoft.Authorization/elevateAccess/Action}
DataActions      : {}
NotDataActions   : {}
AssignableScopes : {/}

Szerepkör-definíció listázása JSON formátumban

Egy szerepkör JSON formátumban való listázásához használja a Get-AzRoleDefinition parancsot.

Get-AzRoleDefinition <role_name> | ConvertTo-Json
PS C:\> Get-AzRoleDefinition "Contributor" | ConvertTo-Json

{
  "Name": "Contributor",
  "Id": "b24988ac-6180-42a0-ab88-20f7382dd24c",
  "IsCustom": false,
  "Description": "Lets you manage everything except access to resources.",
  "Actions": [
    "*"
  ],
  "NotActions": [
    "Microsoft.Authorization/*/Delete",
    "Microsoft.Authorization/*/Write",
    "Microsoft.Authorization/elevateAccess/Action",
    "Microsoft.Blueprint/blueprintAssignments/write",
    "Microsoft.Blueprint/blueprintAssignments/delete"
  ],
  "DataActions": [],
  "NotDataActions": [],
  "AssignableScopes": [
    "/"
  ]
}

Szerepkör-definíció engedélyeinek listázása

Egy adott szerepkör engedélyeinek listázásához használja a Get-AzRoleDefinition parancsot.

Get-AzRoleDefinition <role_name> | FL Actions, NotActions
PS C:\> Get-AzRoleDefinition "Contributor" | FL Actions, NotActions

Actions    : {*}
NotActions : {Microsoft.Authorization/*/Delete, Microsoft.Authorization/*/Write,
             Microsoft.Authorization/elevateAccess/Action,
             Microsoft.Blueprint/blueprintAssignments/write...}
(Get-AzRoleDefinition <role_name>).Actions
PS C:\> (Get-AzRoleDefinition "Virtual Machine Contributor").Actions

Microsoft.Authorization/*/read
Microsoft.Compute/availabilitySets/*
Microsoft.Compute/locations/*
Microsoft.Compute/virtualMachines/*
Microsoft.Compute/virtualMachineScaleSets/*
Microsoft.DevTestLab/schedules/*
Microsoft.Insights/alertRules/*
Microsoft.Network/applicationGateways/backendAddressPools/join/action
Microsoft.Network/loadBalancers/backendAddressPools/join/action
...

Azure CLI

Az összes szerepkör listázása

Az Azure CLI összes szerepkörének listázásához használja az az role definition list parancsot.

az role definition list

Az alábbi példa az összes elérhető szerepkör-definíció nevét és leírását sorolja fel:

az role definition list --output json --query '[].{roleName:roleName, description:description}'
[
  {
    "description": "Can manage service and the APIs",
    "roleName": "API Management Service Contributor"
  },
  {
    "description": "Can manage service but not the APIs",
    "roleName": "API Management Service Operator Role"
  },
  {
    "description": "Read-only access to service and APIs",
    "roleName": "API Management Service Reader Role"
  },

  ...

]

Az alábbi példa felsorolja az összes beépített szerepkört.

az role definition list --custom-role-only false --output json --query '[].{roleName:roleName, description:description, roleType:roleType}'
[
  {
    "description": "Can manage service and the APIs",
    "roleName": "API Management Service Contributor",
    "roleType": "BuiltInRole"
  },
  {
    "description": "Can manage service but not the APIs",
    "roleName": "API Management Service Operator Role",
    "roleType": "BuiltInRole"
  },
  {
    "description": "Read-only access to service and APIs",
    "roleName": "API Management Service Reader Role",
    "roleType": "BuiltInRole"
  },
  
  ...

]

Szerepkör-definíció listázása

Egy szerepkör részleteinek listázásához használja az az role definition list parancsot.

az role definition list --name {roleName}

Az alábbi példa a Közreműködő szerepkör definícióját sorolja fel:

az role definition list --name "Contributor"
[
  {
    "assignableScopes": [
      "/"
    ],
    "description": "Lets you manage everything except access to resources.",
    "id": "/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/roleDefinitions/b24988ac-6180-42a0-ab88-20f7382dd24c",
    "name": "b24988ac-6180-42a0-ab88-20f7382dd24c",
    "permissions": [
      {
        "actions": [
          "*"
        ],
        "dataActions": [],
        "notActions": [
          "Microsoft.Authorization/*/Delete",
          "Microsoft.Authorization/*/Write",
          "Microsoft.Authorization/elevateAccess/Action",
          "Microsoft.Blueprint/blueprintAssignments/write",
          "Microsoft.Blueprint/blueprintAssignments/delete"
        ],
        "notDataActions": []
      }
    ],
    "roleName": "Contributor",
    "roleType": "BuiltInRole",
    "type": "Microsoft.Authorization/roleDefinitions"
  }
]

Szerepkör-definíció engedélyeinek listázása

Az alábbi példa csak a Közreműködő szerepkör műveleteit és nem műveleteit sorolja fel.

az role definition list --name "Contributor" --output json --query '[].{actions:permissions[0].actions, notActions:permissions[0].notActions}'
[
  {
    "actions": [
      "*"
    ],
    "notActions": [
      "Microsoft.Authorization/*/Delete",
      "Microsoft.Authorization/*/Write",
      "Microsoft.Authorization/elevateAccess/Action",
      "Microsoft.Blueprint/blueprintAssignments/write",
      "Microsoft.Blueprint/blueprintAssignments/delete"
    ]
  }
]

Az alábbi példa csak a virtuálisgép-közreműködői szerepkör műveleteit sorolja fel.

az role definition list --name "Virtual Machine Contributor" --output json --query '[].permissions[0].actions'
[
  [
    "Microsoft.Authorization/*/read",
    "Microsoft.Compute/availabilitySets/*",
    "Microsoft.Compute/locations/*",
    "Microsoft.Compute/virtualMachines/*",
    "Microsoft.Compute/virtualMachineScaleSets/*",
    "Microsoft.Compute/disks/write",
    "Microsoft.Compute/disks/read",
    "Microsoft.Compute/disks/delete",
    "Microsoft.DevTestLab/schedules/*",
    "Microsoft.Insights/alertRules/*",
    "Microsoft.Network/applicationGateways/backendAddressPools/join/action",
    "Microsoft.Network/loadBalancers/backendAddressPools/join/action",

    ...

    "Microsoft.Storage/storageAccounts/listKeys/action",
    "Microsoft.Storage/storageAccounts/read",
    "Microsoft.Support/*"
  ]
]

REST API

Szerepkör-definíciók felsorolása

A szerepkör-definíciók listázásához használja a Szerepkördefiníciók – REST API listázása lehetőséget. Az eredmények finomításához meg kell adnia egy hatókört és egy választható szűrőt.

  1. Kezdje a következő kéréssel:

    GET https://management.azure.com/{scope}/providers/Microsoft.Authorization/roleDefinitions?$filter={$filter}&api-version=2015-07-01
    
  2. Az URI-on belül cserélje le a (z) {scope} kifejezést arra a hatókörre, amelynek a szerepkör-definícióit listázni szeretné.

    Hatókör Típus
    providers/Microsoft.Management/managementGroups/{groupId1} Felügyeleti csoport
    subscriptions/{subscriptionId1} Előfizetés
    subscriptions/{subscriptionId1}/resourceGroups/myresourcegroup1 Erőforráscsoport
    subscriptions/{subscriptionId1}/resourceGroups/myresourcegroup1/providers/Microsoft.Web/sites/mysite1 Erőforrás

    Az előző példában a microsoft.web egy erőforrás-szolgáltató, amely egy App Service-példányra hivatkozik. Hasonlóképpen bármely más erőforrás-szolgáltatót is használhat, és megadhatja a hatókört. További információkért tekintse meg az Azure-erőforrás-szolgáltatókat és -típusokat , valamint a támogatott Azure-erőforrás-szolgáltatói műveleteket.

  3. Cserélje le a (z) {filter} elemet a szerepkördefiníciós lista szűréséhez alkalmazni kívánt feltételre.

    Szűrő Description
    $filter=atScopeAndBelow() A megadott hatókör és alhatókör szerepkör-definícióit sorolja fel.
    $filter=type+eq+'{type}' A megadott típusú szerepkör-definíciókat sorolja fel. A szerepkör típusa lehet CustomRole vagy BuiltInRole.

Az alábbi kérés az előfizetés hatókörében lévő egyéni szerepkör-definíciókat sorolja fel:

GET https://management.azure.com/subscriptions/{subscriptionId1}/providers/Microsoft.Authorization/roleDefinitions?api-version=2015-07-01&$filter=type+eq+'CustomRole'

Az alábbiakban egy példa látható a kimenetre:

{
    "value": [
        {
            "properties": {
                "roleName": "Billing Reader Plus",
                "type": "CustomRole",
                "description": "Read billing data and download invoices",
                "assignableScopes": [
                    "/subscriptions/{subscriptionId1}"
                ],
                "permissions": [
                    {
                        "actions": [
                            "Microsoft.Authorization/*/read",
                            "Microsoft.Billing/*/read",
                            "Microsoft.Commerce/*/read",
                            "Microsoft.Consumption/*/read",
                            "Microsoft.Management/managementGroups/read",
                            "Microsoft.CostManagement/*/read",
                            "Microsoft.Billing/invoices/download/action",
                            "Microsoft.CostManagement/exports/*"
                        ],
                        "notActions": [
                            "Microsoft.CostManagement/exports/delete"
                        ]
                    }
                ],
                "createdOn": "2020-02-21T04:49:13.7679452Z",
                "updatedOn": "2020-02-21T04:49:13.7679452Z",
                "createdBy": "{createdByObjectId1}",
                "updatedBy": "{updatedByObjectId1}"
            },
            "id": "/subscriptions/{subscriptionId1}/providers/Microsoft.Authorization/roleDefinitions/{roleDefinitionId1}",
            "type": "Microsoft.Authorization/roleDefinitions",
            "name": "{roleDefinitionId1}"
        }
    ]
}

Szerepkör-definíció listázása

Egy adott szerepkör részleteinek listázásához használja a szerepkördefiníciókat – Get vagy Role Definitions – Get By Id REST API.

  1. Kezdje a következő kéréssel:

    GET https://management.azure.com/{scope}/providers/Microsoft.Authorization/roleDefinitions/{roleDefinitionId}?api-version=2015-07-01
    

    Címtárszintű szerepkördefiníció esetén a következő kérést használhatja:

    GET https://management.azure.com/providers/Microsoft.Authorization/roleDefinitions/{roleDefinitionId}?api-version=2015-07-01
    
  2. Az URI-on belül cserélje le a (z) {scope} kifejezést arra a hatókörre, amelynek a szerepkördefinícióját listázni szeretné.

    Hatókör Típus
    providers/Microsoft.Management/managementGroups/{groupId1} Felügyeleti csoport
    subscriptions/{subscriptionId1} Előfizetés
    subscriptions/{subscriptionId1}/resourceGroups/myresourcegroup1 Erőforráscsoport
    subscriptions/{subscriptionId1}/resourceGroups/myresourcegroup1/providers/Microsoft.Web/sites/mysite1 Erőforrás
  3. Cserélje le a (z) {roleDefinitionId} elemet a szerepkördefiníció-azonosítóra.

Az alábbi kérés az Olvasó szerepkör definícióját sorolja fel:

GET https://management.azure.com/providers/Microsoft.Authorization/roleDefinitions/acdd72a7-3385-48ef-bd42-f606fba81ae7?api-version=2015-07-01

Az alábbiakban egy példa látható a kimenetre:

{
    "properties": {
        "roleName": "Reader",
        "type": "BuiltInRole",
        "description": "Lets you view everything, but not make any changes.",
        "assignableScopes": [
            "/"
        ],
        "permissions": [
            {
                "actions": [
                    "*/read"
                ],
                "notActions": []
            }
        ],
        "createdOn": "2015-02-02T21:55:09.8806423Z",
        "updatedOn": "2019-02-05T21:24:35.7424745Z",
        "createdBy": null,
        "updatedBy": null
    },
    "id": "/providers/Microsoft.Authorization/roleDefinitions/acdd72a7-3385-48ef-bd42-f606fba81ae7",
    "type": "Microsoft.Authorization/roleDefinitions",
    "name": "acdd72a7-3385-48ef-bd42-f606fba81ae7"
}

Következő lépések