グループの推移性の memberOf を一覧表示する
[アーティクル]
05/05/2022
3 人の共同作成者
この記事の内容
名前空間: microsoft.graph
グループがメンバーであるグループを取得します。 この操作は推移的であり、このグループが入れ子になったメンバーであるすべてのグループも含まれます。 ユーザーのMicrosoft 365 グループを取得する場合とは異なり、Microsoft 365 グループだけでなく、すべての種類のグループが返されます。
アクセス許可
この API を呼び出すには、次のいずれかのアクセス許可が必要です。アクセス許可の選択方法などの詳細については、「アクセス許可 」を参照してください。
アクセス許可の種類
アクセス許可 (特権の小さいものから大きいものへ)
委任 (職場または学校のアカウント)
Directory.Read.All、Directory.ReadWrite.All
委任 (個人用 Microsoft アカウント)
サポートされていません。
アプリケーション
Directory.Read.All、Directory.ReadWrite.All
アプリケーションが directoryObject 型のコレクションを返す関係をクエリするときに、特定の派生型 (デバイスなど) を読み取るアクセス許可がない場合、その型のメンバーが返されますが、情報は限られます。 この動作により、アプリケーションは、Directory. * 権限が付与されたアクセス許可のセットに依存するのではなく、必要な最小限のアクセス許可を要求できます。 詳細については、「アクセスできないメンバー オブジェクトについて、限定された情報が返される 」を参照してください。
HTTP 要求
GET /groups/{id}/transitiveMemberOf
オプションのクエリ パラメーター
このメソッドは、応答をカスタマイズするための$search、$count、および$filterを含むOData クエリ パラメーター をサポートします。 OData キャストも有効になっています。たとえば、キャストしてグループの推移的なグループ メンバーだけを取得できます。 displayName プロパティと description プロパティで $search を使用できます。 このリソースのアイテムを追加または更新すると、 $count と $search クエリ パラメーターを共に使用するように特別にインデックスが作成されます。 アイテムを追加または更新してから、インデックスで使用できるようになるまでに少し時間がかかる場合があります。
名前
説明
Authorization
ベアラー {token}。必須。
ConsistencyLevel
最終的。 このヘッダーおよび$countは、$search、$filter、$orderby、または OData キャスト クエリ パラメーターを使用する場合に必要です。 最新の状態に更新されていない可能性があるインデックスを使用しています。
要求本文
このメソッドには、要求本文を指定しません。
応答
成功した場合、このメソッドは 200 OK 応答コードと、応答本文で directoryObject オブジェクトのコレクションを返します。
例
例 1: グループが推移的なメンバーであるグループと管理単位を取得する
要求
要求の例を次に示します。
GET https://graph.microsoft.com/v1.0/groups/{id}/transitiveMemberOf
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var transitiveMemberOf = await graphClient.Groups["{group-id}"].TransitiveMemberOf
.Request()
.GetAsync();
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var transitiveMemberOf = await graphClient.Groups["{group-id}"].TransitiveMemberOf
.Request()
.GetAsync();
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
const options = {
authProvider,
};
const client = Client.init(options);
let transitiveMemberOf = await client.api('/groups/{id}/transitiveMemberOf')
.get();
const options = {
authProvider,
};
const client = Client.init(options);
let transitiveMemberOf = await client.api('/groups/{id}/transitiveMemberOf')
.get();
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
MSHTTPClient *httpClient = [MSClientFactory createHTTPClientWithAuthenticationProvider:authenticationProvider];
NSString *MSGraphBaseURL = @"https://graph.microsoft.com/v1.0/";
NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[MSGraphBaseURL stringByAppendingString:@"/groups/{id}/transitiveMemberOf"]]];
[urlRequest setHTTPMethod:@"GET"];
MSURLSessionDataTask *meDataTask = [httpClient dataTaskWithRequest:urlRequest
completionHandler: ^(NSData *data, NSURLResponse *response, NSError *nserror) {
NSError *jsonError = nil;
MSCollection *collection = [[MSCollection alloc] initWithData:data error:&jsonError];
MSGraphDirectoryObject *directoryObject = [[MSGraphDirectoryObject alloc] initWithDictionary:[[collection value] objectAtIndex: 0] error:&nserror];
}];
[meDataTask execute];
MSHTTPClient *httpClient = [MSClientFactory createHTTPClientWithAuthenticationProvider:authenticationProvider];
NSString *MSGraphBaseURL = @"https://graph.microsoft.com/v1.0/";
NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[MSGraphBaseURL stringByAppendingString:@"/groups/{id}/transitiveMemberOf"]]];
[urlRequest setHTTPMethod:@"GET"];
MSURLSessionDataTask *meDataTask = [httpClient dataTaskWithRequest:urlRequest
completionHandler: ^(NSData *data, NSURLResponse *response, NSError *nserror) {
NSError *jsonError = nil;
MSCollection *collection = [[MSCollection alloc] initWithData:data error:&jsonError];
MSGraphDirectoryObject *directoryObject = [[MSGraphDirectoryObject alloc] initWithDictionary:[[collection value] objectAtIndex: 0] error:&nserror];
}];
[meDataTask execute];
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
GraphServiceClient graphClient = GraphServiceClient.builder().authenticationProvider( authProvider ).buildClient();
DirectoryObjectCollectionWithReferencesPage transitiveMemberOf = graphClient.groups("{id}").transitiveMemberOf()
.buildRequest()
.get();
GraphServiceClient graphClient = GraphServiceClient.builder().authenticationProvider( authProvider ).buildClient();
DirectoryObjectCollectionWithReferencesPage transitiveMemberOf = graphClient.groups("{id}").transitiveMemberOf()
.buildRequest()
.get();
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
groupId := "group-id"
result, err := graphClient.GroupsById(&groupId).TransitiveMemberOf().Get()
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
groupId := "group-id"
result, err := graphClient.GroupsById(&groupId).TransitiveMemberOf().Get()
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
Import-Module Microsoft.Graph.Groups
Get-MgGroupTransitiveMemberOf -GroupId $groupId
Import-Module Microsoft.Graph.Groups
Get-MgGroupTransitiveMemberOf -GroupId $groupId
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
応答
応答の例を次に示します。
注: ここに示す応答オブジェクトは、読みやすさのために短縮されている場合があります。
HTTP/1.1 200 OK
Content-type: application/json
{
"value": [
{
"@odata.type": "#microsoft.graph.group",
"id": "11111111-2222-3333-4444-555555555555",
"mail": "group1@contoso.com"
}
]
}
例 2: すべての推移的なメンバーシップ数のみを取得する
要求
要求の例を次に示します。
GET https://graph.microsoft.com/v1.0/groups/{id}/transitiveMemberOf/$count
ConsistencyLevel: eventual
応答
応答の例を次に示します。
HTTP/1.1 200 OK
Content-type: text/plain
294
例 3: OData キャストを使用して、グループ内の推移的なメンバーシップ数のみを取得する
要求
要求の例を次に示します。
GET https://graph.microsoft.com/v1.0/groups/{id}/transitiveMemberOf/microsoft.graph.group/$count
ConsistencyLevel: eventual
応答
応答の例を次に示します。
HTTP/1.1 200 OK
Content-type: text/plain
294
例 4: OData キャストと$searchを使用して、返されたオブジェクトの数を含む文字 'tier' を含む表示名を持つグループのメンバーシップを取得する
要求
要求の例を次に示します。
GET https://graph.microsoft.com/v1.0/groups/{id}/transitiveMemberOf/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/v1.0/$metadata#groups(displayName,id)",
"@odata.count":7,
"value":[
{
"displayName":"Contoso-tier Query Notification",
"id":"11111111-2222-3333-4444-555555555555"
}
]
}
例 5: OData キャストと$filterを使用して、返されたオブジェクトの数を含む 'A' で始まる表示名を持つメンバーシップを取得する
要求
要求の例を次に示します。
GET https://graph.microsoft.com/v1.0/groups/{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/v1.0/$metadata#groups",
"@odata.count":76,
"value":[
{
"displayName":"AAD Contoso Users",
"mail":"AADContoso_Users@contoso.com"
}
]
}