governanceRoleAssignmentRequest を作成する

名前空間: microsoft.graph

重要

Microsoft Graph のバージョンの /beta API は変更される可能性があります。 実稼働アプリケーションでこれらの API を使用することは、サポートされていません。 API が v1.0 で使用できるかどうかを確認するには、 バージョン セレクターを使用します。

注意事項

Azure リソース用のこのバージョンの Privileged Identity Management (PIM) API は、近日非推奨になります。 Azure リソース ロールに新しい Azure REST PIM API を使用してください

ロールの割り当てに必要な操作を表すロール割り当て要求を作成します。 次の表に、操作の一覧を示します。

操作 種類
ロールの割り当てを割り当てる AdminAdd
適格なロールの割り当てをアクティブ化する Useradd
アクティブ化されたロールの割り当てを非アクティブ化する UserRemove
ロールの割り当てを削除する AdminRemove
ロールの割り当てを更新する AdminUpdate
ロールの割り当てを延長する要求 UserExtend
ロールの割り当てを拡張する AdminExtend
有効期限が切れたロールの割り当ての更新を要求する UserRenew
有効期限が切れたロールの割り当てを更新する AdminRenew

アクセス許可

この API を呼び出すには、次のいずれかのアクセス許可が必要です。アクセス許可の選択方法などの詳細については、「アクセス許可」を参照してください。

Azure リソース

アクセス許可の種類 アクセス許可
委任 (職場または学校のアカウント) PrivilegedAccess.ReadWrite.AzureResources
委任 (個人用 Microsoft アカウント) サポートされていません。
アプリケーション サポートされていません。

Azure AD

アクセス許可の種類 アクセス許可
委任 (職場または学校のアカウント) PrivilegedAccess.ReadWrite.AzureAD
委任 (個人用 Microsoft アカウント) サポートされていません。
アプリケーション サポートされていません。

グループ

アクセス許可の種類 アクセス許可
委任 (職場または学校のアカウント) PrivilegedAccess.ReadWrite.AzureADGroup
委任 (個人用 Microsoft アカウント) サポートされていません。
アプリケーション サポートされていません。

HTTP 要求

POST /privilegedAccess/azureResources/roleAssignmentRequests

要求ヘッダー

名前 説明
Authorization Bearer {code}
Content-type application/json

要求本文

要求本文で、 governanceRoleAssignmentRequest オブジェクトの JSON 表現を指定します。

プロパティ 種類 説明
resourceId String ロールの割り当て要求に関連付けられている Azure リソースの一意の識別子。 Azure リソースには、サブスクリプション、リソース グループ、仮想マシン、SQL データベースを含めることができます。 必須です。
roleDefinitionId String ロール割り当て要求が関連付けられている Azure ロール定義の識別子。 必須です。
subjectId String ロール割り当て要求が関連付けられているプリンシパルまたはサブジェクトの一意の識別子。 プリンシパルには、ユーザー、グループ、またはサービス プリンシパルを指定できます。 必須です。
assignmentState String 割り当ての状態。 この値は、次の値を指定Eligibleできます。Active 必須。
type String 要求の種類。 この値はAdminAdd、、 , , UserAdd, AdminRemove``AdminUpdate, UserExtend``UserRemove, UserRenew, および AdminExtend``AdminRenew. 必須です。
理由 String 監査とレビューの目的で、ロールの割り当て要求に理由を指定する必要があります。
schedule governanceSchedule ロールの割り当て要求のスケジュール。 要求の種類が UserAdd、、AdminUpdate``AdminAdd``AdminExtendの場合は必須です。

応答

成功した場合、このメソッドは 201 Created 応答コードと、応答本文に governanceRoleAssignmentRequest オブジェクトを返します。

エラー コード

この API は、標準の HTTP エラー コードを返します。 さらに、次の表に示すエラー コードも返されます。

