WordPressで監査ログを取る方法とセキュリティ強化

この記事はこんな人向けです
  • 「誰が・いつ・何を変えたか」を可視化して、更新履歴やセキュリティ監査を強化したい
  • 誤更新や不正アクセスのトラブル原因を素早く特定したい(Activity Log/変更履歴の整備)
  • 監査ログの保存期間・通知・外部連携(メール/Slack/Webhook/SIEM)まで検討したい

WordPressレベル別 対応難易度

Lv1 Lv2 Lv3 Lv4 Lv5 Lv6 Lv7
レベル判断は、右のレベル表(スマホは画面下)を参考にしてください。

赤:外注推奨 オレンジ:条件付き自力可 緑:自力対応可

WordPressで監査ログを取る方法とセキュリティ強化の全体像

WordPressはコア機能として「監査ログ」や「操作ログ」を標準では出力しません。

ログは「誰が・いつ・どの画面で・何を行ったか」の記録です。更新トラブルの原因追跡や不正アクセスの早期発見、社内ガバナンスに直結します。
まずは対象(ユーザー操作/設定変更/ログイン)と保存方針(期間/場所/通知)を決め、段階的に導入しましょう。

WordPressレベルごとのおすすめ対応

形だけ入れても活きないので注意

「とりあえず監査ログ系プラグインを入れる」より、何を残したいかを先に決めることが重要です。
具体的には、次の3点を整理します。

  1. 対象範囲:ログイン/ログアウト、ユーザー追加・権限変更、記事・固定ページの公開/更新、プラグイン有効化/停止、テーマ/カスタマイザー変更、メニュー/ウィジェット編集、設定保存、メディア操作、REST API、XML-RPC 等
  2. 保存方針:保持期間(例:90日/180日/1年)、ローテーション(肥大化対策)、アラート条件(管理者ログイン失敗多発、プラグインの大量有効化など)
  3. 閲覧権限:誰がログを見れるか(最小権限)。閲覧自体も操作ログに残せるとベター

ここまで決めれば、導入時に「このプラグインで十分」「外部連携が必要」など判断が速くなります。
また、個人情報問い合わせ本文をログに載せすぎない配慮も大切です(GDPR/プライバシー配慮)。

実施アクションの例(ノーコードでOK):
・管理者アカウントの見直し(共用をやめ、実名/役割ごとに発行)
・二要素認証(2FA)/ログイン通知メールの有効化(セキュリティ強化)
・バックアップとセット運用(巻き戻し時間の短縮)

もし「自分では判断がつかない」と感じたら、早めに外注して要件整理からサポートしてもらう方が、安全で確実に進められます。

要件定義ができればいける

要件が固まっていれば、監査ログ系プラグインの導入と、初期設定は十分に自力で実装可能です。
選定の観点は以下。

  1. カバー範囲:ユーザー操作だけでなく、プラグイン/テーマ変更、サイト設定、WooCommerceや会員系のイベントまで記録可能か
  2. 検索性・可視化:ユーザー/日付/イベント種別でフィルタ、CSVエクスポート、ダッシュボード要約
  3. 通知としきい値:ログイン失敗の連続、権限変更、管理者作成、ファイル改変の検知アラート(メール/Slack/Webhook)
  4. 保存戦略:DB肥大化対策(ローテーション/保持日数)、外部出力(JSON/CSV)、サーバーログとの突合
  5. 外部連携:SIEM/SOCやSyslog、AWS CloudWatch、Google Workspace監査ログとの並行活用

代表的なプラグイン:WP Activity Log / Activity Log / Simple History / Stream など。
これらは無料でも基本は十分で、商用では通知やレポート自動化が便利です。
サイト規模が大きい/更新が多い場合は、保存期間を短くしてエクスポート運用を行います。DBの急肥大はパフォーマンス劣化やバックアップ時間増に直結します。

