Obtenha os grupos e unidades administrativas dos quais o dispositivo é membro. Essa solicitação de API é transitiva e também retornará todos os grupos e unidades administrativas das quais o dispositivo é um membro aninhado.
Escolha a permissão ou as permissões marcadas como menos privilegiadas para essa API. Use uma permissão ou permissões privilegiadas mais altas somente se o aplicativo exigir. Para obter detalhes sobre permissões delegadas e de aplicativo, consulte Tipos de permissão. Para saber mais sobre essas permissões, consulte a referência de permissões.
Quando um aplicativo consulta uma relação que retorna uma coleção de tipos directoryObject , se não tiver permissão para ler um determinado tipo de recurso, os membros desse tipo serão retornados, mas com informações limitadas. Por exemplo, somente a propriedade @odata.type para o tipo de objeto e a ID é retornada , enquanto outras propriedades são indicadas como null. Com esse comportamento, os aplicativos podem solicitar as permissões menos privilegiadas de que precisam, em vez de depender do conjunto de Diretório.*Permissões. Para obter mais detalhes, confira Informações limitadas retornadas para objetos membro inacessíveis.
Solicitação HTTP
Você pode abordar o dispositivo usando sua id ou deviceId.
GET /devices/{id | userPrincipalName}/transitiveMemberOf
GET /devices(deviceId='{deviceId}')/transitiveMemberOf
Parâmetros de consulta opcionais
Este método dá suporte a Parâmetros de consulta OData para ajudar a personalizar a resposta, incluindo $select, $search, e $count. A conversão OData também está habilitado, por exemplo, você pode convertê-la para obter apenas o directoryRoles do qual o usuário é membro. Você pode usar $search nas propriedades displayName e descrição. Os tamanhos de página padrão e máximo são 100 e 999 objetos, respectivamente.
eventualmente. Este cabeçalho e $count são necessários quando se utiliza $search, $filter, $orderby ou os parâmetros de consulta de conversão OData. Ele usa um índice que pode não estar atualizado com as alterações recentes no objeto.
Corpo da solicitação
Não forneça um corpo de solicitação para esse método.
Resposta
Se bem-sucedido, este método retorna um código de resposta 200 OK e uma coleção de objetos directoryObject no corpo da resposta.
Exemplos
Exemplo 1: obter grupos dos quais o dispositivo é um membro transitivo
GET https://graph.microsoft.com/v1.0/devices/{id}/transitiveMemberOf
// Code snippets are only available for the latest version. Current version is 5.x
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Devices["{device-id}"].TransitiveMemberOf.GetAsync();
// Code snippets are only available for the latest major version. Current major version is $v1.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-sdk-go"
//other-imports
)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
transitiveMemberOf, err := graphClient.Devices().ByDeviceId("device-id").TransitiveMemberOf().Get(context.Background(), nil)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
DirectoryObjectCollectionResponse result = graphClient.devices().byDeviceId("{device-id}").transitiveMemberOf().get();
Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.
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,
}
]
}
Exemplo 2: Obter apenas uma contagem de todas as associações transitivas
Solicitação
O exemplo a seguir mostra uma solicitação.
GET https://graph.microsoft.com/v1.0/devices/{id}/transitiveMemberOf/$count
ConsistencyLevel: eventual
Resposta
O exemplo a seguir mostra a resposta.
HTTP/1.1 200 OK
Content-type: text/plain
294
Exemplo 3: use o OData cast and $search para obter associação de grupo com nomes de exibição que contêm as letras 'Vídeo' incluindo uma contagem de objetos retornados
Solicitação
O exemplo a seguir mostra uma solicitação.
GET https://graph.microsoft.com/v1.0/devices/{id}/transitiveMemberOf/microsoft.graph.group?$count=true&$orderby=displayName&$search="displayName:Video"&$select=displayName,id
ConsistencyLevel: eventual
Resposta
O exemplo a seguir mostra a resposta.
Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.
GET https://graph.microsoft.com/v1.0/devices/{id}/transitiveMemberOf/microsoft.graph.group?$count=true&$orderby=displayName&$filter=startswith(displayName, 'a')
ConsistencyLevel: eventual
// Code snippets are only available for the latest version. Current version is 5.x
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Devices["{device-id}"].TransitiveMemberOf.GraphGroup.GetAsync((requestConfiguration) =>
{
requestConfiguration.QueryParameters.Count = true;
requestConfiguration.QueryParameters.Orderby = new string []{ "displayName" };
requestConfiguration.QueryParameters.Filter = "startswith(displayName, 'a')";
requestConfiguration.Headers.Add("ConsistencyLevel", "eventual");
});
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
GroupCollectionResponse result = graphClient.devices().byDeviceId("{device-id}").transitiveMemberOf().graphGroup().get(requestConfiguration -> {
requestConfiguration.queryParameters.count = true;
requestConfiguration.queryParameters.orderby = new String []{"displayName"};
requestConfiguration.queryParameters.filter = "startswith(displayName, 'a')";
requestConfiguration.headers.add("ConsistencyLevel", "eventual");
});