Jump to content

Manuel:table user_groups

From mediawiki.org
This page is a translated version of the page Manual:User groups table and the translation is 100% complete.
Manuel:Contenu Schéma de base de données MédiaWiki table user_groups
Version de MediaWiki :
1.5

La table user_groups associe les utilisateurs d'une installation MediaWiki donnée à leur droits utilisateur correspondants. Chaque groupe peut recevoir divers privilèges par l'intermédiaire de LocalSettings.php ou par les extensions; tous les utilisateurs d'un groupe particulier reçoivent ces autorisations en raison de leur appartenance au groupe. Comme cette table est distincte de la table user , ceci permet de créer une base de données partagée d'utilisateurs avec des droits qui changent selons le wiki, à l'intérieur d'une ferme de wikis. Cette table a été introduite en r5648, dans MediaWiki 1.5. Si vous utilisez MediaWiki 1.3 ou 1.4, consultez Manuel:Droits utilisateurs (anciennes versions) . Avant MediaWiki 1.5, les droits utilisateur se trouvaient dans le champ user_rights de la table user .

Tous les utilisateurs non enregistrés appartiennent automatiquement au groupe '*' et seulement à ce groupe; tous les utilisateurs enregistrés font également automatiquement partie du groupe 'user'. Les groupes d'utilisateurs sont additifs; par conséquent, tous les utilisateurs enregistrés reçoivent également les privilèges du groupe '*'. Autrefois, il y avait un bit sysop; maintenant, pour déclarer un utilisateur sysop il suffit d'ajouter une ligne à user_groups.

L'appartenance implicite aux groupes et les groupes auto promus tels que *, user, ou autoconfirmed ne sont pas stockés dans cette table. Pour obtenir tous les groupes effectifs utilisez UserGroupManager::getUserEffectiveGroups() .

Champs

ug_user

Ce champs pointe sur le user_id d'un utilisateur donné. C'est une clé externe utilisée pour lier les comptes et les droits qui leur sont assignés.

ug_group

Ce champ stocke les droits de l'utilisateur sous la forme d'une liste de groupes. Au moment de l'exécution, $wgGroupPermissions associera les clés des groupes aux autorisations particulières; un utilisateur aura les autorisations combinées de tous les groupes dans lesquels il se trouve explicitement, plus les groupes implicites '*' et 'user'. Exemple de valeurs de ug_group : bot, bureaucrate, sysop.

Il y a une ligne pour chaque groupe (explicite) auquel appartient l'utilisateur.

ug_expiry

Version de MediaWiki :
1.29

Ce champs indique la date d'expiration du groupe. Il est similaire à pr_expiry dans la table page_restrictions et ipb_expiry dans la table ipblocks .

Résumé du schéma

Version de MediaWiki :
1.29

DESCRIBE user_groups;

+-----------+------------------+------+-----+---------+-------+
| Field     | Type             | Null | Key | Default | Extra |
+-----------+------------------+------+-----+---------+-------+
| ug_user   | int(10) unsigned | NO   | PRI | 0       |       |
| ug_group  | varbinary(255)   | NO   | PRI |         |       |
| ug_expiry | varbinary(14)    | YES  | MUL | NULL    |       |
+-----------+------------------+------+-----+---------+-------+
Versions de MediaWiki :
1.21 – 1.28

DESCRIBE user_groups;

+----------+------------------+------+-----+---------+-------+
| Field    | Type             | Null | Key | Default | Extra |
+----------+------------------+------+-----+---------+-------+
| ug_user  | int(10) unsigned | NO   | PRI | 0       |       |
| ug_group | varbinary(255)   | NO   | PRI |         |       |
+----------+------------------+------+-----+---------+-------+
Versions de MediaWiki :
1.19 – 1.20

DESCRIBE user_groups;

+----------+------------------+------+-----+---------+-------+
| Field    | Type             | Null | Key | Default | Extra |
+----------+------------------+------+-----+---------+-------+
| ug_user  | int(10) unsigned | NO   | PRI | 0       |       |
| ug_group | varbinary(32)    | NO   | PRI |         |       |
+----------+------------------+------+-----+---------+-------+
Versions de MediaWiki :
1.10 – 1.18

DESCRIBE user_groups;

+----------+------------------+------+-----+---------+-------+
| Field    | Type             | Null | Key | Default | Extra |
+----------+------------------+------+-----+---------+-------+
| ug_user  | int(10) unsigned | NO   | PRI | 0       |       |
| ug_group | varbinary(16)    | NO   | PRI |         |       |
+----------+------------------+------+-----+---------+-------+
Versions de MediaWiki :
1.5 – 1.9

DESCRIBE user_groups;

+----------+-----------------+------+-----+---------+-------+
| Field    | Type            | Null | Key | Default | Extra |
+----------+-----------------+------+-----+---------+-------+
| ug_user  | int(5) unsigned | NO   | PRI | 0       |       |
| ug_group | char(16)        | NO   | PRI |         |       |
+----------+-----------------+------+-----+---------+-------+

Les index

Version de MediaWiki :
1.29

SHOW INDEX IN user_groups;

+-------------+------------+-----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
| Table       | Non_unique | Key_name  | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment |
+-------------+------------+-----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
| user_groups |          0 | PRIMARY   |            1 | ug_user     | A         |           0 |     NULL | NULL   |      | BTREE      |         |               |
| user_groups |          0 | PRIMARY   |            2 | ug_group    | A         |           0 |     NULL | NULL   |      | BTREE      |         |               |
| user_groups |          1 | ug_group  |            1 | ug_group    | A         |           0 |     NULL | NULL   |      | BTREE      |         |               |
| user_groups |          1 | ug_expiry |            1 | ug_expiry   | A         |           0 |     NULL | NULL   | YES  | BTREE      |         |               |
+-------------+------------+-----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+

Groupes MediaWiki par défaut

Dans une installation par défaut de MediaWiki, ug_group peut être l'une des options suivantes :

SELECT DISTINCT `ug_group` FROM `user_groups`;

+------------+
| ug_group   |
+------------+
| bot        |
| bureaucrat |
| sysop      |
+------------+