エラー コード エラー メッセージ 詳細
400 BadRequest RoleNotFound roleDefinitionId要求本文で指定された値が見つかりません。
400 BadRequest ResourceIsLocked 要求本文で提供されるリソースは、ロールの割り当て要求の Locked 状態であり、作成できません。
400 BadRequest SubjectNotFound subjectId要求本文で指定された値が見つかりません。
400 BadRequest PendingRoleAssignmentRequest システムには保留中の governanceRoleAssignmentRequest が既に存在します。
400 BadRequest RoleAssignmentExists 作成を要求された governanceRoleAssignment は、システムに既に存在します。
400 BadRequest RoleAssignmentDoesNotExist 更新/拡張を要求された governanceRoleAssignment は、システムに存在しません。
400 BadRequest RoleAssignmentRequestPolicyValidationFailed governanceRoleAssignmentRequest は内部ポリシーを満たしていないため、作成できません。

次の例では、この API を使用する方法を示します。

例 1: 管理者がロールにユーザーを割り当てる

この例では、管理者がユーザー nawu@contoso.com を課金閲覧者ロールに割り当てます。

メモ: この例では、アクセス許可に加えて、要求元がリソースに対して少なくとも 1 つの Active 管理者ロールの割り当て (owner または user access administrator) を持っている必要があります。

プロパティ 必須
resourceId String はい <resourceId>
roleDefinitionId String はい <roleDefinitionId>
subjectId String はい <subjectId>
assignmentState String はい 対象/アクティブ
type String はい AdminAdd
理由 String ロール 設定に依存する
schedule governanceSchedule はい

要求

POST https://graph.microsoft.com/beta/privilegedAccess/azureResources/roleAssignmentRequests
Content-type: application/json

{
  "roleDefinitionId": "ea48ad5e-e3b0-4d10-af54-39a45bbfe68d",
  "resourceId": "e5e7d29d-5465-45ac-885f-4716a5ee74b5",
  "subjectId": "918e54be-12c4-4f4c-a6d3-2ee0e3661c51",
  "assignmentState": "Eligible",
  "type": "AdminAdd",
  "reason": "Assign an eligible role",
  "schedule": {
    "startDateTime": "2018-05-12T23:37:43.356Z",
    "endDateTime": "2018-11-08T23:37:43.356Z",
    "type": "Once"
  }
}

応答

HTTP/1.1 201 Created
Content-type: application/json

{
  "@odata.context": "https://graph.microsoft.com/beta/$metadata#governanceRoleAssignmentRequests/$entity",
  "id": "1232e4ea-741a-4be5-8044-5edabdd61672",
  "resourceId": "e5e7d29d-5465-45ac-885f-4716a5ee74b5",
  "roleDefinitionId": "ea48ad5e-e3b0-4d10-af54-39a45bbfe68d",
  "subjectId": "918e54be-12c4-4f4c-a6d3-2ee0e3661c51",
  "linkedEligibleRoleAssignmentId": "",
  "type": "AdminAdd",
  "assignmentState": "Eligible",
  "requestedDateTime": "0001-01-01T00:00:00Z",
  "reason": "Evaluate Only",
  "status": {
    "status": "InProgress",
    "subStatus": "Granted",
    "statusDetails": [
      {
        "key": "AdminRequestRule",
        "value": "Grant"
      },
      {
        "key": "ExpirationRule",
        "value": "Grant"
      },
      {
        "key": "MfaRule",
        "value": "Grant"
      }
    ]
  },
  "schedule": {
    "type": "Once",
    "startDateTime": "2018-05-12T23:37:43.356Z",
    "endDateTime": "2018-11-08T23:37:43.356Z",
    "duration": "PT0S"
  }
}

例 2: ユーザーが適格なロールをアクティブ化する

この例では、ユーザー nawu@contoso.com が対象の課金閲覧者ロールをアクティブ化します。

プロパティ 必須
resourceId String はい <resourceId>
roleDefinitionId String はい <roleDefinitionId>
subjectId String はい <subjectId>
assignmentState String はい アクティブ
type String はい Useradd
理由 String ロール 設定に依存する
schedule governanceSchedule はい

