ロール管理ポリシーを使用して、各リソース内の各ロールのルールを管理する

ロール管理ポリシーは、ロールの適格性要求またはロールの割り当て要求のルールを管理するのに役立ちます。 たとえば、割り当てをアクティブにできる最大期間を設定したり、永続的な割り当てを許可したりすることもできます。 各割り当ての通知設定を更新できます。 ロールのアクティブ化ごとに承認者を設定することもできます。

リソースのロール管理ポリシーを一覧表示する

ロール管理ポリシーを一覧表示するには、 ロール管理ポリシー - スコープ 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 内で、 {scope} を ロール管理ポリシーを一覧表示するスコープに置き換えます。

    Scope Type
    providers/Microsoft.Management/managementGroups/{mg-name} 管理グループ
    subscriptions/{subscriptionId} サブスクリプション
    subscriptions/{subscriptionId}/resourceGroups/myresourcegroup1 Resource group
    subscriptions/{subscriptionId}/resourceGroups/myresourcegroup1/providers/Microsoft.Web/sites/mysite1 リソース
  3. {filter} には、ロールの割り当て一覧をフィルター処理するために適用する条件を指定します。

    Assert 説明
    $filter=roleDefinitionId%20eq%20'{scope}/providers/Microsoft.Authorization/roleDefinitions/{roleDefinitionId}' リソース スコープ内の指定したロール定義のロール管理ポリシーを一覧表示します。

ロール管理ポリシーを更新します。

  1. 更新するルールを選択します。 ルールの種類は次のとおりです。

    ルールの種類 Description
    RoleManagementPolicyEnablementRule 割り当てまたはチケット情報で MFA、理由を有効にする
    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
            }
          }
        ]
      }
    }