デバイス メンバーシップを一覧表示する
[アーティクル]
06/03/2022
3 人の共同作成者
この記事の内容
名前空間: microsoft.graph
このデバイスが直接メンバーであるグループと管理単位を取得します。 この操作は推移的ではありません。
アクセス許可
この API を呼び出すには、次のいずれかのアクセス許可が必要です。アクセス許可の選択方法などの詳細については、「アクセス許可 」を参照してください。
アクセス許可の種類
アクセス許可 (特権の小さいものから大きいものへ)
委任 (職場または学校のアカウント)
Device.Read.All、Directory.Read.All、Directory.ReadWrite.All
委任 (個人用 Microsoft アカウント)
サポートされていません。
アプリケーション
Device.Read.All、Device.ReadWrite.All、Directory.Read.All、Directory.ReadWrite.All
アプリケーションが directoryObject 型のコレクションを返す関係をクエリするときに、特定の派生型 (デバイスなど) を読み取るアクセス許可がない場合、その型のメンバーが返されますが、情報は限られます。 この動作により、アプリケーションは、Directory. * 権限が付与されたアクセス許可のセットに依存するのではなく、必要な最小限のアクセス許可を要求できます。 詳細については、「アクセスできないメンバー オブジェクトについて、限定された情報が返される 」を参照してください。
HTTP 要求
GET /devices/{id}/memberOf
オプションのクエリ パラメーター
このメソッドは、応答をカスタマイズするための $search、$count および$filterのOData クエリ パラメーター をサポートします。 OData キャストも有効になっています。たとえば、デバイスがメンバーである directoryRoles だけを取得するためにキャストできます。 displayName プロパティと description プロパティで $search を使用できます。
クエリの中には、ConsistencyLevel ヘッダーの設定を eventual および $count に使用した場合にのみサポートされるものもあります。 詳細については、「Azure AD ディレクトリ オブジェクトの詳細クエリ機能 」を参照してください。
このリソースのアイテムを追加または更新すると、 $count と $search クエリ パラメーターを共に使用するように特別にインデックスが作成されます。 アイテムを追加または更新してから、インデックスで使用できるようになるまでに少し時間がかかる場合があります。
ヘッダー
値
Authorization
ベアラー {トークン}。必須。
ConsistencyLevel
最終的。 このヘッダーは、$countOData キャスト パラメーターを使用$searchする場合、または .$filter ConsistencyLevel および $count の使用方法の詳細については、「Azure AD ディレクトリ オブジェクトの詳細クエリ機能 」を参照してください。
要求本文
このメソッドには、要求本文を指定しません。
応答
成功した場合、このメソッドは 200 OK 応答コードと、応答本文で directoryObject オブジェクトのコレクションを返します。
例
例 1: デバイスが直接メンバーであるグループを取得する
要求
要求の例を次に示します。
GET https://graph.microsoft.com/v1.0/devices/{id}/memberOf
MSHTTPClient *httpClient = [MSClientFactory createHTTPClientWithAuthenticationProvider:authenticationProvider];
NSString *MSGraphBaseURL = @"https://graph.microsoft.com/v1.0/";
NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[MSGraphBaseURL stringByAppendingString:@"/devices/{id}/memberOf"]]];
[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 memberOf = graphClient.devices("{id}").memberOf()
.buildRequest()
.get();
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
deviceId := "device-id"
result, err := graphClient.DevicesById(&deviceId).MemberOf().Get()
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
応答
応答の例を次に示します。
注: ここに示す応答オブジェクトは、読みやすさのために短縮されている場合があります。
HTTP/1.1 200 OK
Content-type: application/json
{
"value": [
{
"@odata.type": "#microsoft.graph.group",
"id": "id-value",
"createdDateTime": null,
"description": "All users at the company",
"displayName": "All Users",
"groupTypes": [],
"mailEnabled": false,
"securityEnabled": true,
}
]
}
例 2: 全メンバーシップ数のみを取得する
要求
要求の例を次に示します。
GET https://graph.microsoft.com/v1.0/devices/{id}/memberOf/$count
ConsistencyLevel: eventual
応答
応答の例を次に示します。
HTTP/1.1 200 OK
Content-type: text/plain
394
例 3: OData キャストと$searchを使用して、返されたオブジェクトの数を含む文字 'Video' を含む表示名を持つメンバーシップを取得する
要求
要求の例を次に示します。
GET https://graph.microsoft.com/v1.0/devices/{id}/memberOf/microsoft.graph.group?$count=true&$orderBy=displayName&$search="displayName:Video"
ConsistencyLevel: eventual
応答
応答の例を次に示します。
注: ここに示す応答オブジェクトは、読みやすさのために短縮されている場合があります。
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context":"https://graph.microsoft.com/v1.0/$metadata#groups",
"@odata.count":1396,
"value":[
{
"displayName":"SFA Videos",
"mail":"SFAVideos@service.contoso.com",
"mailNickname":"SFAVideos"
}
]
}
例 4: OData キャストと$filterを使用して、返されたオブジェクトの数を含む文字 'A' で始まる表示名を持つメンバーシップを取得する
要求
要求の例を次に示します。
GET https://graph.microsoft.com/v1.0/devices/{id}/memberOf/microsoft.graph.group?$count=true&$orderBy=displayName&$filter=startswith(displayName, 'A')
ConsistencyLevel: eventual
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var queryOptions = new List<QueryOption>()
{
new QueryOption("$count", "true")
};
var group = await graphClient.Devices["{device-id}"].MemberOf
.Request( queryOptions )
.Header("ConsistencyLevel","eventual")
.Filter("startswith(displayName, 'A')")
.OrderBy("displayName")
.GetAsync();
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
const options = {
authProvider,
};
const client = Client.init(options);
let group = await client.api('/devices/{id}/memberOf/microsoft.graph.group')
.header('ConsistencyLevel','eventual')
.filter('startswith(displayName, \'A\')')
.orderby('displayName')
.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:@"/devices/{id}/memberOf/microsoft.graph.group?$count=true&$orderBy=displayName&$filter=startswith(displayName,%20'A')"]]];
[urlRequest setHTTPMethod:@"GET"];
[urlRequest setValue:@"eventual" forHTTPHeaderField:@"ConsistencyLevel"];
MSURLSessionDataTask *meDataTask = [httpClient dataTaskWithRequest:urlRequest
completionHandler: ^(NSData *data, NSURLResponse *response, NSError *nserror) {
NSError *jsonError = nil;
MSCollection *collection = [[MSCollection alloc] initWithData:data error:&jsonError];
MSGraphGroup *group = [[MSGraphGroup alloc] initWithDictionary:[[collection value] objectAtIndex: 0] error:&nserror];
}];
[meDataTask execute];
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
GraphServiceClient graphClient = GraphServiceClient.builder().authenticationProvider( authProvider ).buildClient();
LinkedList<Option> requestOptions = new LinkedList<Option>();
requestOptions.add(new HeaderOption("ConsistencyLevel", "eventual"));
GroupCollectionPage group = graphClient.devices("{id}").memberOf().microsoft.graph.group()
.buildRequest( requestOptions )
.filter("startswith(displayName, 'A')")
.orderBy("displayName")
.get();
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
requestParameters := &msgraphsdk.GroupRequestBuilderGetQueryParameters{
Count: true,
OrderBy: "displayName",
Filter: "startswith(displayName,%20'A')",
}
headers := map[string]string{
"ConsistencyLevel": "eventual"
}
options := &msgraphsdk.GroupRequestBuilderGetRequestConfiguration{
QueryParameters: requestParameters,
Headers: headers,
}
deviceId := "device-id"
result, err := graphClient.DevicesById(&deviceId).MemberOf().Group(device-id).GetWithRequestConfigurationAndResponseHandler(options, nil)
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
応答
応答の例を次に示します。
注: ここに示す応答オブジェクトは、読みやすさのために短縮されている場合があります。
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 Videos",
"mail":"AADContosoVideos@contoso.com",
"mailEnabled":true,
"mailNickname":"AADContoso_Videos",
"securityEnabled":true
}
]
}