Příručka:Databázová tabulka user_groups
↑ Manuál:Obsah | MediaWiki schéma databáze | Tabulka user_groups |
Verze MediaWiki: | ≥ 1.5 |
Tabulka user_groups mapuje uživatele v konkrétní instalaci MediaWiki na jejich odpovídající uživatelská práva. Každé skupině lze přiřadit různá oprávnění prostřednictvím LocalSettings.php nebo přes rozšíření. Všichni uživatelé určité skupiny mají tato oprávnění udělena jako výsledek jejich členství ve skupině. Protože je tabulka oddělená od tabulky user , umožňuje to vytvoření sdílené databáze uživatelů s oprávněními, která se liší od wiki k wiki v rámci wiki farmy. Tato tabulka byla představena na r5648, v MediaWiki 1.5. Pokud používáte MediaWiki 1.3 nebo 1.4, podívejte se na Manual:User rights (older versions) . Před MediaWiki 1.5 byla uživatelská práva uložena v poli user_rights v tabulce user .
Všichni neregistrovaní uživatelé automaticky patří do skupiny '*'
a pouze do této skupiny. Všichni registrovaní uživatelé jsou navíc automaticky součástí skupiny 'user'
.
Skupiny uživatelů jsou aditivní. V důsledku toho mají všichni registrovaní uživatelé všechna oprávnění přiřazená také skupině '*'
.
Dříve byl "sysop bit". Nyní, když uděláte z uživatele sysopem, přidává řádek do user_groups
.
*
, user
nebo autoconfirmed
nejsou v této tabulce uloženy. K načtení všech efektivních skupin použijte UserGroupManager::getUserEffectiveGroups()
.
Pole
ug_user
Toto pole odkazuje na user_id daného uživatele. Je to cizí klíč používaný k propojení účtů s jejich přiřazenými oprávněními.
ug_group
V tomto poli jsou uložena uživatelská oprávnění, která jsou uložena jako skupiny.
$wgGroupPermissions za běhu přiřadí skupinové klíče ke konkrétním oprávněním. Uživatel bude mít kombinovaná oprávnění jakékoli skupiny, ve které se explicitně nachází, plus implicitní skupiny '*'
a 'user'
.
Příklad hodnot ug_group
: 'bot', 'byrokrat', 'sysop'.
Pro každou (explicitní) skupinu, ve které je uživatel, existuje jeden řádek.
ug_expiry
Verze MediaWiki: | ≥ 1.29 |
V tomto poli je uložen čas vypršení platnosti skupiny uživatelů. Je to podobné jako pr_expiry v tabulce page_restrictions a ipb_expiry v tabulce ipblocks .
Přehled změn ve schématu tabulky
Verze 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 | | +-----------+------------------+------+-----+---------+-------+
Verze 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 | | | +----------+------------------+------+-----+---------+-------+
Verze 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 | | | +----------+------------------+------+-----+---------+-------+
Verze 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 | | | +----------+------------------+------+-----+---------+-------+
Verze 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 | | | +----------+-----------------+------+-----+---------+-------+
Indexy
Verze 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 | | | +-------------+------------+-----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
Výchozí skupiny MediaWiki
Ve výchozí instalaci MediaWiki může být ug_group jedna z následujících:
SELECT DISTINCT `ug_group` FROM `user_groups`;
+------------+ | ug_group | +------------+ | bot | | bureaucrat | | sysop | +------------+