ドキュメント / Sentinel Security / 機能

ベーシック認証

ベーシック認証

ベーシック認証(HTTP Basic Authentication)は、ログインページにアクセスした際にブラウザの認証ダイアログを表示し、正しいユーザー名とパスワードを入力しないとログインフォーム自体を表示しない機能です。

多層防御の Layer 3 として、カスタムログインURL(Layer 2)とreCAPTCHA(Layer 4)の間に位置します。

仕組み

ベーシック認証を有効にすると、ログインページへのアクセス時に以下のフローで認証が行われます。

  1. ブラウザがログインURLにアクセス
  2. サーバーが 401 UnauthorizedWWW-Authenticate ヘッダーを返す
  3. ブラウザが認証ダイアログを表示(ユーザー名・パスワード入力)
  4. 正しい認証情報を送信すると、WordPressのログインフォームが表示される
  5. 認証に失敗すると、再度ダイアログが表示される

技術仕様: SentinelSecurity のベーシック認証は .htaccess ではなく PHP の HTTP 認証ヘッダー($_SERVER['PHP_AUTH_USER']$_SERVER['PHP_AUTH_PW'])を使用しています。そのため、サーバーの .htaccess を変更せず安全に利用できます。

設定方法

  1. WordPress 管理画面 → SentinelSecurityログインセキュリティ を開きます
  2. Layer 3: ベーシック認証 セクションを見つけます
  3. トグルスイッチを 有効 にします
  4. ユーザー名 を入力します
  5. パスワード を入力します
  6. 保存 をクリックします

設定項目

項目説明必須
有効/無効ベーシック認証のON/OFF
ユーザー名認証ダイアログに入力するユーザー名有効時は必須
パスワード認証ダイアログに入力するパスワード有効時は必須

注意: ここで設定するユーザー名とパスワードは、WordPress のログインアカウントとは別のものです。WordPress のログイン情報とは異なる値を設定してください。

wp-config.php での定数定義

セキュリティを強化するため、wp-config.php に定数を定義してベーシック認証の認証情報を管理することもできます。

define( 'SENTINEL_BASIC_AUTH_USER', 'your_username' );
define( 'SENTINEL_BASIC_AUTH_PASS', 'your_password' );

定数が定義されている場合、管理画面で設定した値より定数の値が優先されます。

適用される条件

  • カスタムログインURL が有効: カスタムURLへのアクセス時に適用
  • カスタムログインURL が無効: /wp-login.php へのアクセス時に適用
  • ログイン済みユーザー: ベーシック認証はスキップされます
  • IP 制限との連携: IP制限(Layer 1)を通過したアクセスのみベーシック認証が実行されます

注意事項

  • ベーシック認証のユーザー名・パスワードを忘れた場合は、FTPやファイルマネージャーからプラグインを無効化すれば解除されます
  • REST API クライアント等のプログラム的なアクセスには影響しません
  • キャッシュプラグインを使用している場合、ログインページがキャッシュされないことを確認してください

関連ドキュメント