サービス プリンシパルに対して appRoleAssignment を付与する

名前空間: microsoft.graph

リソース サービス プリンシパルのアプリの役割を、ユーザー、グループ、またはクライアント サービス プリンシパルに割り当てます。

サービス プリンシパルに割り当てられているアプリの役割は、アプリケーションのアクセス許可 とも呼ばれます。 アプリケーションのアクセス許可は、アプリの役割の割り当てを使用するか、または 同意エクスペリエンス を通じて直接付与できます。

アプリの役割の割り当てを付与するには、次の 3 つの識別子が必要です:

  • principalId: アプリの役割を割り当てる usergroup、またはクライアント servicePrincipalid
  • resourceId: アプリの役割が定義されているリソース servicePrincipalid
  • appRoleId: ユーザー、グループ、またはサービス プリンシパルに割り当てる appRole (リソース サービス プリンシパルで定義されている) の id

アクセス許可

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

アクセス許可の種類 アクセス許可 (特権の小さいものから大きいものへ)
委任 (職場または学校のアカウント) AppRoleAssignment.ReadWrite.All と Application.Read.All、AppRoleAssignment.ReadWrite.All と Directory.Read.All、Directory.ReadWrite.All
委任 (個人用 Microsoft アカウント) サポートされていません。
アプリケーション AppRoleAssignment.ReadWrite.All と Application.Read.All、AppRoleAssignment.ReadWrite.All と Directory.Read.All、Directory.ReadWrite.All

HTTP 要求

POST /servicePrincipals/{id}/appRoleAssignedTo

要求ヘッダー

名前 説明
Authorization ベアラー {token}。必須。
Content-type application/json. Required.

要求本文

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

応答

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

要求

以下は、要求の例です。

POST https://graph.microsoft.com/v1.0/servicePrincipals/9028d19c-26a9-4809-8e3f-20ff73e2d75e/appRoleAssignedTo
Content-Type: application/json

{
  "principalId": "33ad69f9-da99-4bed-acd0-3f24235cb296",
  "resourceId": "9028d19c-26a9-4809-8e3f-20ff73e2d75e",
  "appRoleId": "ef7437e6-4f94-4a0a-a110-a439eb2aa8f7"
}

この例では、{id}{resourceId-value} はいずれもリソース サービス プリンシパルの id で、{principalId} は割り当てられたユーザー、グループ、またはクライアント サービス プリンシパルの id です。

応答

以下は、応答の例です。

注: ここに示す応答オブジェクトは、読みやすさのために短縮されている場合があります。

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

{
  "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#servicePrincipals('9028d19c-26a9-4809-8e3f-20ff73e2d75e')/appRoleAssignedTo/$entity",
  "id": "-WmtM5na7Uus0D8kI1yylpU9Mdo0Pb9OoBJvd3T5eKc",
  "deletedDateTime": null,
  "appRoleId": "ef7437e6-4f94-4a0a-a110-a439eb2aa8f7",
  "createdDateTime": "2021-02-15T16:14:59.8643039Z",
  "principalDisplayName": "Parents of Contoso",
  "principalId": "33ad69f9-da99-4bed-acd0-3f24235cb296",
  "principalType": "Group",
  "resourceDisplayName": "Fabrikam App",
  "resourceId": "9028d19c-26a9-4809-8e3f-20ff73e2d75e"
}