要求

POST https://graph.microsoft.com/beta/privilegedAccess/azureResources/roleAssignmentRequests
Content-type: application/json

{
  "roleDefinitionId": "8b4d1d51-08e9-4254-b0a6-b16177aae376",
  "resourceId": "e5e7d29d-5465-45ac-885f-4716a5ee74b5",
  "subjectId": "918e54be-12c4-4f4c-a6d3-2ee0e3661c51",
  "assignmentState": "Active",
  "type": "UserAdd",
  "reason": "Activate the owner role",
  "schedule": {
    "type": "Once",
    "startDateTime": "2018-05-12T23:28:43.537Z",
    "duration": "PT9H"
  },
  "linkedEligibleRoleAssignmentId": "e327f4be-42a0-47a2-8579-0a39b025b394"
}

応答

HTTP/1.1 201 Created
Content-type: application/json

{
  "@odata.context": "https://graph.microsoft.com/beta/$metadata#governanceRoleAssignmentRequests/$entity",
  "id": "3ad49a7c-918e-4d86-9f84-fab28f8658c0",
  "resourceId": "e5e7d29d-5465-45ac-885f-4716a5ee74b5",
  "roleDefinitionId": "8b4d1d51-08e9-4254-b0a6-b16177aae376",
  "subjectId": "918e54be-12c4-4f4c-a6d3-2ee0e3661c51",
  "linkedEligibleRoleAssignmentId": "e327f4be-42a0-47a2-8579-0a39b025b394",
  "type": "UserAdd",
  "assignmentState": "Active",
  "requestedDateTime": "0001-01-01T00:00:00Z",
  "reason": "Activate the owner role",
  "status": {
    "status": "InProgress",
    "subStatus": "Granted",
    "statusDetails": [
      {
        "key": "EligibilityRule",
        "value": "Grant"
      },
      {
        "key": "ExpirationRule",
        "value": "Grant"
      },
      {
        "key": "MfaRule",
        "value": "Grant"
      },
      {
        "key": "JustificationRule",
        "value": "Grant"
      },
      {
        "key": "ActivationDayRule",
        "value": "Grant"
      },
      {
        "key": "ApprovalRule",
        "value": "Grant"
      }
    ]
  },
  "schedule": {
    "type": "Once",
    "startDateTime": "2018-05-12T23:28:43.537Z",
    "endDateTime": "0001-01-01T00:00:00Z",
    "duration": "PT9H"
  }
}

例 3: ユーザーが割り当てられたロールを非アクティブ化する

この例では、ユーザー nawu@contoso.com アクティブな課金閲覧者ロールを非アクティブにします。

プロパティ 必須
resourceId String はい <resourceId>
roleDefinitionId String はい <roleDefinitionId>
subjectId String はい <subjectId>
assignmentState String はい アクティブ
type String はい UserRemove
理由 String いいえ
schedule governanceSchedule いいえ

要求

POST https://graph.microsoft.com/beta/privilegedAccess/azureResources/roleAssignmentRequests
Content-type: application/json

{
  "roleDefinitionId": "bc75b4e6-7403-4243-bf2f-d1f6990be122",
  "resourceId": "fb016e3a-c3ed-4d9d-96b6-a54cd4f0b735",
  "subjectId": "918e54be-12c4-4f4c-a6d3-2ee0e3661c51",
  "assignmentState": "Active",
  "type": "UserRemove",
  "reason": "Deactivate the role",
  "linkedEligibleRoleAssignmentId": "cb8a533e-02d5-42ad-8499-916b1e4822ec"
}

応答

HTTP/1.1 201 Created
Content-type: application/json

