group: evaluateDynamicMembership

Namespace: microsoft.graph

Importante

As APIs na versão /beta no Microsoft Graph estão sujeitas a alterações. Não há suporte para o uso dessas APIs em aplicativos de produção. Para determinar se uma API está disponível na v1.0, use o seletor de versão.

Avaliar se um usuário ou dispositivo é ou seria membro de um grupo dinâmico. A regra de associação é retornada juntamente com outros detalhes que foram usados na avaliação. Você pode concluir essa operação das seguintes maneiras:

  • Avalie se um usuário ou dispositivo é membro de um grupo dinâmico especificado.
  • Avalie se um usuário ou dispositivo seria membro de um grupo dinâmico com base na ID do usuário ou dispositivo e em uma regra de associação.

Permissões

Uma das seguintes permissões é obrigatória para chamar esta API. Para saber mais, incluindo como escolher permissões, confira Permissões.

Avaliar a associação dinâmica com a ID de membro e a ID do grupo

Tipo de permissão Permissões (da com menos para a com mais privilégios)
Delegada (conta corporativa ou de estudante) Para o usuário: Group.Read.All e User.Read.All, Directory.Read.All
Para dispositivo: Group.Read.All e Device.Read.All, Directory.Read.All
Delegada (conta pessoal da Microsoft) Sem suporte.
Aplicativo Sem suporte.

Avaliar a associação dinâmica com a ID de membro e a regra de associação

Tipo de permissão Permissões (da com menos para a com mais privilégios)
Delegada (conta corporativa ou de estudante) Para usuário: User.Read.All, Directory.Read.All
Para dispositivo: Device.Read.All, Directory.Read.All
Delegada (conta pessoal da Microsoft) Sem suporte.
Aplicativo Sem suporte.

Solicitação HTTP

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

Cabeçalhos de solicitação

Nome Descrição
Autorização Portador {token}
Content-type application/json

Corpo da solicitação

No corpo da solicitação, forneça as propriedades necessárias.

A tabela a seguir lista as propriedades que são necessárias ao avaliar a associação de grupo.

Parâmetro Tipo Descrição
Memberid Coleção de cadeias de caracteres memberId é a ID de objeto do usuário ou dispositivo a ser avaliado.
membershipRule Coleção de cadeias de caracteres A regra usada para avaliação de associação. Se essa propriedade não for fornecida, a regra para o grupo existente será avaliada. Se essa propriedade for fornecida, o usuário ou dispositivo será avaliado quanto à possível associação em um grupo com a mesma regra. Para obter mais informações, regras de associação dinâmica para grupos no Azure Active Directory.

Resposta

Se tiver êxito, este método retornará um código 200 OK de resposta e um objeto evaluateDynamicMembershipResult .

Exemplos

Exemplo 1: Avaliar se um usuário ou dispositivo é membro de um grupo existente

Solicitação

Este é um exemplo de solicitação.

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

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

Resposta

Este é um exemplo de resposta.

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"
    }
  }
}

Exemplo 2: Avaliar se um usuário ou dispositivo seria membro de um grupo com base em uma regra de associação

Solicitação

Este é um exemplo de solicitação.

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

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

Resposta

Este é um exemplo de resposta.

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"
    }
  }
}