Rozszerzenie:OATHAuth

This page is a translated version of the page Extension:OATHAuth and the translation is 77% complete.
Outdated translations are marked like this.
Nie mylić z Extension:OAuth.
This extension comes with MediaWiki 1.31 and above. W związku z tym nie musi być ponownie pobierane. Niemniej jednak wciąż musisz wykonać inne podane instrukcje.
Podręcznik rozszerzeń MediaWiki
OATHAuth
Status wydania: stabilne
Realizacja Uprawnienia użytkownika , Strona specjalna , Akcja strony
Opis Wprowadza weryfikację dwuetapową podczas logowania
Autor(zy) Ryan Lane
Ostatnia wersja Ciągłe aktualizacje
Polityka zgodności Snapshots releases along with MediaWiki. Master nie jest kompatybilny wstecznie.
MediaWiki >= 1.43
Zmiany w bazie danych Tak
Tabele oathauth_users
Licencja GPL-2.0-or-later AND GPL-3.0-or-later
Pobieranie
  • $wgOATHAuthWindowRadius
  • $wgOATHRequiredForGroups
  • $wgOATHAuthAccountPrefix
  • $wgOATHExclusiveRights

  • oathauth-enable
  • oathauth-api-all
  • oathauth-disable-for-user
  • oathauth-view-log
  • oathauth-verify-user
Quarterly downloads 74 (Ranked 70th)
Public wikis using 1,459 (Ranked 205th)
Przetłumacz rozszerzenie OATHAuth jeżeli jest dostępne na translatewiki.net
Problemy Otwarte zadania · Zgłoś błąd

Rozszerzenie OathAuth zapewnia wsparcie dla uwierzytelniania dwuskładnikowego. Domyślnie zawiera implementację haseł jednorazowych opartych na czasie (TOTP), która pozwala użytkownikom na generowanie na ich telefonach bądź komputerach haseł jednorazowych potrzebnych do uwierzytelniania dwuskładnikowego. Aplikacje klienckie są dostępne na większość zaawansowanych telefonów komórkowych, smartfonów oraz komputerów.

To rozszerzenie nie ma nic wspólnego z OAuth, który jest zupełnie innym protokołem.

Użycie

Strona pomocy na temat uwierzytelniania dwuskładnikowego zawiera informacje dotyczące używania tego rozszerzenia przez użytkowników końcowych. Jednak strona specjalna również daje wskazówki użytkownikom.

Instalacja

  Uwaga: There is a bug with this extension where it does not update properly from the web (mw-config) updater and must instead use the update.php command line update script (phab:T371849)
  • Pobierz i umieść plik(i) w katalogu o nazwie OATHAuth w folderze extensions/.
    Developers and code contributors should install the extension from Git instead, using:cd extensions/
    git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/OATHAuth
  • Tylko w przypadku instalacji z repozytorium git należy uruchomić Composer, aby zainstalować zależności PHP, poprzez wywołanie composer install --no-dev w katalogu rozszerzenia. (Zobacz zadanie T173141 w celu uzyskania informacji o możliwych komplikacjach.)
  • Dodaj poniższy kod na dole twojego pliku LocalSettings.php :
    wfLoadExtension( 'OATHAuth' );
    
  • Uruchom skrypt aktualizujący, który automatycznie stworzy potrzebne tabele dla tego rozszerzenia.
  • Skonfiguruj zgodnie z wymaganiami.
  • It is strongly recommended to setup caching when using OATHAuth. This will improve performance, but also the security of your wiki if you're using OATHAuth. If you are only running one application/web server and have php-apcu installed, and no specific cache configured, MediaWiki will likely fallback to using APCu. If you are using multiple application/web server it is advised to set up local cluster caching that all hosts can use. Examples include Memcached .
  •   Zrobione – Przejdź do Special:Version na twojej wiki, aby sprawdzić czy rozszerzenie zostało pomyślnie zainstalowane.

Konfiguracja

Parametry

Zmienna konfiguracyjna Wartość domyślna Opis
$wgOATHAuthWindowRadius 4 Liczba kodów (tokenów) w każdym kierunku, która powinna być ważna.