{
  "@odata.context": "https://graph.microsoft.com/beta/$metadata#governanceRoleAssignmentRequests/$entity",
  "id": "abfcdb57-8e5d-42a0-ae67-7598b96fddb1",
  "resourceId": "fb016e3a-c3ed-4d9d-96b6-a54cd4f0b735",
  "roleDefinitionId": "bc75b4e6-7403-4243-bf2f-d1f6990be122",
  "subjectId": "918e54be-12c4-4f4c-a6d3-2ee0e3661c51",
  "linkedEligibleRoleAssignmentId": "cb8a533e-02d5-42ad-8499-916b1e4822ec",
  "type": "UserRemove",
  "assignmentState": "Active",
  "requestedDateTime": "0001-01-01T00:00:00Z",
  "reason": "Evaluate only",
  "schedule": null,
  "status": {
    "status": "Closed",
    "subStatus": "Revoked",
    "statusDetails": []
  }
}

例 4: 管理者がロールからユーザーを削除する

この例では、管理者が課金閲覧者ロールからユーザー nawu@contoso.com を削除します。

メモ: この例では、アクセス許可に加えて、要求元がリソースに対して少なくとも 1 つの Active 管理者ロールの割り当て (owner または user access administrator) を持っている必要があります。

プロパティ 必須
resourceId String はい <resourceId>
roleDefinitionId String はい <roleDefinitionId>
subjectId String はい <subjectId>
assignmentState String はい 対象/アクティブ
type String はい AdminRemove
理由 String いいえ
schedule governanceSchedule いいえ

要求

POST https://graph.microsoft.com/beta/privilegedAccess/azureResources/roleAssignmentRequests
Content-type: application/json

{
  "roleDefinitionId": "65bb4622-61f5-4f25-9d75-d0e20cf92019",
  "resourceId": "e5e7d29d-5465-45ac-885f-4716a5ee74b5",
  "subjectId": "74765671-9ca4-40d7-9e36-2f4a570608a6",
  "assignmentState": "Eligible",
  "type": "AdminRemove"
}

応答

HTTP/1.1 201 Created
Content-type: application/json

{
  "@odata.context": "https://graph.microsoft.com/beta/$metadata#governanceRoleAssignmentRequests/$entity",
  "id": "c934fcb9-cf53-42ac-a8b4-6246f6726299",
  "resourceId": "e5e7d29d-5465-45ac-885f-4716a5ee74b5",
  "roleDefinitionId": "65bb4622-61f5-4f25-9d75-d0e20cf92019",
  "subjectId": "74765671-9ca4-40d7-9e36-2f4a570608a6",
  "linkedEligibleRoleAssignmentId": "",
  "type": "AdminRemove",
  "assignmentState": "Eligible",
  "requestedDateTime": "0001-01-01T00:00:00Z",
  "reason": null,
  "status": {
    "status": "Closed",
    "subStatus": "Revoked",
    "statusDetails": []
  },
  "schedule": null
}

例 5: 管理者がロールの割り当てを更新する

この例では、管理者は、ユーザー nawu@contoso.com のロールの割り当てを所有者に更新します。

メモ: この例では、アクセス許可に加えて、要求元がリソースに対して少なくとも 1 つの Active 管理者ロールの割り当て (owner または user access administrator) を持っている必要があります。

プロパティ 必須
resourceId String はい <resourceId>
roleDefinitionId String はい <roleDefinitionId>
subjectId String はい <subjectId>
assignmentState String はい 対象/アクティブ
type String はい AdminUpdate
理由 String roleSettings に依存する
schedule governanceSchedule はい

要求

POST https://graph.microsoft.com/beta/privilegedAccess/azureResources/roleAssignmentRequests
Content-type: application/json

{
  "roleDefinitionId": "70521f3e-3b95-4e51-b4d2-a2f485b02103",
  "resourceId": "e5e7d29d-5465-45ac-885f-4716a5ee74b5",
  "subjectId": "1566d11d-d2b6-444a-a8de-28698682c445",
  "assignmentState": "Eligible",
  "type": "AdminUpdate",
  "schedule": {
    "type": "Once",
    "startDateTime": "2018-03-08T05:42:45.317Z",
    "endDateTime": "2018-06-05T05:42:31.000Z"
  }
}

応答

HTTP/1.1 201 Created
Content-type: application/json

