G Suite — получить членство в моей собственной группе через вызов API?

Моим обычным пользователям G Suite без прав администратора необходимо определить (программно), входят ли они в определенную группу G Suite или нет.

План A – G Suite Admin SDK

Казалось бы, это можно сделать с помощью этого вызова:

https://admin.googleapis.com/admin/directory/v1/groups/[email protected]/hasMember/[email protected]

Это не работает. Если я аутентифицируюсь как администратор, это работает. Но если я аутентифицируюсь как [email protected] (примечание: я добавил все соответствующие области в запрос токена), я получаю 403 «Не авторизован для доступа к этому ресурсу / API».

Предполагается ли, что пользователь не может запрашивать членство в группе с помощью G Suite Admin SDK?

План Б — Google People API

Я пробовал этот API:

https://people.googleapis.com/v1/people/me?personFields=memberships

Это возвращает успешный ответ 200, но членство в группе отсутствует. Ответ примерно такой, что в основном является стандартным пустым ответом для этого API:

{
  "resourceName": "people/107804923746527240895",
  "etag": "%EgMBNy4aBEAABQc="
}

Какой вызов API я могу сделать, чтобы узнать, состою ли я в группе или нет?


person Fletch    schedule 31.03.2020    source источник


Ответы (1)


Предполагается ли, что пользователь не может запрашивать членство в группе с помощью G Suite Admin SDK?

Как следует из названия, это Admin Software Development Kit, предназначенный для администраторов. Так что, к сожалению, недоступен для пользователей без прав администратора.

членство в группе не там

К сожалению, People API возвращает только вас

"domainMembership": {
        "inViewerDomain": true
      }

если вы админ - так опять же не полезно для вас.

Вывод - в настоящее время пользователь не может видеть членство в своей группе

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

person ziganotschka    schedule 31.03.2020