WordPressのApplication Passwordで 401 Unauthorized が返る
401 Unauthorizedは通常、リクエストが有効な認証済みユーザーを確立できなかったことを示します。WordPressの権限を調べる前に、ユーザー名、アプリケーションパスワード、Authorizationヘッダーの転送、アプリケーションパスワードの利用可否を確認します。
考えられる原因
- クライアントがApplication Passwordに対応しないWordPressユーザー名を送信しています。
- Application Passwordのコピーが誤っている、クライアント設定が古い、または認証情報がローテーションされています。
- 想定したApplication Passwordが未作成、取り消し済み、または別のプロフィールに属しています。
- ホスティング、リバースプロキシ、リダイレクト、またはWAFがWordPress到達前にAuthorizationヘッダーを削除しています。
- セキュリティプラグイン、must-useプラグイン、またはカスタムフィルターがApplication Passwordを全体で無効にしています。
- クライアントが誤ったドメイン、ベースパス、RESTエンドポイント、またはMCPエンドポイントを呼び出しています。
診断手順
- 秘密情報を含めず、正確なメッセージ、HTTPステータス、応答本文を記録します。
- 変更前にWordPress、プラグイン、クライアント、コネクター、サーバーのバージョンを記録します。
- ステータス、エラーコード、文脈を比較し、認証失敗と認可拒否を分けます。
- 秘密を除去したサーバー証拠でAuthorizationヘッダーがWordPressへ届くか確認します。
- クライアントが送るユーザー名がApplication Passwordの所有者と一致するか確認します。
- 最小の認証済みID確認で、リクエストが表すWordPressユーザーを特定します。
- 現在の環境でApplication Passwordが全体として利用可能か確認します。
最小限の修正を適用する
- 正確なWordPressユーザー名と現在のApplication Passwordを別々に設定します。
- 信頼済みサーバーまたはプロキシがAuthorizationヘッダーをWordPressへ渡すようにします。
- 専用IDと一つの連携目的に対して名前付きApplication Passwordを一つ作成します。
- 意図したセキュリティ方針を確認した後にのみ、Application Passwordを無効にするフィルターを削除または限定します。
- WordPress権限を広げず、エンドポイント、transport、ツール名、認証情報参照を修正します。
結果を検証する
- 認証済みリクエストが意図した専用WordPressユーザーに対応します。
- 承認された限定的な読み取りが再現可能な応答で成功します。
- 秘密除去済みサーバー証拠でAuthorizationヘッダーがWordPressへ届くことを確認できます。
- 取り消し後、同じ認証情報では認証できません。
避けるべき対応
- 接続テストを通す目的だけで管理者権限を付与しないでください。
- Application Password、Authorizationヘッダー、トークン、Cookieをプロンプト、チケット、ログ、画像に含めないでください。
- デバッグログや診断エンドポイントを公開しないでください。
- ライフサイクルを理解せず、認証情報の再生成や同じ失敗リクエストを繰り返さないでください。
- 認証成功と、すべてのWordPress操作の許可を混同しないでください。
関連ガイド
- WordPress AI の接続エラー:401 と 403 が役立つ理由
- Application Password認証後にWordPressが403を返す
- WordPressのAuthorizationヘッダーが欠落または削除される
- Application Passwordが別のWordPressユーザーに属している
- AI接続のためのWordPressアプリケーションパスワード
情報源と検証
このページは、以下の一次情報源に基づいて確認されています。 情報源の最終確認日: .
- Application Passwords · WordPress Developer Resources
- wp_authenticate_application_password() · WordPress Developer Resources
- wp_is_application_passwords_available() · WordPress Developer Resources
- RFC 9110: HTTP Semantics · RFC Editor