{
  "@odata.context": "https://graph.microsoft.com/beta/$metadata#governanceRoleAssignmentRequests/$entity",
  "id": "4f6d4802-b3ac-4f5a-86d7-a6a4edd7d383",
  "resourceId": "e5e7d29d-5465-45ac-885f-4716a5ee74b5",
  "roleDefinitionId": "70521f3e-3b95-4e51-b4d2-a2f485b02103",
  "subjectId": "1566d11d-d2b6-444a-a8de-28698682c445",
  "linkedEligibleRoleAssignmentId": "",
  "type": "AdminUpdate",
  "assignmentState": "Eligible",
  "requestedDateTime": "0001-01-01T00:00:00Z",
  "reason": null,
  "status": {
    "status": "InProgress",
    "subStatus": "Granted",
    "statusDetails": [
      {
        "key": "AdminRequestRule",
        "value": "Grant"
      },
      {
        "key": "ExpirationRule",
        "value": "Grant"
      },
      {
        "key": "MfaRule",
        "value": "Grant"
      }
    ]
  },
  "schedule": {
    "type": "Once",
    "startDateTime": "2018-03-08T05:42:45.317Z",
    "endDateTime": "2018-06-05T05:42:31Z",
    "duration": "PT0S"
  }
}

例 6: 管理者が期限切れのロールの割り当てを拡張する

この例では、ユーザー ANUJCUSER の期限切れのロールの割り当てをサービス共同作成者API Management拡張します。

メモ: この例では、アクセス許可に加えて、要求元がリソースに対して少なくとも 1 つの Active 管理者ロールの割り当て (owner または user access administrator) を持っている必要があります。

プロパティ 必須
resourceId String はい <resourceId>
roleDefinitionId String はい <roleDefinitionId>
subjectId String はい <subjectId>
assignmentState String はい 対象/アクティブ
type String はい AdminExtend
理由 String roleSettings に依存する
schedule governanceSchedule はい

要求

POST https://graph.microsoft.com/beta/privilegedAccess/azureResources/roleAssignmentRequests
Content-type: application/json

{
  "roleDefinitionId": "0e88fd18-50f5-4ee1-9104-01c3ed910065",
  "resourceId": "e5e7d29d-5465-45ac-885f-4716a5ee74b5",
  "subjectId": "74765671-9ca4-40d7-9e36-2f4a570608a6",
  "assignmentState": "Eligible",
  "type": "AdminExtend",
  "reason": "extend role assignment",
  "schedule": {
    "type": "Once",
    "startDateTime": "2018-05-12T23:53:55.327Z",
    "endDateTime": "2018-08-10T23:53:55.327Z"
  }
}

応答

HTTP/1.1 201 Created
Content-type: application/json

{
  "@odata.context": "https://graph.microsoft.com/beta/$metadata#governanceRoleAssignmentRequests/$entity",
  "id": "486f0c05-47c8-4498-9c06-086a78c83004",
  "resourceId": "e5e7d29d-5465-45ac-885f-4716a5ee74b5",
  "roleDefinitionId": "0e88fd18-50f5-4ee1-9104-01c3ed910065",
  "subjectId": "74765671-9ca4-40d7-9e36-2f4a570608a6",
  "linkedEligibleRoleAssignmentId": "",
  "type": "AdminExtend",
  "assignmentState": "Eligible",
  "requestedDateTime": "0001-01-01T00:00:00Z",
  "reason": "extend role assignment",
  "status": {
    "status": "InProgress",
    "subStatus": "Granted",
    "statusDetails": [
      {
        "key": "AdminRequestRule",
        "value": "Grant"
      },
      {
        "key": "ExpirationRule",
        "value": "Grant"
      },
      {
        "key": "MfaRule",
        "value": "Grant"
      }
    ]
  },
  "schedule": {
    "type": "Once",
    "startDateTime": "2018-05-12T23:53:55.327Z",
    "endDateTime": "2018-08-10T23:53:55.327Z",
    "duration": "PT0S"
  }
}