Jump to content

Manuel:ID centralisé

From mediawiki.org
This page is a translated version of the page Manual:Central ID and the translation is 100% complete.

L' ID centralisé identifie les utilisateurs au travers des wikis. Sur les installations où il n'y a qu'un seul wiki, cela équivaut à l'ID de l'utilisateur; pour les fermes de wikis qui utilisent un type de connexion centralisée, il est probablement assigné par l'extension d'authentification. Les administrateurs de site peuvent le configurer en initialisant $wgCentralIdLookupProvider .

Utiliser un fournisseur d'ID centralisé

Tout code qui interagit avec des données qui gagneraient à être disponible entre les wikis (par exemple, les détails d'authentification et d'autorisation, les blocages entre les wikis) devrait, au lieu de stocker les identifiants d'utilisateur locaux, stocker l'identifiant central et utiliser la classe CentralIdLookup pour convertir entre les noms d'utilisateur locaux et les identifiants centraux.

De telles extension doivent également permettre que leur données soient centralisées. Généralement, cela se fait en fournissant un domaine virtuel et en faisant quelque chose comme ceci pour obtenir une connexion à la base de données :

Version de MediaWiki :
1.42
$db = \MediaWiki\MediaWikiServices::getInstance()->getConnectionProvider()->getPrimaryDatabase( 'virtual-myextension' );

(in MW 1.40-1.41, use getDBLoadBalancerFactory() rather than getConnectionProvider)

Pour un exemple de code qui utilise les ID centralisés, voir SpecialBotPasswords.

Exemples de base

Obtention du fournisseur Central ID Lookup par défaut :

$lookup = \MediaWiki\MediaWikiServices::getInstance()->getCentralIdLookup();

Obtenir l'ID centralisé pour un utilisateur local :

$centralId = $lookup->centralIdFromLocalUser( $user );


Coder un fournisseur d'ID centralisé

Les extensions d'authentification unique doivent implémenter une sous-classe de CentralIdLookup et l'enregistrer dans $wgCentralIdLookupProviders .

Pour un exemple d'extension d'authentification unique fournissant des identifiants centraux, voir CentralAuthIdLookup dans Extension:CentralAuth . Voir la liste complète de ces extensions sur Catégorie:Fournisseurs CentralIdLookup .