ユーザーの直接メンバーシップを一覧表示する
名前空間: microsoft.graph
重要
Microsoft Graph のバージョンの /beta API は変更される可能性があります。 実稼働アプリケーションでこれらの API を使用することは、サポートされていません。 API が v1.0 で使用できるかどうかを確認するには、 バージョン セレクターを使用します。
ユーザーがダイレクト メンバーになっているグループ、ディレクトリ ロール、管理単位を取得します。 この操作は推移的ではありません。 ユーザーが推移的メンバーシップを使用してメンバーであるグループ、ディレクトリ ロール、および管理単位を取得するには、List user transitive memberOf API を使用します 。
アクセス許可
この API を呼び出すには、次のいずれかのアクセス許可が必要です。アクセス許可の選択方法などの詳細については、「アクセス許可」を参照してください。
| アクセス許可の種類 | アクセス許可 (特権の小さいものから大きいものへ) |
|---|---|
| 委任 (職場または学校のアカウント) | User.Read, GroupMember.Read.All, Directory.Read.All, Directory.ReadWrite.All |
| 委任 (個人用 Microsoft アカウント) | サポートされていません。 |
| アプリケーション | Directory.Read.All、Directory.ReadWrite.All |
アプリケーションが directoryObject 型のコレクションを返す関係をクエリするときに、特定の派生型 (デバイスなど) を読み取るアクセス許可がない場合、その型のメンバーが返されますが、情報は限られます。 この動作により、アプリケーションは、Directory.* 権限が付与されたアクセス許可のセットに依存するのではなく、必要な最小限のアクセス許可を要求できます。 詳細については、「アクセスできないメンバー オブジェクトについて、限定された情報が返される」を参照してください。
HTTP 要求
GET /me/memberOf
GET /users/{id | userPrincipalName}/memberOf
オプションのクエリ パラメーター
このメソッドは、応答をカスタマイズするための$search、$count、および$filterを含むOData クエリ パラメーターをサポートします。 また、OData キャストも有効です。たとえば、ユーザーが属する directoryRoles のみを取得することができます。 displayName プロパティで$searchを使用できます。 このリソースのアイテムを追加または更新すると、 $count と $search クエリ パラメーターを共に使用するように特別にインデックスが作成されます。 アイテムを追加または更新してから、インデックスで使用できるようになるまでに少し時間がかかる場合があります。
要求ヘッダー
| ヘッダー | 値 |
|---|---|
| Authorization | ベアラー {token}。必須。 |
| ConsistencyLevel | 最終的。 このヘッダーおよび$countは、$search、$filter、$orderby、または OData キャスト クエリ パラメーターを使用する場合に必要です。 最新の状態に更新されていない可能性があるインデックスを使用しています。 |
要求本文
このメソッドには、要求本文を指定しません。
応答
成功した場合、このメソッドは 200 OK 応答コードと、応答本文で directoryObject オブジェクトのコレクションを返します。
例
例 1: ユーザーがダイレクト メンバーになっているグループ、ディレクトリ ロール、および管理単位を取得する
要求
以下は、要求の例です。
GET https://graph.microsoft.com/beta/users/{id}/memberOf
応答
応答の例を次に示します。
注: ここに示す応答オブジェクトは、読みやすさのために短縮されている場合があります。
HTTP/1.1 200 OK
Content-type: application/json
{
"value": [
{
"@odata.type": "#microsoft.graph.group",
"displayName": "All Users",
"mailEnabled": false,
"securityEnabled": true
}
]
}
例 2: ユーザーがダイレクト メンバーになっているグループ、ディレクトリ ロール、および管理単位の数のみを取得する
要求
以下は、要求の例です。
GET https://graph.microsoft.com/beta/users/{id}/memberOf/$count
ConsistencyLevel: eventual
応答
応答の例を次に示します。
注: ここに示す応答オブジェクトは、読みやすさのために短縮されている場合があります。
HTTP/1.1 200 OK
Content-type: text/plain
17
例 3: OData キャストを使用して、グループ メンバーシップ数のみを取得する
要求
要求の例を次に示します。
GET https://graph.microsoft.com/beta/users/{id}/memberOf/microsoft.graph.group/$count
ConsistencyLevel: eventual
応答
応答の例を次に示します。
HTTP/1.1 200 OK
Content-type: text/plain
16
例 4: $search および OData キャストを使用して、表示名に「tier」の文字が含まれるグループのメンバーシップを取得する (返されたオブジェクトの数も含む)
要求
要求の例を次に示します。
GET https://graph.microsoft.com/beta/users/{id}/memberOf/microsoft.graph.group?$count=true&$orderby=displayName&$search="displayName:tier"&$select=displayName,id
ConsistencyLevel: eventual
応答
応答の例を次に示します。
注: ここに示す応答オブジェクトは、読みやすさのために短縮されている場合があります。
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context":"https://graph.microsoft.com/beta/$metadata#groups(displayName,id)",
"@odata.count":7,
"value":[
{
"displayName":"Contoso-tier Query Notification",
"id":"11111111-2222-3333-4444-555555555555"
}
]
}
例 5: $filter および OData キャストを使用して、「a」で始まる表示名のグループを取得する (返されたオブジェクトの数も含む)
要求
要求の例を次に示します。
GET https://graph.microsoft.com/beta/users/{id}/transitiveMemberOf/microsoft.graph.group?$count=true&$orderby=displayName&$filter=startswith(displayName, 'a')
ConsistencyLevel: eventual
応答
応答の例を次に示します。
注: ここに示す応答オブジェクトは、読みやすさのために短縮されている場合があります。
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context":"https://graph.microsoft.com/beta/$metadata#groups",
"@odata.count":76,
"value":[
{
"displayName":"AAD Contoso Users",
"mail":"AADContoso_Users@contoso.com",
"mailEnabled":true,
"mailNickname":"AADContoso_Users",
"securityEnabled":true
}
]
}
フィードバック
フィードバックの送信と表示