Jump to content

Extension:CentralAuth

From mediawiki.org
This page is a translated version of the page Extension:CentralAuth and the translation is 98% complete.
Outdated translations are marked like this.
Manuel des extensions MediaWiki
CentralAuth
État de la version : stable
Implémentation Identité de l'utilisateur , Base de données , Page spéciale , API
Description Permet de fusionner des comptes dans des comptes globaux
Auteur(s) Brooke Vibberdiscussion
Politique de compatibilité Versions ponctuelles alignées avec MediaWiki. Le master n'est pas compatible arrière.
MediaWiki >= 1.43
Modifie la base
de données
Oui
Domaine virtuel virtual-centralauth
Tables globalnames
localnames
globaluser
localuser
global_user_groups
global_group_permissions
wikiset
global_group_restrictions
renameuser_status
renameuser_queue
users_to_rename
global_edit_count
global_user_autocreate_serial
Licence Licence publique générale GNU v2.0 ou supérieur
Téléchargement
  • $wgCentralAuthAutoLoginWikis
  • $wgCentralAuthCookiePath
  • $wgCentralAuthEnableSul3
  • $wgCentralAuthAutomaticVanishPerformer
  • $wgCentralAuthReadOnly
  • $wgCentralAuthIpoidRequestTimeoutSeconds
  • $wgCentralAuthAutoMigrate
  • $wgCentralAuthFallbackAppealUrl
  • $wgCentralAuthBlockAppealWikidataIds
  • $wgCentralAuthSharedDomainPrefix
  • $wgCentralAuthEnableGlobalRenameRequest
  • $wgCentralAuthRestrictSharedDomain
  • $wgCentralAuthIpoidCheckAtAccountCreation
  • $wgCentralAuthGlobalPasswordPolicies
  • $wgCentralAuthCookieDomain
  • $wgCentralAuthWikisPerSuppressJob
  • $wgCentralAuthFallbackAppealTitle
  • $wgCentralAuthCookies
  • $wgCentralAuthIpoidCheckAtAccountCreationLogOnly
  • $wgCentralAuthRC
  • $wgCentralAuthGlobalBlockInterwikiPrefix
  • $wgCentralAuthAutoMigrateNonGlobalAccounts
  • $wgCentralAuthDatabase
  • $wgCentralAuthDryRun
  • $wgCentralAuthIpoidUrl
  • $wgCentralAuthWikidataApiUrl
  • $wgCentralAuthPrefsForUIReload
  • $wgCentralAuthIpoidDenyAccountCreationTunnelTypes
  • $wgCentralAuthLoginIcon
  • $wgCentralAuthStrict
  • $wgCentralAuthTokenSessionTimeout
  • $wgCentralAuthLoginWiki
  • $wgCentralAuthIpoidDenyAccountCreationRiskTypes
  • $wgCentralAuthSessionCacheType
  • $wgGlobalRenameDenylist
  • $wgCentralAuthOldNameAntiSpoofWiki
  • $wgCentralAuthRejectVanishUserNotification
  • $wgCentralAuthAutoCreateWikis
  • $wgCentralAuthCookiePrefix
  • centralauth-createlocal
  • centralauth-merge
  • centralauth-unmerge
  • centralauth-lock
  • centralauth-suppress
  • globalgrouppermissions
  • globalgroupmembership
  • centralauth-rename
Téléchargements trimestriels 47 (Ranked 93rd)
Traduire l’extension CentralAuth sur translatewiki.net si elle y est disponible
Problèmes Tâches ouvertes · Signaler un bogue

CentralAuth permet de fusionner plusieurs systèmes de comptes distincts existants dans un seul système de comptes global.

Avertissement Avertissement : CentralAuth a été conçu tout particulièrement pour les projets Wikimedia qui avaient déjà des millions de comptes à fusionner dans une table globale.

Si vous commencez une nouvelle ferme de wiki à partir de rien et que vous n'avez pas de comptes à fusionner dans une table globale, il est beaucoup plus facile de définir les comptes globaux en utilisant $wgSharedDB plutôt que CentralAuth.[1][2]

