Extension:OATHAuth

This page is a translated version of the page Extension:OATHAuth and the translation is 72% complete.
混同しないでください: Extension:OAuth.
この拡張機能は MediaWiki 1.31 以降に同梱されています。 そのため再度ダウンロードする必要はありません。 しかし、提供されているその他の手順に従う必要はあります。
MediaWiki 拡張機能マニュアル
OATHAuth
リリースの状態: 安定
実装 利用者権限 , 特別ページ , ページの操作
説明 ログインする際の二段階認証を可能にします。
作者 Ryan Lane
最新バージョン 継続的な更新
互換性の方針 MediaWiki とともにリリースされるスナップショット。 master には後方互換性がありません。
MediaWiki >= 1.42
データベースの変更 はい
テーブル oathauth_users
ライセンス GPL-2.0-or-later AND GPL-3.0-or-later
ダウンロード
  • $wgOATHRequiredForGroups
  • $wgOATHAuthWindowRadius
  • $wgOATHExclusiveRights
  • $wgOATHAuthAccountPrefix
  • $wgOATHAuthDatabase

  • oathauth-enable
  • oathauth-api-all
  • oathauth-disable-for-user
  • oathauth-view-log
  • oathauth-verify-user
Quarterly downloads 110 (Ranked 64th)
Public wikis using 1,459 (Ranked 205th)
translatewiki.net で翻訳を利用できる場合は、OATHAuth 拡張機能の翻訳にご協力ください
問題点 未解決のタスク · バグを報告

OathAuth拡張機能で、二段階認証に対応。 デフォルトでは、これにはtime-based one-time password (TOTP) の実装が含まれており、ユーザーは携帯電話やデスクトップアプリケーションから2FAコードを生成できるようになっています。 クライアントサポートは、ほとんどのフィーチャーフォン、スマートフォン、デスクトップで利用可能です。

この拡張機能はOAuthとは別のものです。OAuthとは何の関係もありません。

使用法

Two-factor authentication上のヘルプページは利用者のためにこの拡張機能の使い方に関する情報を提供します。 ただし、特別ページでは利用者にも案内しています。

インストール

  • ダウンロードして、ファイルをextensions/フォルダー内のOATHAuthという名前のディレクトリ内に配置します。
    開発者とコード寄稿者は、上記の代わりに以下を使用してGitからインストールします:cd extensions/
    git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/OATHAuth
  • Gitでのインストールの場合のみ、PHPの依存関係をインストールするためComposerを実行します。 (合併症の可能性についてはタスク T173141を参照。)
  • 以下のコードを LocalSettings.php ファイルの末尾に追加します:
    wfLoadExtension( 'OATHAuth' );
    
  • 更新スクリプトを実行します。このスクリプトは、この拡張機能が必要とするデータベーステーブルを自動的に作成します。
  • 必要に応じて設定します。
  • 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 setup local cluster caching that can be used by all hosts. Examples include Memcached .
  •   完了 – ウィキの「Special:Version」に移動して、拡張機能が正しくインストールされたことを確認します。

設定の構成

パラメーター

構成フラグ 既定値 説明
$wgOATHAuthWindowRadius 4 有効であるべき各方向のトークン・ウィンドウの数。

実質的に((1 + 2 * $wgOATHAuthWindowRadius) * 30)秒の範囲でトークンを受け入れるよう、OATHに指示します。 有効なウィンドウの範囲は、現在時刻を中心にしています。 この変数は、利用者の時間とサーバーの時間の違いを考慮することを目的としています。 ただし、できるだけ少なくすることをおすすめします。

$wgOATHAuthDatabase false データベースのドメイン。 複数のデータベースでのみ使用されます。
$wgOATHAuthSecret false 全暗号化キーの派生元であるこのWikiの基本OATHAuthシークレット。

falseの場合、$wgSecretKeyを使用します。

$wgOATHAuthAccountPrefix false OATHAuthのアカウント名に使用される接頭辞と、アカウントに適用される発行者。

falseの場合、$wgSitenameを使用します。

$wgOATHExclusiveRights [] Set of permissions that are revoked from users who did not log in using two-factor authentication.
$wgOATHRequiredForGroups [] Sets a list of user groups that are required to have two-factor authentication enabled. Use 'user' if you want all logged in users to be required to have two-factor authentication enabled.

OATHAuth also adds a key to the $wgRateLimits array to define rate limits for authentication attempts:

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

user-globalキーはバージョン1.35からでしか使えないことに注意してください。 Earlier version have to rely on user and perhaps ip-all. 完全な一覧は、$wgRateLimits の説明文書を参照してください。

利用者権限

OATHAuthへのアクセス権限

Users should be given access to the oathauth-enable user right so that they can enable it at Special:OATHAuth (a link to which appears at Special:Preferences).

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

上記から、全登録利用者にOATHAuthを有効にするためのアクセス権限が付与されます。

管理

利用者トークンのリセット

In the event that a user both loses their token generator and the recovery tokens, two-factor authentication may be removed from the user by running the disableOATHAuthForUser maintenance script:

MediaWiki バージョン:
1.40
$ ./maintenance/run OATHAuth:disableOATHAuthForUser <user>
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

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

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

関連項目