Extension:GoogleLogin/fr

L'extension GoogleLogin permet aux utilisateurs wiki de se connecter avec leur compte Google. L'extension utilise l'API Google pour demander à Google les informations de base du profil (tel que l'identifiant du compte, le nom complet et l'adresse courriel).

Prérequis
Pour utiliser cette extension vous devez avoir au moins :


 * MediaWiki 1.27+
 * MySQL (pas de prise en charge de PostgreSQL ni de SQLite pour l'instant !)
 * PHP 5.5+
 * Accès développeur Google
 * API Credentials pour Webapplication (Client ID et Client Secret)
 * Pouvoir exécuter

Configuration
Assurez-vous que tous les paramètres se trouvent sous la directive « require_once » (nécessaire une fois) ajoutée pour cette extension. Sinon tout paramètre personnalisé sera remis à sa valeur par défaut, comme indiqué ici : Topic:Si6ituq6hmxb07xm

L'extension fournit deux variables de configuration pour mettre le Client ID et le Client Secret (vous obtenez cette paire dans la console développeur Google, en enlevant '<' et '>').

Déclarations dans la console développeur de Google
Pour utiliser cette extension vous devez disposer d'un compte Google développeur et avoir accès à la console developpeur. Ceci est un guide pas à pas (très) simple (utilisez le Step 1 de l' exemple pas à pas officiel avec ces paramètres) :


 * 1) Ouvrez la console Google développeur
 * 2) Lisez et acceptez les termes du services
 * 3) Créez votre premier project
 * 4) Allez sur APIS & AUTH
 * 5) Allez sur Credentials
 * 6) Dans la section OAuth cliquez sur Create new Client ID pour créer un identifiant de client
 * 7) Selectionnez Web application pour l' APPLICATION TYPE; pour Authorized JavaScript origins, entrez votre nom de domaine (sans caractères joker, ni de répertoires!)
 * 8) Entrez votre Authorized redirect URI pour définir l'URI de redirection comme dans cet exemple:
 * si votre domaine est example.com et que vous avez installé MediaWiki à la racine de votre domaine, l'URI de redirection s'écrit ainsi : http://example.com/index.php/Special:GoogleLoginReturn
 * 1) Cliquez pour créer et recopiez les valeurs de Client ID et de Client Secret dans les variables de configuration de LocalSettings.php

"Special:GoogleLoginReturn" ou (en allemand par exemple) "Spezial:GoogleLoginReturn"
L'URI de redirection autorisée dans la console Google developeur doit être dans la langue du contenu. aussi, si votre wiki a l'allemand comme langue de contenu par exemple, alors vous utiliserez. Si vous n'utilisez pas la bonne langue, toutes les demande d'authentification vont échouer avec le code d'erreur L'URI de redirection ne correspond pas.

Debogage
Normalement, vous pouvez voir le message d'erreur sur toutes les pages d'erreur génériques. Quelques fois apparaissent des erreurs internes appelées exceptions. Dans ce cas, veuillez ajouter dans LocalSettings.php initialisé à true pour voir le message complet de l'exception. Pour une demande de support, veuillez toujours fournir le contenu du message affiché par l'exception.

Utilisation sur un wiki privé
Si vous avez déclaré votre wiki comme privé avec

vous devez mettre en liste blanche la page « Special:GoogleLoginReturn », de sorte que les utilisateurs anonymes puissent accéder à l'URL de callback après avoir été redirigés du fournisseur d'authentification. Vous pouvez faire cela en ajoutant la ligne suivante à votre LocalSettings.php :

Domaines du wiki autorisés par l'administrateur
GoogleLogin fournit une fonctionalité pour restreindre la connexion avec Google à des domaines d'adresses courriel spécifiques (comme gmail.com, googlemail.com ou tout autre (propre) domaine). Cette fonction est particulièrement intéressante pour les entreprises qui utilisent leur propre nom de domaine avec Google Apps. La liste des domaines, qui sont autorisés pour la connexion avec Google, est gérée sous forme de tableau dans LocalSettings.php (option de configuration  ). Depuis la version 0.4.0, GoogleLogin fournit aussi un moyen pour gérer la liste des domaines autorisés sur le wiki lui-même. Les domaines autorisés sont enregistrés dans la base de données quand cette fonctionalité est activée et peuvent être modifiés (supprimés/ajoutés) via une interface utilisateur graphique (page spéciale) ou via l'API MediaWiki.

Note: la liste des domaines autorisés ne peut plus être gérée dans LocalSettings.php, une fois que l'adinistration des domaines dans la base de données est activée.

