ver tienes servicio permiso para integrar google cuenta clientes claves auth oauth google-api google-calendar

tienes - ¿Cómo me conecto a la API de Google Calendar sin la autenticación de oAuth?



oauth login google (2)

Si no me equivoco, han lanzado una cuenta de servicio para esto ahora: https://developers.google.com/accounts/docs/OAuth2ServiceAccount

Editar:

Aquí está la modificación de su API de predicción.

session_start(); require_once "google-api-php-client/src/Google_Client.php"; require_once "google-api-php-client/src/contrib/Google_CalendarService.php"; const CLIENT_ID = ''...''; const SERVICE_ACCOUNT_NAME = ''...''; // Make sure you keep your key.p12 file in a secure location, and isn''t // readable by others. const KEY_FILE = ''...''; $client = new Google_Client(); $client->setApplicationName("..."); if (isset($_SESSION[''token''])) { $client->setAccessToken($_SESSION[''token'']); } // Load the key in PKCS 12 format (you need to download this from the // Google API Console when the service account was created. $key = file_get_contents(KEY_FILE); $client->setAssertionCredentials(new Google_AssertionCredentials( SERVICE_ACCOUNT_NAME, array(''https://www.googleapis.com/auth/calendar'', "https://www.googleapis.com/auth/calendar.readonly"), $key) ); $client->setClientId(CLIENT_ID); $service = new Google_CalendarService($client); //Save token in session if ($client->getAccessToken()) { $_SESSION[''token''] = $client->getAccessToken(); } //And now you can use the code in their PHP examples, like: $service->events->listEvents(...)

He estado estudiando la API de Google Calendar y los documentos sobre autenticación ( http://code.google.com/apis/calendar/v3/using.html#auth ). Parece que el caso de uso mencionado aquí es escribir una aplicación que accede al calendario del usuario. Sin embargo, estoy escribiendo una página web que accederá al calendario del propietario del sitio web y mostrará solo la información de ese calendario. Por lo tanto, no quiero que el usuario ingrese la información de su cuenta de Google, que es lo que quiere hacer oAuth.

Básicamente, estoy buscando una manera de acceder a un único calendario privado de Google y autenticarme al pasar las credenciales directamente al servicio.

Aquí hay algunas preguntas similares: ¿Cómo usar OAuth con Google Calendar para acceder solo a UN calendario? Eso parece indicar que el cartel originalmente estaba pasando las credenciales directamente. ¿Esta característica todavía está disponible? ¿Cómo maneja el caso de uso que describí?


Tengo el mismo problema. Encontré este tutorial de 3 partes que hace exactamente lo que quieres. Página web para reservas.
Crea una página web que escribe directamente en su propio calendario (no los usuarios) y es por eso que los usuarios no tienen que darle permiso para acceder a su calendario.
Esta solución funciona para mí, pero hay que administrarla directamente con REST.

Estoy buscando una manera de usar el cliente de Google Api PHP porque parece un poco más simple. Pero aún no he encontrado una manera de editar correctamente el archivo google-api-php-client / src / config.php para que funcione de manera que usted no se autentique al usuario real, porque necesita acceso a su calendario. Si alguien tiene una idea o un guión que haría eso, estaría muy agradecido.