Programmer's Reference Guide
| Authentification par procédé AuthSub |
Authentification avec ClientLogin
Le mécanisme dit 'ClientLogin' vous permet d'écrire des applications PHP qui récupèrent une authentification vis à vis des services Google, en spécifiant des identifiants dans le client HTTP.
Voyez » http://code.google.com/apis/accounts/AuthForInstalledApps.html pour plus d'informations sur l'authentification ClientLogin de Google Data.
La documentation Google indique que le mécanisme ClientLogin est approprié dans le cas d'applications embarquées, à la différence du mécanisme AuthSub, utilisé pour les applications webs ayant recours à une authentification exterieure. AuthSub récupère des identifiant d'un utilisateur de l'application web, et un navigateur réagissant aux redirections est requis. Le processus ClientLogin, lui, utilise du code PHP tel qu'écrit dans l'application elle-même. L'utilisateur de l'application n'entre pas en jeu pour fournir des identifiants de manière interactive.
Les identifiants fournis au mécanisme ClientLogin doivent correspondre à des identifiants valides pour les services Google, mais il n'est pas nécessaire qu'ils correspondent à ceux de l'utilisateur de l'application.
Création d'un client HTTP 'ClientLogin' authentifié
La création d'un client HTTP 'ClientLogin' authentifié est un processus servi
par la méthode statique Zend_Gdata_ClientLogin::getHttpClient().
Passez lui les identifiants Google services sous forme de texte (plain text).
La valeur de retour de cette méthode est un objet Zend_Http_Client.
Le troisième paramètre optionnel est le nom du service Google Data. Par exemple, il peut être 'cl' pour Google Calendar. Par défaut il s'agit de "xapi", ce qui correspond au service générique de Google Data.
La quatrième paramètre optionnel est une instance de Zend_Http_Client. Vous pouvez
alors configurer votre client à part (par exemple lui ajouter des options pour la
gestion d'un Proxy). Si vous passez null à ce paramètre, alors un client
Zend_Http_Client générique est crée.
Le cinquième paramètre optionnel est le nom du client que les serveurs Google Data identifieront en interne. Par défaut il s'agit de "Zend-ZendFramework".
Le sixième paramètre, toujours optionnel, est l'ID pour le challenge
Le septième paramètre optionnel représente la réponse de l'utilisateur au challenge
Ci dessous, un exemple d'une application PHP qui s'authentifie auprès du service Google Calendar et crée un objet client Zend_Gdata utilisant l'objet Zend_Http_Client fraichement authentifié :
<?php
// identifiants de compte Google
$email = 'johndoe@gmail.com';
$passwd = 'xxxxxxxx';
try {
$client = Zend_Gdata_ClientLogin::getHttpClient($email, $passwd, 'cl');
} catch (Zend_Gdata_App_CaptchaRequiredException $cre) {
echo 'l'URL de l\'image CAPTCHA est: ' . $cre->getCaptchaUrl() . "\n";
echo 'Token ID: ' . $cre->getCaptchaToken() . "\n";
} catch (Zend_Gdata_App_AuthException $ae) {
echo 'Problème d'authentification : ' . $ae->exception() . "\n";
}
$cal = new Zend_Gdata_Calendar($client);
Fermer un client HTTP authentifié par ClientLogin
Il n'y a pas de méthode pour supprimer l'authentification effectuée via un ClientLogin, comme c'est le cas avec le système de jeton du procédé AuthSub. Les identifiants dans le ClientLogin étant un login et un mot de passe de compte Google, ils ne peuvent être invalidés et sont utilisables de manière continue.
| Authentification par procédé AuthSub |
Select a Version
Languages Available
Components
Search the Manual
Navigation
- Guide de référence du programmeur
- Guide de référence du programmeur
- Zend_Gdata
- Introduction à Gdata
- Authentification par procédé AuthSub
- Authentification avec ClientLogin
- Using Google Calendar
- Using Google Documents List Data API
- Using Google Spreadsheets
- Using Google Apps Provisioning
- Using Google Base
- Utiliser l'API YouTube
- Utilisation des albums Web Picasa
- Attraper les exceptions Gdata
