group: evaluateDynamicMembership

名前空間: microsoft.graph

重要

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

ユーザーまたはデバイスが動的グループのメンバーであるかどうかを評価します。 メンバーシップ規則は、評価で使用されたその他の詳細と共に返されます。 この操作は、次の方法で完了できます。

  • ユーザーまたはデバイスが指定した動的グループのメンバーであるかどうかを評価します。
  • ユーザーまたはデバイスの ID とメンバーシップ規則に基づいて、ユーザーまたはデバイスが動的グループのメンバーであるかどうかを評価します。

アクセス許可

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

メンバー ID とグループ ID を使用して動的メンバーシップを評価する

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

メンバー ID とメンバーシップルールを使用して動的メンバーシップを評価する

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

HTTP 要求

POST /groups/{id}/evaluateDynamicMembership
POST /groups/evaluateDynamicMembership

要求ヘッダー

名前 説明
Authorization ベアラー {トークン}
Content-type application/json

要求本文

要求本文で、必要なプロパティを指定します。

次の表に、グループ メンバーシップを評価するときに必要なプロパティを示します。

パラメーター 説明
memberId String コレクション memberId は、評価するユーザーまたはデバイスのオブジェクト ID です。
membershipRule String collection メンバーシップの評価に使用されるルール。 このプロパティが指定されていない場合は、既存のグループのルールが評価されます。 このプロパティが指定されている場合、ユーザーまたはデバイスは、同じ規則を持つグループ内で可能なメンバーシップについて評価されます。 動的メンバーシップ ルールの詳細については、Azure AD 内のグループに対する動的メンバーシップ ルールに関する記事を参照してください。

応答

成功した場合、このメソッドは 200 OK 応答コードと evaluateDynamicMembershipResult オブジェクトを返します。

例 1: ユーザーまたはデバイスが既存のグループのメンバーであるかどうかを評価する

要求

要求の例を次に示します。

POST https://graph.microsoft.com/beta/groups/{id}/evaluateDynamicMembership
Content-type: application/json

{
  "memberId": "319b41e8-d9e4-42f8-bdc9-741113f48b33"
}

応答

応答の例を次に示します。

HTTP/1.1 200 OK
Content-type: application/json

{
  "membershipRule": "(user.displayName -startsWith \"EndTestUser\")",
  "membershipRuleEvaluationResult": true,
  "membershipRuleEvaluationDetails": {
    "expressionResult": true,
    "expression": "user.displayName -startsWith \"EndTestUser\"",
    "propertyToEvaluate": {
      "propertyName": "displayName",
      "propertyValue": "EndTestUser001"
    }
  }
}

例 2: メンバーシップルールに基づいて、ユーザーまたはデバイスがグループのメンバーであるかどうかを評価する

要求

要求の例を次に示します。

POST https://graph.microsoft.com/beta/groups/evaluateDynamicMembership
Content-type: application/json

{
  "memberId": "319b41e8-d9e4-42f8-bdc9-741113f48b33",
  "membershipRule": "(user.displayName -startsWith \"EndTestUser\")"
}

応答

応答の例を次に示します。

HTTP/1.1 200 OK
Content-type: application/json

{
  "membershipRule": "(user.displayName -startsWith \"EndTestUser\")",
  "membershipRuleEvaluationResult": true,
  "membershipRuleEvaluationDetails": {
    "expressionResult": true,
    "expression": "user.displayName -startsWith \"EndTestUser\"",
    "propertyToEvaluate": {
      "propertyName": "displayName",
      "propertyValue": "EndTestUser001"
    }
  }
}