webコンテンツを徹底強化!WordPressサイト制作とプラグイン&テーマ情報・メンテ/エラー対応から、PHP/CSS/javascript、動画・音・イラスト等制作まで扱うコラム
マルチメディアコンテンツ制作読んどけ☆コラム

WordPressをcookie関連設定でログイン不可能にしてみた(cookieブロック・トークン削除・ログイン成功cookie削除)

      2021/02/23

今回は、WordPressでよくあるトラブル『ログインできない』についてです。cookie関連の設定・操作でわざと『ログイン不可能みたいな状態』を作ります(cookieブロック・トークン削除・ログイン成功cookie削除)。さっそく、それぞれの場合の挙動を確認してみましょう。ログイントラブル時の役にたつかもしれません。

ブラウザで、cookieブロックしてみる(ログイン不可能になる)

WordPressではたまに、『正しいパスワードを入れてもログインできない』というような状態が発生しますが、その原因の一つになるのが『cookie』です。公式のwordpress.orgでも『認証にcookie使っているから(uses cookies for authentication)、ブラウザでcookie利用可にしないとダメ(you must have cookies enabled)』とアナウンスされています。

そういうわけなので・・・ ブラウザでcookieブロックした状態だと、『正しいユーザーid&パスワード』を入れてもログインが不可能になります。 (管理人のブラウザはvivaldiです。利用ブラウザによって設定画面は異なります。)

解除方法は、cookie受け入れをonにすればokです。 無事に管理画面にはいることができました。ブラウザには『このときのログインについての情報を持ったcookie』が保存されました。

session_tokenを書き換える(コアがきちんと動いていれば特に問題ない)

WordPress日本語Codexには書いていなかったんですけど(マニアックな話題です)データベースのwp_usermetaテーブル内に『session_token』という項目がありました。『a:1{s:64:"(たぶん識別子)"~}』みたいな形で、ログイン情報などが格納されています(ipやブラウザ・UNIXタイムスタンプでのログイン時間・有効期限など)。 データベース上でみてみると、変な文字列が入っていますが(配列)・・・

認証につかっているのかテストするため、 たとえば『u-n-ko』みたいにデータ形式上あり得ない&クソどうでもいい値に、データベース上から書き換えてみます。

ただし、これは影響なしです。 ログイン成功し、その時の情報にsession_token内の値が書き換わりました。データベースやコアがきちんと動いていると、ログイン成功情報に書き換えてくれます。(調べたところ、不具合でここの値書き換えがうまくいかないと、ログインエラーになることもあるようです。)

そして・・・ ブラウザに保存されたcookieにも、このときのログインに関する情報が入りました。

正しくログインできたときのcookie削除(cookieをonでもログイン不可能になる)

つぎの実験は、上記の実験で出てきた『正しくログインできたときのcookie』を、『あえて削除してみる』です。 ブラウザではcookie設定(セッションのみok・ふつうはこれでログインできる)していたにも関わらず、エラーでログインができなくなりました。

エラーで入れなかったので・・・ データベース上では『session_token』の項目がなくなってしまいました(ログインエラーでは、ログイン情報を格納しようもない)。

この状態の解除方法は、『ページ再読み込み』で対応しました。 『session_token』の項目も復活して、このときのログイン情報が書き込まれました。

あとがき・まとめ

  • WordPressは仕様上cookie利用が必須で、cookieブロックするとログイン不可能になる
  • session_tokenをありえない値に書き換えても、データベースやコアがきちんと動いていれば、ログインができて正しい値に書き換えてくれる。 
  • ブラウザでcookie設定をオンにしていても、正しくログインできたときのcookie削除でログイン不可能になる

まとめるとこのような形でしょうか。cookieの状態でもログインエラーにかかわってくることが確認できました。WPでログインエラーが出るとかなり困るんですけど、原因のパターンのうちの一例ということで押さえておいていただくと、対処がしやすくなります(例えば、cookie設定は大丈夫だったけど、変なリダイレクトがかかってるとか)。


【カテゴリ】 - サイトエラー対策と復旧(wp/php/css)
【タグ】 -

  関連記事

【PageSpeed Insightsエラー】リクエストしたページを Lighthouse で正確に読み込めません→WPでメンテにしてました

今回はPageSpeed Insightsエラーで、『リクエスト ...

【WordPress】人気ブログランキング、新着記事が取得できない→フィード出力で解決・ブログ村は問い合わせ

今回は、WordPress構築のサイトで、『人気ブログランキング ...

スマホWordPressアプリでログインや、記事更新ができません→xmlrpc無効化してるとできませんが、セキュリティ上必要なこともあります

今回は、スマホWordPressアプリで『正しいパスワードやユー ...

フラッシュ形式のオーディオ・動画プレイヤーが表示されません(Adobe Flash Player終了)

今回は、うちのサイトであったわけではないですが、管理人がネットサ ...

【WordPress】ヘッダーに『" />』みたいな謎の記号が出るんですが?→固定ページ抜粋?・対処法も紹介

今回はWordPressを扱っていて、ヘッダーに『" />』みた ...

WPサイト接頭辞エラーまとめ~configやテーブル名変更・usermeta内の項目で、接頭辞不一致の場合

今回は、管理人がお仕事でWPサイトお引っ越しをしたときに遭遇した ...

MySQLデータベースからWordPressテーマ変更・プラグイン停止を行う方法【エラー・管理画面に入れないときに】

今回のお題は、WordPressエラー復旧などに使えるかもしれな ...