Перечислите все профили Google Apps на сайте PHP
Я пытаюсь получить список всех пользователей домена Служб Google на общедоступном веб-сайте PHP (без необходимости посещать сайт или делать что-либо еще). У меня есть базовое понимание того, что должно произойти, но я не могу собрать все это воедино. Это не может быть так сложно, как мне кажется... не так ли?
Аутентификация и авторизация: я почти уверен, что ему нужно использовать OAuth 2.0... но я не уверен, нужны ли ему 2 или 3 ноги. У меня есть другой раздел сайта, работающий с ClientLogin, но он не будет включать профили Google Apps, только имена и фамилии пользователя (мне нужны другие поля профиля). Я настроил доступ к API внутри учетной записи, и у меня есть все для этого (я верю).
Я нашел эту страницу, которая показывает, как построить запрос URL, чтобы получить все профили (на любом языке, кроме PHP, конечно), но не понимаю, как это реализовать. http://code.google.com/googleapps/domain/profiles/developers_guide.html
Я также попробовал этот пример, но он просто дает мне 401 после ввода учетных данных. http://gdatatips.blogspot.com/2008/11/2-legged-oauth-in-php.html
Я не знаю, какие рамки или включения необходимы для достижения этого либо. Я пробовал Zend, OAuth.php и целый ряд других загрузчиков... но все время теряюсь в том, что делает каждый.
Если бы кто-то мог помочь мне, обрисовав в общих чертах:
- Какие файлы / рамки мне нужно загрузить и включить в качестве начальной загрузки
- Какие переменные в этих файлах мне нужно обновить с помощью учетных данных Google
- Как я интегрирую запрос Google Profiles "Получить все профили" с PHP
Обзор ELI5 (объясните, что мне 5) будет очень признателен... Я извиняюсь за свою очевидную некомпетентность, но я читаю статьи почти неделю и никуда не попал.
Заранее благодарю за любую предоставленную помощь.
1 ответ
Хороший вопрос.
Вам нужно будет внедрить процесс Google OAuth 2.0, как он описан здесь (экспериментально?), Потому что кто-то (вы) должен будет дать вашему приложению начальные разрешения для доступа к API Служб Google. Шаги:
- Зарегистрируйте свой домен в Google (не запомните ссылку)
- Перенаправьте / отправьте браузер на URL-адрес для аутентификации: https://accounts.google.com/o/oauth2/auth с соответствующими параметрами запроса (см. Первую ссылку). Тебе понадобиться
access_type=offline
ваша область действия будет https://apps-apis.google.com/a/feeds/user/ - Получить код обратно, затем обменять на refresh_token, access_token и значение, указывающее, когда истечет срок действия access_token. Храните их в базе данных
- Всякий раз, когда вам нужно сделать вызов API, проверьте, не истек ли срок действия вашего access_token, и обновите при необходимости, для чего предназначен refresh_token. Аргумент refresh_token действителен до тех пор, пока вы не отзовете доступ, который вы дали приложению.
OAuth Playground очень помогает. Удачи.