【Edit Author Slug】ユーザー名がばれるのを防ぐWordPressプラグイン

この記事では、WordPressで作成されているサイトの末尾に「?author=1
」や「/wp-json/wp/v2/users
」と入力すると、ログインIDがばれてしまう問題を防いでくれる便利なセキュリティ対策プラグイン「Edit Author Slug」について書きます。
インストールして任意の文字列を設定することで、WordPressサイト上で「?author=1
」や「/wp-json/wp/v2/users
」ページを開いた時、実際のログインユーザー名ではなく指定した文字列を表示してくれます。
好きな文字列、ランダムな文字列に変更できます。
無料で利用でき、設定画面も日本語でシンプルです。いつでも変更でき、使わなくなった時のアンインストールも楽です。
ログインIDがばれるのが心配…という方におすめです。セキュリティを向上する「SiteGuard WP Plugin」プラグインとも併用できます。むしろどっちかだけは不安なので両方インストールするのがいいかなと思います。
リリース元:Brandon Allen(GitHub、寄付、X)
記事執筆時のバージョン:1.9.1(2024年10月14日)
本プラグインの必要性
「?author=1」でユーザー名がバレる
レンタルサーバーとWordPressを使ってブログを書いている場合、自身のブログURLの最後に「?author=1
」をつけてEnterを押して確定するとそのWordPressのログインで使われているユーザー名が表示されてしまいます。
WordPressの仕様です。
正確には「?author=1
」のURLパラメータをつけることで投稿者のアーカイブページに飛ぶ仕様です。その投稿者ページのURLの一部がユーザー名で表示されるので実質ユーザー名が分かってしまいます。
例えば当サイト(ナポリタン寿司のPC日記)のユーザー名を調べたい場合、「https://www.naporitansushi.com?author=1
」とブラウザのアドレスバーに貼り付けます。
https://www.naporitansushi.com?author=1
イコール記号の後の数字は何番目のユーザーのアーカイブページを表示するかです。もしそのWordPressサイトが複数人で運営されている場合「?author=2
」といった感じで数字を変えることで対象のユーザー名を調べられます。
対策していない場合は「https://www.naporitansushi.com/author/〇〇〇/
」といった感じで、「〇〇」の部分にWordPressのログインIDが表示されます。

「/wp-json/wp/v2/users」でバレる
同様に「/wp-json/wp/v2/users
」をつけてもそれに似た情報を取得できてしまいます。