Wymusza to akceptowanie przez OATH kodów z zakresu ((1 + 2 * $wgOATHAuthWindowRadius) * 30) sekund. Zakres ten jest wyśrodkowany wokół bieżącego czasu. Zadaniem tej zmiennej konfiguracyjnej jest uwzględnienie różnic pomiędzy zegarem w urządzeniu użytkownika a zegarem serwera. Aczkolwiek zaleca się, aby jej wartość była możliwie mała.

$wgOATHAuthDatabase false (przestarzałe) Domena bazy danych. Zmienna wykorzystywana tylko w środowiskach z wieloma bazami danych. After MediaWiki 1.42, you should use $wgVirtualDomainsMapping['virtual-oathauth'] instead of this option.
$wgOATHAuthSecret false Podstawowy tajny klucz OATHAuth, na podstawie którego obliczane są wszystkie klucze szyfrujące.

Jeśli wartość tej zmiennej to false, to używana jest zmienna $wgSecretKey.

$wgOATHAuthAccountPrefix false Prefiks wykorzystywany w nazwie użytkownika OATHAuth

Jeśli wartość tej zmiennej to false, to używana jest zmienna $wgSitename.

$wgOATHExclusiveRights [] Lista uprawnień odbieranych, gdy użytkownik nie jest zalogowany z wykorzystaniem uwierzytelniania dwuskładnikowego.
$wgOATHRequiredForGroups [] Lista grup użytkowników, którzy muszą używać uwierzytelniania dwuskładnikowego. Należy użyć opcji „user”, aby włączyć uwierzytelnianie dwuskładnikowe wszystkim użytkownikom.

OATHAuth dodaje również klucz do tablicy $wgRateLimits w celu ustalenia maksymalnej ilości prób uwierzytelnienia:

		'badoath' => [
			'&can-bypass' => false,
			'user' => [ 10, 60 ],
			'user-global' => [ 10, 60 ],
		]

Należy zauważyć, że klucz user-global jest dostępny od wersji 1.35. Wcześniejsze wersje muszą używać klucza user oraz, ewentualnie, ip-all. Zobacz dokumentację $wgRateLimits, aby uzyskać szczegółowe informacje.

Uprawnienia użytkowników

Przyznawanie uprawnień do włączania OATHAuth

Użytkownicy powinni mieć nadane uprawnienie oathauth-enable, aby móc włączyć uwierzytelnianie na stronie oathauth-enable (do której link pojawi się na Special:Preferences).

$wgGroupPermissions['user']['oathauth-enable'] = true;

Powyższy kod da możliwość włączania OATHAuth wszystkim zarejestrowanym użytkownikom.

Administracja

Resetowanie tokenów użytkownika

W przypadku, gdy użytkownik utraci zarówno swoje urządzenie uwierzytelniające ORAZ kody zapasowe, uwierzytelnianie dwuskładnikowe może zostać wyłączone dla jego konta poprzez usunięcie odpowiadającego mu wiersza z tabeli disableOATHAuthForUser w bazie danych.

Wersja MediaWiki:
1.40
$ ./maintenance/run OATHAuth:disableOATHAuthForUser <user>
Wersja MediaWiki:
1.39
$ php ./extensions/OATHAuth/maintenance/disableOATHAuthForUser.php <user>

Where ‎<user> is the name of the user to have 2FA disabled.

Shared database tables

Some Wikis may want to share the 2FA data amongst multiple Wikis.Shared database tables , the previous method for doing so is deprecated in MediaWiki 1.42 and later. For new wiki-farm installations where you want users to share their 2FA token amongst multiple wikis, please use $wgVirtualDomainsMapping and the extensions will automatically make its tables use the specified database name.

$wgVirtualDomainsMapping['virtual-oathauth'] = [ 'db' => 'sharedbname' ]

When using shared database tables, i.e., the same set of users for different wikis, add oathauth_devices and oathauth_types to $wgSharedTables.

$wgSharedTables[] = 'oathauth_devices';
$wgSharedTables[] = 'oathauth_types';


Zobacz też