group: evaluateDynamicMembership

Пространство имен: microsoft.graph

Важно!

API версии /beta в Microsoft Graph могут быть изменены. Использование этих API в производственных приложениях не поддерживается. Чтобы определить, доступен ли API в версии 1.0, используйте селектор версий.

Определите, может ли пользователь или устройство являться членом динамической группы. Возвращается правило членства вместе с другими сведениями, которые использовались при оценке. Эту операцию можно выполнить следующими способами:

  • Оцените, является ли пользователь или устройство членом указанной динамической группы.
  • Оцените, будет ли пользователь или устройство членом динамической группы, на основе идентификатора пользователя или устройства и правила членства.

Этот API доступен в следующих национальных облачных развертываниях.

Глобальная служба Правительство США L4 Правительство США L5 (DOD) Китай управляется 21Vianet

Разрешения

В следующей таблице показаны наименее привилегированные разрешения или разрешения, необходимые для вызова этого API для каждого поддерживаемого типа ресурсов. Следуйте рекомендациям , чтобы запросить разрешения с наименьшими привилегиями. Дополнительные сведения о делегированных разрешениях и разрешениях приложений см. в разделе Типы разрешений. Дополнительные сведения об этих разрешениях см. в справочнике по разрешениям.

Оценка динамического членства с помощью идентификатора участника и идентификатора группы

Поддерживаемый ресурс Делегированное (рабочая или учебная учетная запись) Делегированное (личная учетная запись Майкрософт) Для приложений
device Group.Read.All и Device.Read.All Не поддерживается. Не поддерживается.
user Group.Read.All и User.Read.All Не поддерживается. Не поддерживается.

Оценка динамического членства с помощью идентификатора участника и правила членства

Поддерживаемый ресурс Делегированное (рабочая или учебная учетная запись) Делегированное (личная учетная запись Майкрософт) Для приложений
device Device.Read.All Не поддерживается. Не поддерживается.
user User.Read.All Не поддерживается. Не поддерживается.

HTTP-запрос

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

Заголовки запросов

Имя Описание
Авторизация Bearer {token}. Обязательно. Дополнительные сведения о проверке подлинности и авторизации.
Content-Type application/json

Текст запроса

В тексте запроса укажите необходимые свойства.

В следующей таблице перечислены свойства, необходимые при оценке членства в группах.

Параметр Тип Описание
memberId Коллекция строк memberId — это идентификатор объекта пользователя или устройства для оценки.
membershipRule Коллекция строк Правило, используемое для оценки членства. Если это свойство не указано, вычисляется правило для существующей группы. Если это свойство указано, пользователь или устройство оценивается на предмет возможного членства в группе с тем же правилом. Дополнительные сведения см. в статье Правила динамического членства для групп в Microsoft Entra ID.

Отклик

В случае успешного выполнения этот метод возвращает код отклика 200 OK и объект evaluateDynamicMembershipResult .

Примеры

Пример 1. Оценка того, является ли пользователь или устройство членом существующей группы

Запрос

Ниже показан пример запроса.

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

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

Отклик

Ниже показан пример отклика.

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

Пример 2. Оценка того, является ли пользователь или устройство членом группы на основе правила членства

Запрос

Ниже показан пример запроса.

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

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

Отклик

Ниже приводится пример отклика.

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