Pour activer cette fonctionalité afin de pouvoir gérer les domaines autorisés dans la base de données, il suffit de fixer la variable de configuration  à   dans votre fichier LocalSettings.php. Vous pouvez aussi assigner le nouveau droit utilisateur  à un groupe dont vous êtes membre (mais rappelez-vous, que tous les utilisateurs qui ont ce droit seront autorisés à modifier la liste des domaines autorisés, donc veillez à ajouter ce droit à un groupe de niveau administrateur uniquement!). Une configuration d'exemple serait :

Vous devez maintenant exécuter encore le script , afin d'appliquer les modifications nécessaires à la base de données. Après que la procédure de mise à jour se soit terminée, vous pouvez aller sur la page spéciale  de votre wiki. Vous obtiendrez une page où vous pourrez ajouter de nouveaux domaines, qui sont autorisés pour vous connecter avec un compte Google et vous pourrez ensuite éventuellement les supprimer.

Mise à jour à partir de la 0.3.1 ou plus ancienne
Avec la version 0.4.0, GoogleLogin implémente un fournisseur d'authentification primaire (PrimaryAuthenticationProvider) pour le nouveau système d'authentification de MediaWiki (appelé AuthManager). Cela rend plus facile le développement de GoogleLogin et vous pouvez configurer beaucoup de choses d'une manière standard. Néanmoins, la mise à jour à partir d'une ancienne version de GoogleLogin peut prendre du temps et d'effort qu'avec les mises à jour antérieures, parce que certaines options de configuration dans GoogleLogin ont été supprimées dans la mise à jour (et souvent remplacées par des configurations de AuthManager). Dans les sections suivantes vous trouverez certaines instructions sur la manière de configurer votre wiki pour atteindre le même but qu'avec les options de configuration supprimées.

$wgGLShowCreateReason
Supprimé sans être remplacé.

$wgGLShowKeepLogin
Supprimé sans être remplacé (la case à cocher Me laisser connecté (Keep me logged in) s'applique maintenant à toutes les méthodes d'authentification, y compris GoogleLogin).

$wgGLAllowAccountCreation
Tout le processus de création de compte et de connexion est géré et couvert par AuthManager. Cela signifie, si vous ne voulez pas que vos utilisateurs puissent créer des comptes wiki, que vous devez le désactiver dans votre LocalSettings.php :

Actuellement, cela signifierait que personne ne peut plus créer de compte (y compris GoogleLogin). De plus, suit le processus de connexion -> enregistrement -> flux de connexion, lors de la création de compte avec un fournisseur de lien (tel que GoogleLogin) pour lequel le cas d'un compte désactivé doit être envisagé.

$wgGLReplaceMWLogin
Vous devez simplement supprimer tous les autres fournisseur d'authentification dans votre LocalSettings.php :

GoogleLogin va automatiquement se déclarer pour AuthManager, donc vous n'avez pas besoin de faire d'autres étapes.

$wgGLForceKeepLogin
Obsolète, voir.

$wgGLAPIKey
Cette option de configuration existe encore, mais elle est utilisée maintenant plus largement que pour la page spéciale Special:ManageGoogleLogin. Elle sert dorénavant pour obtenir le nom d'un utilisateur sur Special:RemoveCredentials afin de rendre plus facile à l'utilisateur l'identification du compte Google correct (au lieu d'afficher simplement l'ID Google). Si la clé n'est pas correcte ou n'est pas fournie, GoogleLogin va afficher seulement l'ID Google. Pour une bonne expérience utilisateur, il est fortement suggéré de fournir cette clé d'API maintenant.

$wgGLShowRight
Supprimé sans être remplacé parce que les formulaires de connexion et d'enregistrement sont maintenant complètement gérés par AuthManager. Si vous voulez encore afficher la rubrique Connexion avec Google sur le côté droit du formulaire de connexion, vous devez créer une nouvelle extension (et probablement la partager avec nous ;)) qui s'accrocherait dans la génération de formulaire et qui ferait la gestion de ce formulaire.

$wgGLNeedsConfirmEmail
Supprimé sans être remplacé.

Client PHP de l'API Google
Cette extension utilise le client de API PHP Google (inclu dans les versions avant la 0.2.1), distribué sous la licence Apache 2.0. Le client peut être téléchargé de GitHub.

updatePublicSuffixArray.php
Le script de maintenance  télécharge une liste de noms de domaines sont valides pouvant être utilisés dans le monde entier. Ceci est nécessaire pour que GoogleLogin autorise les sous-domaines d'un domaine d'adresses courriel donné, lorsque vous avez restreint la connexion avec GoogleLogin pour des domaines spécifiques. Nécessaire que si  vaut false (valeur par défaut).