Использование политик управления ролями для управления правилами для каждой роли в каждом ресурсе

Политики управления ролями помогают управлять правилами для любого запроса на соответствие роли или запроса на назначение ролей. Например, можно задать максимальную продолжительность, в течение которой может быть активно назначение, или даже разрешить постоянное назначение. Вы можете обновить параметры уведомлений для каждого назначения. Вы также можете задать утверждающих для каждой активации ролей.

Перечисление политик управления ролями для ресурса

Чтобы получить список политик управления ролями, можно использовать rest API "Политики управления ролями — список для области ". Чтобы уточнить результаты, укажите область и дополнительный фильтр. Чтобы вызвать API, нужен доступ к операции Microsoft.Authorization/roleAssignments/read в указанной области. Всем встроенным ролям предоставляется доступ к этой операции.

Важно!

Вам не нужно создавать политики управления ролями, так как каждая роль в каждом ресурсе имеет политику по умолчанию

  1. Можете начать со следующего запроса:

    GET https://management.azure.com/{scope}/providers/Microsoft.Authorization/roleManagementPolicies?api-version=2020-10-01&$filter={filter}
    
  2. В URI замените {область} область, для которого требуется перечислить политики управления ролями.

    Область Тип
    providers/Microsoft.Management/managementGroups/{mg-name} Группа управления
    subscriptions/{subscriptionId} Подписка
    subscriptions/{subscriptionId}/resourceGroups/myresourcegroup1 Группа ресурсов
    subscriptions/{subscriptionId}/resourceGroups/myresourcegroup1/providers/Microsoft.Web/sites/mysite1 Ресурс
  3. Замените {filter} условием, по которому требуется отфильтровать список назначений ролей.

    Filter Описание
    $filter=roleDefinitionId%20eq%20'{scope}/providers/Microsoft.Authorization/roleDefinitions/{roleDefinitionId}' Список политик управления ролями для указанного определения роли в область ресурса.

Обновляет политику управления ролями

  1. Выберите правила, которые требуется обновить. Это типы правил .

    Тип правила Описание
    RoleManagementPolicyEnablementRule Включение многофакторной проверки подлинности, обоснования назначений или сведений о билетах
    RoleManagementPolicyExpirationRule Указание максимальной продолжительности назначения или активации роли
    RoleManagementPolicyNotificationRule Настройка параметров уведомлений по электронной почте для назначений, активаций и утверждений
    RoleManagementPolicyApprovalRule Настройка параметров утверждения для активации роли
    RoleManagementPolicyAuthenticationContextRule Настройка правила ACRS для политики условного доступа
  2. Используйте следующий запрос:

    PATCH https://management.azure.com/{scope}/providers/Microsoft.Authorization/roleManagementPolicies/{roleManagementPolicyId}?api-version=2020-10-01
    
    {
      "properties": {
        "rules": [
          {
            "isExpirationRequired": false,
            "maximumDuration": "P180D",
            "id": "Expiration_Admin_Eligibility",
            "ruleType": "RoleManagementPolicyExpirationRule",
            "target": {
              "caller": "Admin",
              "operations": [
                "All"
              ],
              "level": "Eligibility",
              "targetObjects": null,
              "inheritableSettings": null,
              "enforcedSettings": null
            }
          },
          {
            "notificationType": "Email",
            "recipientType": "Admin",
            "isDefaultRecipientsEnabled": false,
            "notificationLevel": "Critical",
            "notificationRecipients": [
              "admin_admin_eligible@test.com"
            ],
            "id": "Notification_Admin_Admin_Eligibility",
            "ruleType": "RoleManagementPolicyNotificationRule",
            "target": {
              "caller": "Admin",
              "operations": [
                "All"
              ],
              "level": "Eligibility",
              "targetObjects": null,
              "inheritableSettings": null,
              "enforcedSettings": null
            }
          },
          {
            "enabledRules": [
              "Justification",
              "MultiFactorAuthentication",
              "Ticketing"
            ],
            "id": "Enablement_EndUser_Assignment",
            "ruleType": "RoleManagementPolicyEnablementRule",
            "target": {
              "caller": "EndUser",
              "operations": [
                "All"
              ],
              "level": "Assignment",
              "targetObjects": null,
              "inheritableSettings": null,
              "enforcedSettings": null
            }
          },
          {
            "setting": {
              "isApprovalRequired": true,
              "isApprovalRequiredForExtension": false,
              "isRequestorJustificationRequired": true,
              "approvalMode": "SingleStage",
              "approvalStages": [
                {
                  "approvalStageTimeOutInDays": 1,
                  "isApproverJustificationRequired": true,
                  "escalationTimeInMinutes": 0,
                  "primaryApprovers": [
                    {
                      "id": "2385b0f3-5fa9-43cf-8ca4-b01dc97298cd",
                      "description": "amansw_new_group",
                      "isBackup": false,
                      "userType": "Group"
                    }
                  ],
                  "isEscalationEnabled": false,
                  "escalationApprovers": null
                }
              ]
            },
            "id": "Approval_EndUser_Assignment",
            "ruleType": "RoleManagementPolicyApprovalRule",
            "target": {
              "caller": "EndUser",
              "operations": [
                "All"
              ],
              "level": "Assignment",
              "targetObjects": null,
              "inheritableSettings": null,
              "enforcedSettings": null
            }
          }
        ]
      }
    }