導入後の小さな工夫:
・「公開/更新/ゴミ箱」などよく使うイベントの保存検索を作り、運用の1クリック点検
・週次で権限変更イベントを点検(管理者が増えていないか)
・プラグイン/テーマ更新の前後で差分を見る(不具合時の原因特定が早い)

高度運用の設計、証跡を“使えるデータ”に

緑レベルの方は、「残す」から「活用する」を意識。運用フローと連携し、インシデントの初動を自動化します。

  1. 相関分析:Webサーバーのアクセスログ/認証ログ(fail2ban 等)と突合し、不審操作の前後のIP/UAを特定
  2. しきい値チューニング:時間あたりのログイン失敗回数や、短時間の権限変更/ユーザー大量作成に通知を紐付け
  3. 外部保全:改ざんリスクを避けるため、書き込み専用ストレージや第三者保全(WORM/S3 Object Lock 等)へ定期エクスポート
  4. 可観測性:ダッシュボードで「本日の重要イベント」「先週比」「未確認アラート」を可視化、週次レビューを定例化
  5. 権限設計の見直し:最小権限(Least Privilege)/不要ロール無効化/REST API権限の棚卸し

万一の対応もセットで:
アカウント凍結→パスワードリセット→2FA強制を標準手順化
更新前バックアップロールバック基準の明文化(人が迷わない)
・第三者提供に備え、監査ログのエクスポート手順と保全ルールを整備

ログ出力を外注する場合のポイント

運用ルールの設計や他システムとの連携、ログ保全まで見たいときは、最初から専門家に任せるのが近道です。費用感・流れ・準備物をサクッと確認しましょう。

項目ポイント
費用の目安 小規模サイトへの導入/初期設計:20,000~50,000円
通知/ダッシュボード整備・運用設計:50,000~120,000円
外部保全/SIEM連携・手順書作成まで:120,000円~
※緊急対応や即日要請は割増になることがあります
依頼の流れ 1. 目的と範囲の確認(何を見たいか/保持期間/通知条件)
2. サイト/サーバー環境の共有(ステージング有無、バックアップ体制)
3. 導入・初期設定(しきい値/通知/保存戦略)→お試し運用→微調整
4. 手順書/管理画面の説明、保守/運用の役割分担を決定
準備しておくと便利 ・管理者アカウント(個人共有ではなく役割別)/2FA
・運用ルールの草案(誰がいつ確認するか)
・通知先(メール/Slack/Chat)とエスカレーション先
・保持期間/保存先(DBのみ/外部出力/クラウド保全)の希望
まとめ

ログは「取ったら終わり」ではなく、運用する上で活用できて初めて価値が出るものです。まずは対象範囲と保存方針を決め、段階的に導入しながら通知やダッシュボードを整えましょう。

は設計の伴走から外注、オレンジは要件が固まればプラグインを自力導入、は外部保全や相関分析まで見据えて最適化、これが基本方針です。

ログが取れれば、トラブル調査やガバナンス強化、社内説明の説得力が一段上がります。迷ったら、最初だけプロに要件定義を手伝ってもらうのもありです。

この記事を書いた人
著者アイコン

桐山智行(株式会社H.T.P. 代表)

2007年よりWeb制作に従事し、現在は企業サイトやWordPressの保守・改善支援も行っています。これまで100社以上・500サイトを超える案件を担当し、トラブル対応から集客サポートまで幅広く経験しています。

その他のWordPress関連記事はこちら

  • Lv1 初心者 初心者 … ログインなど基本も不安
  • Lv2 基本操作 基本操作 … 投稿OK/更新は不安
  • Lv3 投稿メイン 投稿メイン … 記事更新・差替えはできる
  • Lv4 更新ユーザー 更新ユーザー … テーマ/プラグイン更新経験あり
  • Lv5 データ操作 データ操作 … DBやバックアップを理解
  • Lv6 カスタマイザー カスタマイザー … 子テーマ・CSS修正が可能
  • Lv7 マスター マスター … コード/サーバーまで自走可能