WordPressで社外秘情報の誤アップを防ぐ

更新日:

WordPressで画像をアップする時の誤アップ対策はしていますか?

当記事では比較的簡単にできる、WordPressで社外秘情報の誤アップを防ぐ方法をご紹介します。

アップできる拡張子(ファイル形式)を制限する

WordPressはデフォルトで様々な拡張子のファイルをアップできます。しかし、画像しかアップしない場合は.pdfや.xlsx、.docxなどのファイルをアップできるようにしておく必要はありません。

必要な拡張子のファイルだけをアップできるようにすれば、社外秘のPDFファイルやエクセルファイルなどの誤アップを防ぐことができます。

下記コードをテーマディレクトリ内のfunctions.phpに追記します。

/**
 * アップロードを許可するMIMEタイプ
 */
add_filter( 'upload_mimes', function( $mimes ) {
    $mimes = array(
        'jpg|jpeg|jpe' => 'image/jpeg',
        'gif' => 'image/gif',
        'png' => 'image/png',
        'ico' => 'image/x-icon'
    );
    
    return $mimes;
});

upload_mimesというフィルターフックに.jpg、.jpeg、.jpe、.gif、.png、.icoだけを許可するように$mimesを上書きするコールバック関数を登録しています。

投稿画面でPDFファイル(PDF.pdf)をアップしようとすると、左下にこのように表示されます。

このファイルタイプをアップロードする権限がありません。

これで業務で良く使用されるPDFファイルやエクセルファイル、ワードファイルがアップできなくなります。

他にアップを許可したい拡張子(ファイル形式)がある場合は、MIMEタイプを調べて追加してください。

参考:よくある MIME タイプ – HTTP | MDN
参考:upload_mimes | Hook | WordPress Developer Resources
参考:add_filter() | Function | WordPress Developer Resources

公開ボタンまたは更新ボタンが押される時にアラートを表示する

上記でアップできるファイルに制限をかけましたが、許可しているファイル内に社外秘情報が載っている可能性があります。

そんな場合に備えて、公開ボタンまたは更新ボタンが押される時にアラートを表示します。

admin.jsというファイルを作成して下記コードを記載します。そして作成したファイルをテーマディレクトリ内のjsディレクトリに格納します。

jQuery(function($) {
    // 公開または更新時にアラートを表示
    $(document).one('mouseover', '.post-type-post .editor-post-publish-button__button', function() {
        alert('画像をアップする際は、慎重な作業をお願いします。\n\n-ご注意ください-\n・社内資料の誤アップ\n・個人情報が写っている画像\n・モザイク掛けが必要な画像の、モザイク処理前の画像');
    });
});

\nは改行です。

次に作成したファイルを管理画面で読み込ませます。

下記コードをテーマディレクトリ内のfunctions.phpに追記します。

/**
 * 管理画面用JSファイル読み込み
 */
add_action( 'admin_footer', function() {
    wp_enqueue_script( 'my_admin_js', get_theme_file_uri( 'js/admin.js' ), array( 'jquery' ), filemtime( get_theme_file_path( 'js/admin.js' ) ), true );
});

これによって管理画面にscriptタグでadmin.jsが読み込まれます。

テーマディレクトリ内のjsディレクトリに、作成したadmin.jsを格納する時のパスです。別のディレクトリに格納する場合は、js/admin.jsの指定を書き換えます。

読み込まれていれば、投稿画面の公開ボタンまたは更新ボタンにカーソルを合わせた時に、このようなアラートが表示されます。

誤アップ防止のアラート

参考:add_action() | Function | WordPress Developer Resources
参考:admin_footer | Hook | WordPress Developer Resources
参考:wp_enqueue_script() | Function | WordPress Developer Resources
参考:get_theme_file_uri() | Function | WordPress Developer Resources
参考:PHP: filemtime – Manual

社外秘情報を誤アップしてしまった時

万が一誤って社外秘情報をアップしてしまった時は、サーバーからファイルを削除しましょう。

管理画面のメディア>ライブラリから該当のファイルを選択して、右下にある「完全に削除する」をクリックすればサーバーから削除できます。

投稿画面で配置したファイルをエディタから削除しただけではサーバーに残り続けます。どこからもリンクされていなくても、URLを指定して直接アクセスできてしまうため注意しましょう。

社外秘情報がアップされていないかの確認

念のために社外秘情報がアップされていないかを定期的に確認しましょう。

  • 管理画面のメディア>ライブラリで確認する
  • FTPソフトでuploadsディレクトリ内のファイルをダウンロードして確認する
  • All In One WP Securityのスキャナー機能を使用して確認する

など様々な確認方法があります。

オススメはAll In One WP Securityというセキュリティープラグインのスキャナー機能を使用して確認する方法です。

All-In-One Security (AIOS) – Security and Firewall

スキャナー機能を使用すると、指定した頻度でサーバー上のファイルの変更を検出してメールで通知してくれます。

通知先として部署のグループメールアドレスを指定しておけば複数人で確認できるため、意図せずアップしてしまったファイルに気付きやすくなるでしょう。

ただし、/home/user/example.com/public_html/のようなフルパスで通知されるため、ファイルをブラウザーで表示させる際に少々パスの加工が必要な点には注意が必要です。

tooolsのTech Blogではこれからも役に立つ情報を発信していきますので、定期的に閲覧していただけると幸いです。

学校授業の「IT化」で、こんなお悩みありませんか?【e-おうち】
出張/持込/宅配でパソコン修理・設定 24時間365日対応
消費税計算

税率を設定して税込/税抜金額の消費税計算ができます。

文字数カウント

文字数をカウントできます。

和暦西暦変換

和暦と西暦を相互変換できます。

年齢計算

和暦または西暦から年齢を計算できます。

入学年・卒業年計算

履歴書に必要な学校の入学年・卒業年を生年月日から計算できます。

単位変換(換算)

キロ、マイル、グラム、華氏などの様々な単位を相互変換(換算)できます。

カラーコード変換

カラーコード(16進数)とRGB値(10進数)を相互変換できます。

Webタイマー(カウントダウン)

Webタイマー(カウントダウン)です。ストップウォッチ機能もあります。

生活に便利な電話番号一覧

警察や消防などの緊急連絡先や電話番号案内などの電話番号を確認できます。

プロバイダーのカスタマーサポートの電話番号一覧

主なプロバイダーのカスタマーサポートの電話番号を確認できます。

タスク管理(ToDo)

自分のWebブラウザーだけでタスク管理(ToDo)ができます。

エクセル関数

エクセル関数を検索できます。

麻雀の点数計算

麻雀の和了時の点数(符数/翻数/役)を計算することができます。

便利なショートカット一覧

Windows 10やExcelなどで使用できる便利なショートカットを確認できます。

電気料金計算

消費電力、使用時間、使用日数、1kWh単価から電気料金を計算できます。

パスワード生成(作成)

大文字・小文字・数字・記号を含むランダムなパスワードを生成できます。

自分のグローバルIPアドレスを確認

自分がインターネットに接続する時のグローバルIPアドレスを確認できます。

学校授業の「IT化」で、こんなお悩みありませんか?【e-おうち】
出張/持込/宅配でパソコン修理・設定 24時間365日対応
出張/持込/宅配でパソコン修理・設定 24時間365日対応
きょうみくん
このサイトの管理者
名前 きょうみくん
身長 181.1cm
誕生日 1月21日
所属 日本PCサービス株式会社
コメント

パソコン、インターネット、サーモン、ミルクティーが好きです。
猫ではありません。

エクセル家計簿の作り方など、技術的なコラムを書いているTech Blogも運営しています。