Получение всех групп, членом которых является пользователь, через oauth (google)

Я создаю веб-приложение, которое позволяет пользователям входить в систему с учетной записью google-apps. Мне нужна некоторая информация о пользователе, количество новых электронных писем, доступ к календарю и все группы (в моем домене), членом которых является пользователь. Проблема в том, что я не могу найти правильную область (и конечную точку), чтобы получить группы, членом которых является пользователь. Кто-нибудь знает, возможно ли это? И как это делается...

Что я получил на данный момент: я поиграл с областью предоставления групп (https://apps-apis.google.com/a/feeds/groups/) проблема в том, что вы должны быть администратором для просмотра данных.. И я хочу, чтобы все пользователи видели там членство... Игровая площадка google oauth меня не продвигает (https://code.google.com/oauthplayground/)


person Henk-Jan    schedule 23.07.2012    source источник


Ответы (2)


у меня была такая же проблема, и я понял это.

  1. необходимая область: "https://apps-apis.google.com/a/feeds/groups/"

  2. Запрос API выглядит так: "https://apps-apis.google.com/a/feeds/group/2.0/{domain}/{group name}/member" в качестве заголовка запроса используйте: 'Authorization': "OAuth " + {access_token}

  3. владелец учетной записи приложения Google должен иметь роли в соответствии со следующим руководством (по крайней мере, правило чтения):

Чтобы включить Provisioning API для панели управления следующего поколения:

  1. Войдите в свою учетную запись администратора и выберите Настройки домена.
  2. Выберите вкладку Пользовательские настройки.
  3. Установите флажок, активирующий Provisioning API, и сохраните изменения.

Чтобы включить Provisioning API для текущей панели управления:

  1. Войдите в свою учетную запись администратора и выберите вкладку Пользователи и группы.
  2. Выберите вложенную вкладку Настройки.
  3. Установите флажок, чтобы включить Provisioning API и сохранить изменения.

Только у администратора домена есть возможность изменить эти настройки.

person jan pospisil    schedule 23.07.2012
comment
Возможно ли и наоборот? Я бы хотел, чтобы я отправил запрос с моим доменом и именем пользователя. Возвращенный ответ дал бы мне все группы, в которых данный пользователь является членом... (что-то вроде: apps-apis.google.com/a/feeds/group/2.0{domain}/member/{ memberId}) Площадка позволила бы мне это сделать.. - person Henk-Jan; 26.07.2012
comment
Привет, к сожалению, я думаю, это только один из способов получить группы пользователей с помощью oauth 2.0. Когда у вас включен API предоставления, можно довольно быстро получить информацию о домене с помощью потоков (асинхронный запрос вызывает apps-apis.google.com/a/feeds/group/2.0/#{domain}/#{group_id}/member), полезен refresh_token для учетной записи приложения администратора, который может вам помочь кеширование информации об API предоставления вместо включения предоставления API для каждой учетной записи в домене администратором. Вы нашли всю информацию по этим URL-адресам: developers.google.com/accounts/docs/OAuth2WebServer, code.google.com /oauthplayground - person jan pospisil; 27.07.2012

Таким образом, это означает, что вы должны составить список групп в своем домене и сравнить электронную почту пользователя со всеми электронными письмами во всех группах в домене.

person jan pospisil    schedule 23.07.2012