Néanmoins, $wgSharedDB n'est utile que pour empêcher les conflits de création des noms d'utilisateur, et ne génère rien qui serait une connexion universelle (à la place, les utilisateurs doivent se connecter sur chaque wiki), ou des droits utilisateur inter-grappe ou de gestion. Cette extension fournit la fonctionnalité annoncée, au prix de la difficulté.

Si vous utilisez cette extension sur un wiki tiers, il est probable que vous aurez à résoudre des problèmes complexes qui nécessitent potentiellement de se plonger dans le code source pour les résoudre.

Vous avez été averti.

Installation

Pour connaître les conditions d'utilisation de CentralAuth, voir ci-dessous le paragraphe sur la configuration. Suivez ensuite ces instructions lorsque vous êtes prêt à activer CentralAuth :

  1. Installez Extension:AntiSpoof/fr , car c'est une dépendance requise.
  2. Téléchargez la dernière image et développez-la dans votre répertoire extensions .
  3. Choisissez une base de données et créez les tables de la base de données CentralAuth. Vous pouvez utiliser une base de données existante ou en créer une nouvelle (l'extension par défaut utilise la base de données locale du wiki, ce qui est pratique pour les tests automatisés mais n'a pas vraiment de sens sur une vraie ferme wiki (car elle sera différente pour chaque wiki quand le but de CentralAuth est de partager des données entre les wikis) alors vous devrez reconfigurer cela. Voir $wgVirtualDomainsMapping['virtual-centralauth'] ci-dessous). Utilisez cette base de données puis exécutez tables-generated.sql.
    • Si vous utilisez Extension:AntiSpoof/fr vous devrez créer une table globale spoofuser (pour bloquer les nouveaux noms d'utilisateur qui ressembleraient à des noms d'utilisateurs déjà existants sur les wikis). Une manière de faire ceci est de vider la table spoofuser à partir de la base de données locale du wiki et de l'importer dans le nouveau $wgVirtualDomainsMapping['virtual-centralauth'].
  4. Ajoutez wfLoadExtension( 'CentralAuth' ); à votre LocalSettings.php pour chacun de vos wikis, ou dans un autre fichier PHP inclus dans LocalSettings.php de chacun de vos wikis.
  5. L'extension CentralAuth devrait maintenant être active.

Créer une nouvelle base de données

Voici des exemples de commandes shell et SQL pour créer la base de données centralauth, copiez la table spoofuser à l'intérieur, et migrez-y les données utilisateur existantes. Remplacez $wgDBname et $wgDBuser par les valeurs concernant l'installation de votre propre wiki.

Créez la nouvelle base de données (notez que cette étape est facultative, vous pouvez utiliser à la place l'une de vos bases de données existantes, et dans ce cas passez directement à l'étape de création des tables) :