「REST API」というものがそのWordPress上で無効になっている場合は、「The REST API on this site has been disabled.(401エラー)」が返されます。
デフォルトでは多分有効になっているので何もしなければがっつり上記画像みたいにユーザー名が表示されます。
当サイトは「?author=1
」、「/wp-json/wp/v2/users
」の両方とも既に対策しているので表示されない、あるいはトップページに戻される(リダイレクト)と思います。
バレたら何が問題なのか
そのサイトを運営している自分だけが使える秘密の技…でもなんでもなく、方法さえ知っていれば誰でもどのWordPressサイト上でもできてしまいます。つまり、簡単に自分のログインIDがばれてしまいます。
ログインIDがばれただけですぐに乗っ取られる心配はありませんが、ばれてない時と比べるとリスクが高くなる…可能性があります。
本来WordPressの管理画面にログインするためにはログインID+パスワードの2つの壁(入力)が必要ですが、この方法を使うことでログインIDが分かってしまう=1つ目の壁が突破されます。
あとはパスワードが分かってしまえばそのWordPressサイトにログインできてしまい、投稿記事を無茶苦茶にされたり、あれやれこれや悪さされる…かもしれません。
「かも…かも…」とためらいがちに言っている理由は、正直そこまでする技術をもった方は別の方法でユーザー名なんかとっくに把握されている可能性が高いからです。
ばれたところで他の対策をしていれば問題ないって考え方もあります。
本プラグインはやらないよりはやったほうがいいかもしれない、やったことで自分の気持ちが楽になるかもしれない、結果的にセキュリティ対策意識が高まるかもしれない…そんな感じの立ち位置かなぁと思います。
本プラグイン単体のセキュリティ対策の壁としては低く、それよりもBOTの総当たり攻撃(ブルートフォースアタック)を防ぐための画像認証や試行回数制限、辞書攻撃を防ぐためにパスワードを長く複雑にする…みたいなほうが壁としては高いと思います。「SiteGuard WP Plugin」とかです。
そもそも本プラグインを入れたことで100%ユーザー名がばれない保証はないです。別のサービス(SNS)と同じ名前、メールアドレスの一部、自分のサイトドメイン名をそのままユーザー名にもしちゃってる…などなどバレる経緯は沢山あります。
結論、本プラグインを導入することで「?author=1
」や「/wp-json/wp/v2/users
」経由からはばれなくなりますが、他にもバレる経路は色々あると思うし、そもそもばれても他の対策をしていれば特に大きな問題はない…と思います。
個人的にはやらないよりやったほうがいいと思います。セキュリティ対策の知識がない僕みたいな初心者は、こういった用意されているものを最大限活用するのが一番です。
使うことのデメリットは特にないです。僕が実際に使っていて露骨にサイトが重たくなる…などないです。
しいて言うならプラグイン自体の脆弱性(弱点)が発見された場合、悪意ある方の攻撃対象になる可能性があります。ただそれは本プラグインに限った話じゃないです。アップデートがあれば毎回更新するのを心がけます。
「SiteGuard WP Plugin」の「ユーザー名漏えい防御」との違い
前提として僕はセキュリティ対策どころかIT全般初心者なので間違った認識をしている可能性もあります。あんまり信用せずに。
同じくセキュリティ対策関連のプラグインで「SiteGuard WP Plugin」というのもあります。インストールしている方も多いと思います。
本プラグインには「ユーザー名漏えい防御」という機能があり、公式サイトの説明欄には以下のように記載されています。
“?author=数字”のアクセスによるユーザー名の漏えいを防止します。ユーザー名とパスワードの組み合わせでログインしますが、ユーザー名が分かると後はパスワードだけですので、攻撃者はパスワードの推測に専念できます。ユーザー名は伏せておいた方が安全です。また、REST APIを使用してユーザー名を取得することも可能です。REST APIを無効化するオプションも利用可能です。
ユーザー名漏えい防御 – WebセキュリティのEGセキュアソリューションズ

僕は本機能を設定しておけば機能が重複するから「Edit Author Slug」のほうは不要…と思っていました。
しかし、調べてみると違いました。多分。
「SiteGuard WP Plugin」の「ユーザー名漏えい防御」は「?author=1
」ページを開いた時、ユーザー名が表示される投稿者のアーカイブページに飛ばさせず、トップページにリダイレクト(移動)させるという機能です。
実際使ってみると分かりますが、「https://www.naporitansushi.com?author=1
」と入力して開いても当サイトの「https://www.naporitansushi.com/author/ユーザー名/
」ページには飛ばず、トップページ(https://www.naporitansushi.com
)に飛びます。
一方で「Edit Author Slug」は仮に「?author=1
」ページを開かれてもユーザー名がバレないよう見た目上変えるというものです。
「?author=1
」のページを開かせない「SiteGuard WP Plugin」と、開かれても大丈夫なよう変更(隠す)する「Edit Author Slug」です。
「SiteGuard WP Plugin」だけだと、万が一無理やり「?author=1
」ページを開かれた場合にユーザー名が丸わかりです。
簡易的な自動攻撃BOTなどに対しては十分かもしれませんが、「Edit Author Slug」も一緒にインストールしておくことでセキュリティ対策としてより効果を発揮すると思います。
「Edit Author Slug」だけ入れるのはダメです。「SiteGuard WP Plugin」はユーザー名漏えい防御以外にも沢山のセキュリティ対策設定ができるので重要度は高いです。
「/wp-json/wp/v2/users
」を開いた時にユーザー名がバレてしまう「REST API」も無効化できます。
インストール方法
新規追加ページから探す
WordPressの管理画面内のプラグインページからインストールできます。
WordPressの管理画面にアクセスして、左側サイドバー内にある「プラグイン」→「新規追加」をクリックします。

右上の検索ボックスに「Edit Author Slug」と入力します。

インストール
プラグインのアイコン画像()を目印に探します。見つけたら「今すぐインストール」をクリックします。

有効化
インストールした後すぐに有効にするか選択できますが、特に渋る必要はないので「有効化」を押します。

プラグインのインストール済みページに飛んで「プラグインを有効化しました。」と表示されたらOKです。無効にしたい場合はいつでもこのページから無効化・削除できます。

