概要
YubiKeyは、USBポートに差し込んで認証を行えるハードウェアセキュリティキーです。
通常WordPressへログインする際はユーザー名とパスワードを利用しますが、加えてYubikeyのOTPを使って認証するようにします。
OTPを利用するため、YubiKeyはEdge以上の製品が必要になります。
WordPressのバージョンは 4.3.1–ja です。
YubiKeyを使うかどうかはユーザー毎に設定できます。
設定ミスなどでログインできなくなってしまった場合に備えて、複数の管理ユーザーを登録してから設定を行った方が無難でしょう。
WordPress yubikey-plugin のインストール
WordPress の管理画面から、プラグイン「yubikey-plugin」をインストールします。
WordPress yubikey-plugin の設定
https://upgrade.yubico.com/getapikey/ へアクセスし、設定に必要なClient IDとSecret Keyを取得します。
「Your e-mail address」にはメールアドレスを入力します。
「YubiKey one-time password」にはYubiKeyのOTPを使って入力します。YubiKeyのSlot 1にOTPが設定されている場合(YubiKeyの初期設定)、カーソルがテキストボックスにある状態でYubiKeyとタップすると自動的にパスワードが入力されます。
Client IDとSecret Keyが発行されました。
WordPressに戻り、設定のYubikeyを開きます。
先ほど取得したClient ID をYubiko API IDに、Secret Key を Yubico API key に入力して Save Changes を押します。
続いて、YubiKeyによる2段階認証を設定するWordPressユーザのプロフィールを編集します。
ユーザプロフィールを開くと Yubikey settings の項目が追加されています。
ユーザー毎にYubiKeyを使った認証を有効にするか設定できます。
Yubikey authentication で Use Yubico server を選択し、Key ID 1 にカーソルがある状態でYubiKeyをタップします。
成功すると自動的に設定が保存されます。
Key ID 2 とKey ID 3 は複数のキーを登録したい場合に利用します。
ここまでで設定は完了です。
動作確認
WordPress 管理画面からログアウトしてみましょう。
すると、ユーザー名とパスワードの下に、Yubikey OTP が表示されます。
ユーザー名とパスワードを入力し、Yubikey OTPにカーソルがある状態でYubikeyをタップするとログインすることができます。
Yubikey OTPの入力欄がカラだったり、内容が間違っていたりすると認証エラーになります。
また、YubiKey を有効にしていないユーザーは、Yubikey OTPを入力せずユーザー名とパスワードのみで認証できます。