Extension:CentralAuth/uk

CentralAuth allows merging several existing separate account systems into one global account system.

Встановлення
Передумови використання CentralAuth див. у розділі встановлення нижче. Тоді слідуйте цими інструкціями, коли будете готові активувати CentralAuth:


 * 1) Завантажте останній зняток і розпакуйте його у свою директорію.
 * 2) Оберіть базу даних і створіть таблиці CentralAuth. Можна використати наявну базу даних або створити нову; розширення за замовчуванням використовує базу даних на ім'я   (див. нижче ). Використайте цю базу даних, потім виконайте.
 * 3) * Якщо ви використовуєте, то вам потрібно створити глобальну таблицю  (для блокування нових імен користувачів, схожих на наявні в будь-якій вікі). Один зі способів зробити це — вивантажити таблицю   з бази даних локальної вікі й імпортувати її у нову.
 * 4) Додайте до  для кожної своєї вікі, чи в інший файл PHP, який включено до   кожної з ваших вікі.
 * 5) Тепер розширення повинно бути активним.

Тут приклад команд оболонки й SQL для створення бази даних centralauth, копіювання таблиці spoofuser і міграції наявних користувачів до неї. Замініть $wgDBname і $wgDBuser значеннями для інсталяції вашої власної вікі.

Створіть нову базу даних (пам'ятайте, що цей крок необов'язковий, можна натомість використати одну з наявних баз даних, у цьому випадку пропустіть до кроку створення таблиць):

Наступне припускає, що ваша теперішня робоча директорія є інсталяцією вашого MediaWiki (а не директорією CentralAuth). Створіть таблиці центральної авторизації (бажано з використанням.

Якщо інстальований AntiSpoof, то створіть таблицю через (Альтернативно, можете скопіювати наявну таблицю AntiSpoof, якщо бажаєте зберегти попередні записи):

Виконайте сценарії міграції користувачів

Upgrading
CentralAuth is designed for large wiki farms who run database updates manually in order to enable zero-downtime upgrades. For that reason, the CentralAuth database will not be updated with the usual upgrade process. Third-party users are expected to follow CentralAuth development and apply database migrations manually instead.

Встановлення
Спершу, вам потрібно сконфігурувати свою вікі-родину, використовуючи, або CentralAuth не зможе використовуватися для вашої вікі-родини. Це включає встановлення і присвоєння її, та  (мінімально ,  і ). Обережно слідуйте прикладам. Впевніться в розміщенні конфігураційного коду після рядка у. Якщо ви створюєте нову вікі-родину, то майте на увазі, що може бути легше, якщо бази даних для вікі в кожній групі матимуть той самий суфікс (наприклад, гіпотетичні бази даних,  ,   тощо, що належать одній і тій самій групі, всі мають суфікс « »).

Після інсталяції розширення, ви маєте зібрати деякі дані у базу даних CentralAuth. Задля ретроактивного встановлення глобальних облікових записів, ви матимете виконати сценарії та. Перший зберігає інформацію про ваші вікі у базі даних CentralAuth, а другий — використовує автоматичну евристику міграції для генерації глобальних облікових записів. Користувач може злити свої облікові записи вручну через Special:MergeAccount. Сухі запуски можуть бути використані з метою тестування.

Для увімкнення глобальних груп, ви матимете зробити запис у таблицю  своєї бази даних CentralAuth, з   та (для доступу до інтерфейсу керування групами). Рекомендований до використання зразок запиту:. Тоді, виконайте  для підвищення статусу локальних стюардів до глобальних.

Є різні налаштування, які ви можете захотіти змінити (наприклад, чи забезпечувати єдиний вхід крізь увесь домен), перелічені на. Зокрема, ви можете захотіти перевизначити значення за замовчування, що ваша база даних CentralAuth називається інакше, ніж. Переконайтеся, що ви помістили такі налаштування після рядка  у , наприклад:



Поведінка «SUL2»
In July 2013 WMF changed its approach to logging users into multiple wikis. When configured for this new approach, after successful login and account creation CentralAuth redirects to  on a "central login wiki", which sets cookies on that wiki and then redirects back to the logged-into wiki. It omits the "login/account creation success" page, instead redirecting back to the "returnto" page that the user was originally on. It places 1x1 pixel images in the footer of that page, in place of the icons formerly used on the "login/account creation success" page.

The settings for this are, roughly,

is the id (usually the database-name) of the wiki to which CentralAuth will redirect on login and create account.



Проблеми кешування
For best results, it is recommended to use memcached. If you have only a single server, accelerator caches like APCu can also work, but do not use them if you have multiple servers. If you have no cache set up (i.e. ) for, or are using  , then you need to make sure all your wikis use the same caching table.

By default, each wiki in your wiki farm will use the  table in its own database (with its own db prefix) when  is set to   or.

To make this work with CentralAuth, we need to tell the wikis to use a central cache table.

If you want to make a central caching table in the  database (and assuming one of your existing wikis has a database name of  ), run code like the following to copy the table to your other database:

Then add the following config to all wikis to tell them to use the central table instead of their own table:

Використання
Allows for a single-user login (SUL) system using MediaWiki's AuthPlugin system. User creation and login is done globally using one central user table across all wikis. Note that local user accounts are automatically created on account creation/login however.

This extension also implements global user groups, to which global accounts can belong to.



Права користувачів
CentralAuth defines several new user rights:

Single-user login (SUL)
A user with an account on more than one wiki may use Special:MergeAccount to create their global user account, which can then be used on any wiki. Users with the  permission (given to stewards by default) can undo a merging of a global account, where the passwords are all reset back to the pre-merge setting. User accounts can now also be renamed globally.



Блокування та приховання глобальних користувачів
A global account can be locked or hidden by a user with the  and   permissions, respectively, given to the local group 'stewards' by default. A locked global account will be immediately logged out of any session on any wiki it is currently logged in to. A hidden global account's username is not visible in any logs except the global account log.



Налаштування вікі
A wiki set is a group of wikis specified by a user with the  right. Sets can be opt-in (wikis are not in it by default) or opt-out (wikis are in it unless opted out).



Глобальні групи користувачів
Once you have enabled global user groups as described in the installation section, a migrated steward can use the Special:GlobalGroupPermissions interface to configure global user groups, and their rights. A global user group is active on all wikis (the users in it have its rights on all the wikis) by default, unless the group has been specified to only be active on a specific wiki set (the users in the group only have the rights if they are on a wiki in the set). Global group permissions are not listed at Special:ListUsers, but instead Special:GlobalUsers. They are assigned by a user with the  permission (by default the global group  ), and give the specified rights to the user even if the local rights defined by  do not do so.



Ліцензування та завантаження
The extension is available under the GNU General Public License 2.0 or later, and can be downloaded from Git, or accessed via the.

The software is provided as-is. Updates will be made according to the needs of Wikimedia wikis; or where critical vulnerabilities are discovered.

API
Див. .

Посилання


Див. також

 * Специфікації єдиного входу на Мета-Вікі
 * Help:Unified login on Meta-Wiki
 * CentralAuth authentication features
 * User:Legoktm/evil-plans2.txt (2015 plan to phase out CentralAuth at WMF)
 * w:Wikipedia:Integrated watchlists
 * Потік керування CentralAuth
 * Stuck global renames
 * Потік керування CentralAuth
 * Stuck global renames