使い方
設定ページのアクセス方法
インストールして有効化した状態で、WordPress管理画面の左側サイドバーにある「ユーザー」→「ユーザー一覧」をクリックします。
自身のユーザー(「?author=1
」のスラッグを変更したいユーザー)をクリックします。

設定ページが表示されるのでページを一番下までスクロールします。
プラグインをインストールした後はインストールする前にはなかった「投稿者スラッグ編集」という設定項目が新しく追加されています。

ログインIDのスラッグ変更
「投稿者スラッグ」に以下の選択肢が用意されています。プラグインをインストールしただけでOKってわけではなく、ここから設定する必要があります。
「Edit Author Slug」で用意されている項目 | 意味 |
---|---|
1番目 | 自身のログインID(デフォルト。バレバレな状態) |
1 | 「1」という数字 |
3e08ad3〇〇〇〇 | ランダムな文字列 |
カスタム設定 | 自分で好きな文字列を指定 |
もしかしたら人によってはユーザー名(ログインID)と「1」の間にニックネームの選択肢もあるかもです。
デフォルトでは1つ目のWordPressのログインIDになっています。これだとインストールしていない時と同じでバレバレな状態なのでおすすめしません。
1つ目以外の数字やランダムな文字列、カスタム設定にします。

カスタム設定は英数字のみ設定できます。日本語は設定できません。
試しに2番目の「1」にしてみます。
「1って一文字でいいの?逆に大丈夫?」と思うかもしれませんが、本プラグインの目的は文字を複雑にすることではなく、本来のユーザー名を隠すことなので隠した後の文字は何でもいいと思います。大丈夫じゃなかったらそもそもこの選択肢を開発者が用意すると思えません。
変更できたら一番下の「プロフィールを更新」をクリックします。

更新できたら自身のサイトを開きます。既に「?author=1
」ページを開いていた場合は一度ページをリロード、あるいはトップページに戻って再度開きます。
トップページ(ホームページ)を開いて末尾に「?author=1
」と付けてEnterを押します。

プラグインで設定した通りのURLスラッグになってログインIDがばれないようになります。「1」にした場合は以下の通りになります。
https://www.naporitansushi.com/author/1/

カスタム設定で好きな文字列にすることも可能です。「damasaretana(だまされたな)」にしてみました。

こちらの文字列を見る=「?author=1
」の方法を使って意図的に開いてきたということなので、専用のメッセージにするのも面白そうです。
まぁ自分が頻繁に投稿者のアーカイブページを開く場合は自分が分かりやすい文字列にしたほうがいいと思います。僕は自分から開くことはまずないのでどんな文字列でも気にしていません。ユーザー名が隠れたらそれでOKです。
「?author=1
」だけでなく、「/wp-json/wp/v2/users
」を開いた時に表示されるユーザー名も同じく変更されます。
「/wp-json/wp/v2/users
」は「SiteGuard WP Plugin」プラグインなどで「REST API」を無効化している場合はそもそも表示されません。
authorのスラッグ変更
「https://www.naporitansushi.com/author/〇〇〇/
」の「author
」の部分も変更できます。
余裕がある方は合わせて変更しておくといいかもしれません。サイト構造がより複雑になり、単純な自動攻撃BOTなどをかわせるかもしれません。
まぁ一番重要なのはユーザー名部分なので特にここは変更しなくてもリスクないと思います。逆にここだけ変えてユーザー名は変えない…なんてことはしないように。
WordPressの管理画面を開いて、左側サイドバーの「設定」→「投稿者スラッグ編集」をクリックします。

本プラグインの設定ページが表示されます。投稿者ベースの「author」という部分を好きな文字列に変更します。半角英数字と記号が使えます。

変更したら一番下の「変更を保存」をクリックします。それ以外に「Author Slugの自動生成」などの設定項目もありますが、変更しなくていいです。

同じ手順でURLの末尾に「?author=1
」をつけて確認してみます。「author」の部分が指定した文字列に変わります。

感想
以上、WordPressブログで「?author=1
」と入力するとユーザー名(ログインID)がばれてしまうのを防ぐプラグイン「Edit Author Slug」についてでした。
インストールしてサクッと設定するだけで多少なりともリスクを減らせます。