$ cd extensions/CentralAuth
$ mysql -u root -p
(entrer le mot de passe de l'utilisateur SQL racine)
CREATE DATABASE centralauth;
USE centralauth;
GRANT all on centralauth.* to '$wgDBuser'@'localhost';
quit

Exécuter les scripts de maintenance

Dans ce qui suit on suppose que votre répertoire de travail actuel est celui de votre installation MediaWiki (et non pas celui de CentralAuth). Créez les tables central auth (il est préférable d'utiliser sql.php .

php maintenance/run.php sql --wikidb centralauth extensions/CentralAuth/schema/<type_de_base_de_données>/tables-generated.sql

Si AntiSpoof est installé, créez la table avec la commande suivante (par ailleurs vous pouvez copier une table AntiSpoof existante si vous voulez conserver les entrées précédentes) :

php maintenance/run.php sql --wikidb centralauth extensions/AntiSpoof/sql/<type_de_base_de_données>/tables-generated.sql

Exécutez les scripts de migration des utilisateurs

$ php maintenance/run.php CentralAuth:migratePass0.php
$ php maintenance/run.php CentralAuth:migratePass1.php

Mise à jour

CentralAuth est conçu pour les grandes fermes de wiki qui exécutent manuellement des mises à jour de base de données afin de permettre des mises a jour avec un temps de panne à zéro. Pour cette raison, la base de données CentralAuth ne sera pas mise à jour avec le processus de mise à niveau habituel. A la place, les utilisateurs tiers doivent suivre le développement de CentralAuth et appliquer les migrations de la base de données manuellement.

Configuration

Avertissement Avertissement : Un wiki de connexion centralisée est nécessaire si vous voulez une connexion universelle sur tous les différents domaines primaires (par exemple lorsque vos wikis ne sont pas dans des sous-domaines d'un même domaine). Voir ci-dessous pour les détails.

D'abord il faut configurer votre famille de wikis en utilisant $wgConf , sinon CentralAuth ne peut être utilisé pour votre famille de wikis. Cela comprend la définition de $wgLocalDatabases et son initialisation à $wgConf->wikis, et $wgConf->settings (le minimum est $wgCanonicalServer , $wgServer et $wgArticlePath ). Suivez les exemples soigneusement. Si vous créez une nouvelle famille de wiki, gardez à l'esprit que cela peut être plus facile si les bases de données des wikis de chaque groupe ont le même suffixe (par exemple avec les bases de données hypothétiques enwiki, dewiki, frwiki, etc., appartenant aux wikis d'un même groupe, elles ont toutes le même suffixe wiki).

Après avoir installé l'extension, vous devez réunir quelques données dans la base de données de CentralAuth. Pour déclarer des comptes globaux a posteriori, vous devrez exécuter les scripts migratePass0.php et migratePass1.php . Le premier range les informations concernant vos wikis dans la base de données de CentralAuth, alors que le second utilise les heuristiques de migration automatique pour générer les comptes globaux. Les utilisateurs peuvent fusionner leur compte manuellement via Special:MergeAccount. Les exécutions à vide (dry runs) peuvent être utilisées à des fins de tests.

Pour autoriser les groupes globaux vous devrez créer une entrée dans la table global_group_permissions de votre base de données CentralAuth, avec ggp_group='steward' et (pour l'accès à l'interface de gestion des groupes) ggp_permission=globalgrouppermissions. Un exemple d'utilisation de requête que l'on recommande est :

INSERT INTO global_group_permissions (ggp_group,ggp_permission) VALUES ('steward','globalgrouppermissions'), ('steward','globalgroupmembership');

Then, promote some users into stewards:

INSERT IGNORE INTO global_user_groups (gug_user, gug_group) VALUES ((SELECT gu_id FROM globaluser WHERE gu_name='Admin'), 'steward');

Il existe différents paramètres que vous pouvez modifier (par exemple si vous voulez fournir la connexion unique à travers tout le domaine) listés dans CentralAuth.php. En particulier, vous pouvez remplacer la valeur par défaut de $wgVirtualDomainsMapping['virtual-centralauth'] si votre base de données CentralAuth a un nom différent de $2. Assurez-vous de mettre ce type de paramètre après la ligne wfLoadExtension de LocalSettings.php, par exemple :

wfLoadExtension( 'CentralAuth' );
$wgVirtualDomainsMapping['virtual-centralauth'] = [ 'db' => 'centralauth' ];

Comportement « SUL2 »

Avertissement Avertissement : Tant que tous les utilisateurs connectés ont une session dans le wiki central de connexion, il vous est recommandé de configurer les nouveaux wikis avec aussi peu d'extensions installées que possible (dans ce but il ne faut pas utiliser un wiki existant). Ceci va réduire le risque d'attaque XSS.
Avertissement Avertissement : La connexion universelle peut s'interrompre avec les versions les plus récentes de Google Chrome à cause des règles présentes sur les cookies SameSite. Pour le corriger, vous devez ajouter :
$wgCookieSameSite = "None";
$wgUseSameSiteLegacyCookies = true;
En plus il faudra exécuter votre site sous HTTPS.


En juillet 2013 la Fondation Wikimedia a modifié son approche pour connecter les utilisateurs sur des wikis multiples. Lorsqu'il est configuré pour cette nouvelle approche, après une connexion et une création de compte réussie, CentralAuth redirige vers Special:CentralLogin/start?token=somevalue sur un wiki central de connexion, qui crée les cookies sur ce wiki puis redirige à nouveau vers le wiki à partir duquel vous vous êtes connecté. Il supprime la page de « connexion / création réussie de compte » et à la place redirige l'utilisateur sur « retour vers » la page où il se trouvait intialement. Il insère des images de 1 x 1 pixel dans le pied de page de cette page, à la place des icônes utilisées antérieurement sur la page de « connexion / création réussie de compte ».

Les paramètres pour ceci sont en gros :

# Configuration générale de CentralAuth
$wgCentralAuthCookies = true;
// La valeur par défaut est $1
$wgVirtualDomainsMapping['virtual-centralauth'] = [ 'db' => 'centralauthDatabaseName' ];
$wgCentralAuthAutoMigrate = true;
$wgCentralAuthAutoLoginWikis = [
    # Correspondance entre le nom du domaine et l'id du wiki pour les autres wikis viennent se connecter automatiquement
    'enwiki.mediawiki.mwdd.localhost' => 'enwiki',
];

# active la redirection vers le "wiki central de connexion"
$wgCentralAuthLoginWiki = 'WikiIdOfLoginWiki';

$wgCentralAuthLoginWiki est l'id (généralement le nom de la base de données) du wiki vers lequel CentralAuth va rediriger lors de la connexion ou de la création d'un compte.

Problèmes du cache

Pour de meilleurs résultats, il est recommandé d'utiliser le cache mémoire ou un cache plus persistant. Si vous n'avez qu'un seul serveur, les caches d'accélération (CACHE_ACCEL) tels que APCu peuvent également fonctionner, mais il ne faut pas les utiliser si vous avez plusieurs serveurs. Si vous utilisez aucun cache (par exemple CACHE_NONE) pour $wgMainCacheType, ou si vous utilisez CACHE_DB, alors assurez-vous que tous vos wikis utilisent la même table de cache.

Par défaut, tous les wikis de votre ferme de wikis vont utiliser la table objectcache dans leur propre base de données (avec leur propre préfixe de base de données) lorsque $wgMainCacheType est initialisé à CACHE_NONE ou CACHE_DB. Pour que cela fonctionne avec CentralAuth, nous devons dire aux wikis d'utiliser une table centrale en cache.

Si vous voulez créer une table centrale de cache dans la base de données centralauth (et en supposant que l'un de vos wikis existant possède une base de données de nom enwiki), exécutez un code similaire au suivant pour copier la table dans cette autre base (en supposant que vous ayez un wiki installé avec une base de données appelée « enwiki » et une autre base de données appelée « centralauth ») :

CREATE TABLE centralauth.objectcache LIKE enwiki.objectcache

Puis ajoutez la configuration suivante à tous les wikis pour leur dire d'utiliser la table centrale au lieu de leur table locale :

$wgSharedDB = 'centralauth'; // ou tout autre base de données que vous utiliser pour les données centralisées
$wgSharedTables = [ 'objectcache' ]; // rappelez-vous de copier la structure de la table dans la base de données centrale d'abord
$wgCentralAuthSessionCacheType = CACHE_DB; // dites à Mediawiki d'utiliser la base de données de l'objet en cache pour CentralAuth.

When running PHPUnit tests locally with your wiki farm and do not want them to fail due to an attempt to clone database tables with the shared tables config above, use:

if ( defined( 'MW_PHPUNIT_TEST' ) ) {
	$wgSharedTables = [];
} else {
	$wgSharedTables = [ 'objectcache' ];
}

HTTP et HTTPS

Depuis 2023, CentralAuth ne prend pas en charge les wikis à protocole mixte HTTP/HTTPS, mais uniquement les wikis HTTPS purs (avec $wgForceHTTPS valant true) et les wikis HTTP purs (principalement pour les tests locaux). See issue T348852.

Configuration

Database Virtual Domains Mapping

Since MediaWiki 1.41, you can configure database virtual domains mapping for CentralAuth, and this replaced $wgCentralAuthDatabase. To setup virtual domains mapping with CentralAuth, use:

// 'centralauth' is the name of the your CentralAuth database.
$wgVirtualDomainsMapping['virtual-centralauth'] = [ 'db' => 'centralauth' ];
Paramètres de configuration de Extension.json Config section
paramètre par défaut commentaire
(deprecated) $wgCentralAuthDatabase null Nom de la base de données qui héberge les données de centralAuth.

Si elle ne correspond pas à la connexion de la base de données primaire, n'oubliez pas de définir également $wgDBservers pour avoir une entrée avec un paramètre groupLoads pour le groupe 'CentralAuth'. Vous pouvez par ailleurs utiliser $wgLBFactoryConf pour déclarer un objet LBFactoryMulti.

Pour utiliser une base de données avec un préfixe de table, initialisez cette variable avec « {$database}-{$prefix} ».

NOTE: This setting has been deprecated, use virtual domains mapping as described above.

$wgCentralAuthAutoMigrate false Si true, les comptes existants non attachés seront automatiquement migrés à la première connexion, si cela est possible.

Toute création de nouveau compte devra s'attacher.

Si false, les comptes non attachés ne seront pas perturbés à moins que le compte individuel a choisi la migration.

$wgCentralAuthAutoMigrateNonGlobalAccounts false Si true, les comptes non attachés existants pour lesquels il n'y a pas de compte global seront comparés pour voir si une fusion peut être faite sans problème, sur la base des mots de passe et des adresses courriels (fusion de tous les comptes).

Ceci était initialement contrôlé par $wgCentralAuthAutoMigrate

$wgCentralAuthStrict false Si true, il ne sera pas possible de se connecter avec les comptes restants non encore attachés, tant qu'ils n'auront pas été résolus.
$wgCentralAuthDryRun false Si true, la fusion ne sera pas actuellement possible par l'interface Special:MergeAccount.
$wgCentralAuthCookies false Si true, la session globale ainsi que les cookies des jetons seront créés au fur et à mesure des sessions par wiki et des jetons de connexion, lorsque les utilisateurs se connecteront avec leur compte global.

Ceci permet de se connecter de manière transparente aux autres wikis du même domaine.

$wgCentralAuthLoginWiki false Nom de la base de données d'un wiki à connexion centralisée. C'est une alternative à la déclaration directe de cookies inter domaines pour chaque wiki de $wgCentralAuthAutoLoginWikis. S'il est initialisé, un wiki unique de connexion va utiliser une session (un cookie) pour gérer les sessions universelles de connexion sur tous les chaque wikis.

A la connexion, les utilisateurs seront redirigés vers la page Special:CentralLogin/login du wiki de connexion, puis vers Special:CentralLogin à nouveau, sur le wiki d'origine. Dans le processus, le cookie et la session du wiki de connexion centrale sont définis. Au fur et à mesure que l'utilisateur accède à d'autres wikis, le wiki de connexion sera vérifié par JavaScript afin de connaître l'état de la connexion et pour définir la session locale ainsi que les cookies.

Cela nécessite $wgCentralAuthCookies.

$wgCentralAuthCookieDomain '' Domaines pour les cookies globaux.

Par exemple, '.wikipedia.org' pour fonctionner sur tous les sous-domaines wikipedia.org au lieu du sous-domaine courant simplement. Laisser vide pour définir le cookie pour le domaine actuel uniquement, comme si tous vos wikis étaient hébergés dans le même sous-domaine.

$wgCentralAuthCookiePrefix 'centralauth_' Préfixe pour les cookies d'authentification globale CentralAuth.
$wgCentralAuthCookiePath '/' Chemin pour les cookies d'authentification globale CentralAuth. Initialisez cette variable si vous souhaitez restreindre les cookies à un certain chemin à l'intérieur du domaine spécifié par $wgCentralAuthCookieDomain.
$wgCentralAuthAutoLoginWikis [] Liste des ID de wikis qui doivent être appelés lors de la connexion pour essayer de définir les cookies tiers pour l'état de la session globale.

L'ID du wiki est typiquement le nom de la base de données, sauf quand les préfixes de table sont utilisées, auquel cas il s'agit du nom dela base de données, un tiret séparateur, puis le préfixe de la table.

Ceci permet à une ferme de wikis avec plusieurs domaines de second ordre d'établir une session globale sur chacun d'eux en accédant à l'un des wikis de chaque domaine (en.wikipedia.org, en.wikinews.org, etc).

Fait en accèdant à Special:CentralAutoLogin/start sur chaque wiki.

S'il est vide, aucun autre wiki ne sera atteint.

La clé doit être initialisée avec le nom de domaine du cookie.

$wgCentralAuthAutoCreateWikis [] Liste des ID des wikis sur lesquels un compte local attaché doit être créé automatiquement quand le compte global est créé.

L'ID du wiki est typiquement le nom de la base de données, sauf quand vous utilisez un préfixe de table, auquel cas il correspond au nom de la base de données suivi d'un tiret séparateur et du préfixe de la table.

$wgCentralAuthLoginIcon false Le chemin de l'icône, dans le système de fichiers local rendu par Special:CentralAutoLogin, doit être celui d'un PNG de 20x20 pixels.
$wgCentralAuthPrefsForUIReload [ 'skin', 'language', 'thumbsize', 'underline', 'stubthreshold', 'showhiddencats', 'justify', 'numberheadings', 'editondblclick', 'editsection', 'editsectiononrightclick', 'usenewrc', 'extendwatchlist' ] Préférences utilisateur pour lesquelles il faut recommander le rechargement de la page après une requête réussie de connexion centrale.

Si vous souhaitez faire quelque chose de plus compliqué qu'uniquement $userOptionsLookup->getOption( $user, $pref ) !== $userOptionsLookup->getDefaultOption( $pref ), utilisez l'accroche CentralAuthIsUIReloadRecommended.

$wgCentralAuthRC [] Tableau de paramètres pour envoyer les événements CentralAuth vers les flux RC.

@example $wgRCFeeds['example'] = [ 'uri' => "udp://localhost:1336" ];

$wgCentralAuthWikisPerSuppressJob 10 Taille des wikis gérés dans une tâche de supression d'utilisateur. Gardez à l'esprit qu'un wiki nécessite ~10 requêtes.
$wgCentralAuthReadOnly false Comme $wgReadOnly, utilisé pour que l'extension mette la base de données en mode lecture seule.

@var bool

$wgCentralAuthEnableGlobalRenameRequest false Drapeau de fonctionnalité pour Special:GlobalRenameRequest.

@var bool

$wgCentralAuthGlobalPasswordPolicies [] Règles pour le mot de passe global. Celles-ci sont appliquées comme les règles concernant les mots de passe locaux, la règle la plus forte applicable à un utilisateur est utilisée. Les règles peuvent s'appliquer soit à un groupe local (si l'utilisateur est membre de ce groupe quelque soit le wiki, elles s'appliqueront à cet utilisateur) soit à un groupe global.

@var array

$wgGlobalRenameDenylist null liste d'utilisateurs qui ne seront pas autorisés à créer de nouvelles demandes de renommage globaux via Special:GlobalRenameRequest.

Il existe deux manières de le déclarer :

  • Utilisation d'une page wiki : utilisez un objet Title pour obtenir une page wiki (MediaWiki:GlobalRenameDenylist par exemple) comme liste interdite. La page wiki doit être une liste avec un élément par ligne, et doit exister sinon Special:GlobalRenameRequest va générer un MWException.
    Exemple : $wgGlobalRenameDenylist = Title::makeTitle( NS_MEDIAWIKI, 'GlobalRenameDenylist' );.
  • Utilisation d'une URL : mettre une URL complète qui doit renvoyer en utilisant HTTP, une liste en texte clair des utilisateurs interdits (et rien d'autre).
    Par exemple, avec une URL qui pointe sur une page wiki : $wgGlobalRenameDenylist = "https://yourwiki/yourpath/index.php?title=MediaWiki:GlobalRenameDenylist&action=raw";

Vous pouvez utiliser les noms exacts ou des expressions régulières.

@var Title|string|null

$wgCentralAuthGlobalBlockInterwikiPrefix "global" Lorsqu'on supprime un utilisateur globalement, le blocage de cet utilisateur est inséré dans tous les wikis. CentralAuth définira l'auteur de ces blocages comme $wgCentralAuthGlobalBlockInterwikiPrefix>(pseudo de l'utilisateur qui fait la suppression).. Par exemple, si $wgCentralAuthGlobalBlockInterwikiPrefix = "Admins";, et Joe supprime John, tous les wikis afficheront dans BlockList un bloc contre John fait par Admins>Joe.

@var string

Utilisation

Permet au système de connexion unique des utilisateurs (SUL) d'utiliser le système AuthPlugin de MediaWiki. La création des utilisateurs ainsi que leurs connexions sont gérées globalement en utilisant une table centralisée des utilisateurs pour tous les wikis. Notez néanmoins que les comptes des utilisateurs locaux sont créés automatiquement à la création de compte ou à la connexion.

Cette extension implémente également les groupes d'utilisateurs globaux, auxquels les comptes globaux peuvent appartenir.

Droits utilisateur

CentralAuth définit plusieurs nouveaux droits utilisateur :

Droit utilisateur Capacité Groupe par défaut Etat
centralauth-createlocal Force la création d'un compte local pour un compte global. Stewards et administrateurs système Actif dans MW 1.36+
centralauth-lock Empêche les utilisateurs de se connecter sur tout wiki. Stewards Actif
centralauth-suppress Supprimer ou démasquer les comptes globaux Stewards Actif
centralauth-rename Renommer les comptes globaux Stewards Actif
centralauth-unmerge Extraire les comptes globaux d'un compte local Stewards Actif
centralauth-merge Fusionner tous les comptes CentralAuth de manière globale Tous utilisateurs Actif; automatique habituellement
globalgrouppermissions Gérer les autorisations pour les groupes globaux Stewards globaux Actif; par défaut, non assigné aux stewards locaux
globalgroupmembership Modifier l'appartenance aux groupes globaux Stewards globaux Actif; par défaut, non assigné aux stewards locaux

Fonctions

Connexion unique de l'utilisateur (SUL)

Les utilisateurs ayant un compte sur plusieurs wikis peuvent utiliser Special:MergeAccount pour créer leur compte global qui pourra ensuite être utilisé sur tout wiki. Les utilisateurs ayant les droits centralauth-unmerge (attribués par défaut aux stewards) peuvent annuler une fusion de compte global et remettre les mots de passe aux valeurs qu'ils avaient avant l'opération de fusion. Les comptes utilisateur peuvent maintenant aussi être renommés globalement.

Blocage et masquage des utilisateurs globaux

Capture d'écran de l'interface Special:CentralAuth de Meta-Wiki, montrant l'interface de verrouillage/masquage .

Un compte global peut être bloqué (locked) ou masqué (hidden) par un utilisateur qui a respectivement les droits centralauth-lock et centralauth-suppress, attribués par défaut au groupe 'stewards' local. Un compte global verrouillé est déconnecté immédiatement de toute session, quelque soit le wiki sur lequel il se trouve actuellement connecté. Un nom d'utilisateur global masqué n'apparaît dans aucun journal sauf dans le journal des comptes globaux.

Ensembles de wikis

Un ensemble de wikis (wiki set) est un groupe de wikis spécifié par un utilisateur ayant les droits globalgrouppermissions . Les valeurs sont opt-in (si les wikis ne sont pas dedans par défaut) et opt-out (si les wikis sont inclus à moins d'en avoir été sortis).

Groupes globaux d'utilisateurs

Une fois les groupes d'utilisateurs globaux activés comme décrit dans la section installation, un steward migré peut utiliser l'interface Special:GlobalGroupPermissions pour configurer les groupes d'utilisateurs globaux, avec leurs droits associés. Un groupe d'utilisateurs globaux est actif par défaut sur tous les wikis (les utilisateurs de ce groupe possèdent partout les droits qui lui sont attribués) sauf si ce groupe a été spécifié comme étant actif sur un ensemble prédéfini de wikis (les utilisateurs du groupe n'ont alors les droits que sur le wiki prédéfini où ils se trouvent). Les droits des groupes globaux ne sont pas listées sur Special:ListUsers, mais plutôt sur Special:GlobalUsers. Ils sont assignés par un utilisateur ayant les droits globalgroupmembership (par défaut il s'agit du groupe global stewards), et donnent les droits spécifiques à l'utilisateur même si les droits locaux définis par $wgGroupPermissions ne les donnent pas.

Licences et téléchargements

L'extension est disponible sous la licence publique générale GNU 2.0 ou supérieure, et peut être téléchargée de Git, ou accédée via l'interface web.

Le logiciel est fourni en l'état. Les mises à jour seront faites en fonction des besoins des wikis Wikimedia; ou là où des points sensibles au niveau sécurité seront découverts.

API

Voir Extension:CentralAuth/API .

Références

Voir aussi