Приложения-службы и Google Analytics API V3: аутентификация OAuth2 между серверами?


Я пытаюсь сделать серверное приложение, чтобы регулярно извлекать данные Google Analytics из моей собственной учетной записи GA. Обратите внимание, что это личное, серверное приложение, получающее доступ к моим собственным данным, т. е. нет конечного пользователя, доступ к этому приложению.

таким образом, я зарегистрировал свою заявку в Google API Console как Service Application, что дало мне идентификатор клиента и Закрытый Ключ. Это мое понимание что приложения-службы не используют Секретные Приложения и перенаправить URL поскольку в этом потоке проверки подлинности между серверами нет конечного пользователя. Действительно, консоль Google API не давала мне никакого секрета и не предлагала мне перенаправить URL.

к сожалению, я не могу понять, как аутентифицировать мое приложение службы в PHP API клиента Google. Существует обширная документация по аутентификации веб-приложений С конечный пользователь.

документация Google предлагает можно аутентифицировать сервер-сервер, подписав запрос JWT с закрытым ключом. Я просто не могу понять, как это сделать в API клиента PHP (хотя я просмотрел источник и есть наверняка скрипт, который подписывает запрос своим секретным ключом.)

Я что-то пропустил? Как я могу выполнить проверку подлинности для приложения-службы с помощью моего закрытый ключ и API клиента Google PHP?

отредактированы для ясности

4 60

4 ответа:

обновление 21 июля 2012 года

Google Analytics API V3 теперь поддерживает токены OAuth2, возвращаемые a .p12-подписанный запрос JWT. То есть, теперь мы можем использовать API Analytics w / service accounts.

в настоящее время тянет 4 года изо дня в день метрики,просто так, черт возьми.

вот быстрый ' N ' грязный шаг за шагом:

  1. перейти к Google API Console и создать новую приложение

  2. на услуги tab, переверните Google Analytics переключатель

  3. на доступ к API tab, нажмите создайте идентификатор клиента OAuth2.0

    • введите свое имя, загрузите логотип и нажмите далее

    • выберите учетная запись службы и нажмите клавишу создать клиент Идентификатор

    • загрузите свой закрытый ключ

  4. теперь ты снова на доступ к API

клиент Google API PHP теперь поддерживает учетные записи служб на магистрали.

реализация еще не выпущена, поэтому вам нужно оформить заказ последняя версия PHP-клиента.

Я подготовил пример приложения, которое демонстрирует, как вы можете использовать учетные записи служб, чтобы попасть в Google Prediction API. Чтобы посмотреть на примере, взгляните на примеры/прогнозирования/с помощью параметра serviceaccount.php или посещать: http://code.google.com/p/google-api-php-client/source/browse/trunk/examples/prediction/serviceAccount.php

если вы используете PHP API клиента Google тогда иди в Google API Console и нажать кнопку API Access слева.

затем Create a Client ID. Это даст вам secret и именно там вы устанавливаете свой redirect URL. Он не даст вам URL - адрес перенаправления-это URL-адрес, на который приложение отправляет пользователя после аутентификации.

здесь другие методы проверки подлинности вы можете посмотреть на.

вы можете использовать очень полезную библиотеку php GAPI (интерфейс PHP API Google Analytics) для доступа к Google Analytics без OAuth. Он прост в использовании.