なぜ危ないのか
顧客名が別の顧客向けのページに混入すると、「他社の情報を管理できていない」という印象を与え、契約の信頼関係を損なうリスクがあります。BtoB営業の場面では特に影響が大きく、競合他社に顧客名が知れることで守秘義務違反を指摘されるケースもあります。
顧客名はHTML中のテキストノードだけでなく、data属性(`data-customer="株式会社A"`)やalt属性、metaタグのdescription、titleタグの中に埋め込まれることがあります。スクリーンリーダーや検索エンジンはこれらの属性値も読み取るため、見た目に表示されない場所にある顧客名も露出リスクになります。
- 相手がログインなしで開ける状態か確認する
- PCとスマホで最低1回ずつ表示を確認する
- 内部情報・個人情報・不要な外部送信が残っていないか見る
- レビュー期限と修正時の差し替え方を決めておく
ソースで見る場所
顧客名を検索する際は、会社名だけでなく略称や英語名も検索対象に含めてください。「株式会社A商事」であれば「A商事」「A Shoji」「A-SHOJI」なども検索します。AIは文脈に応じて表記を変換することがあるため、複数の表記パターンでgrepをかけるのが確実です。
HTMLコメント内にも顧客名が残っていることがあります。特にAIが「前回の修正メモ」のようなコンテキストを引き継いだ場合、`<!-- 株式会社A商事向けカスタマイズ版 -->`のようなコメントが生成されることがあります。`<!-- `を検索してコメント内容を全て目視確認することをお勧めします。
- HTML内の外部script・form action・iframeを確認する
- APIキーやトークンらしき文字列がないか検索する
- 画像・CSS・JSのパスが公開後も解決できるか見る
- noindexと認証を混同せず、必要なら両方設定する
安全に共有する設定
顧客名を除去または置換したことを確認した後、共有方法も顧客ごとに個別URLを発行する形にしてください。ギガサイト便では1つのHTMLから複数の制限付きURLを発行できるため、顧客Aには顧客Aだけがアクセスできるリンク、顧客Bには顧客Bだけのリンクを渡せます。
URLの発行と同時に、有効期限を商談の期間に合わせて設定してください。案件が終了した後もURLが生きていると、顧客がそのリンクを社内で共有し、予期しない経路で他の人の目に触れる可能性があります。商談終了・契約締結などのタイミングでURLを削除する運用ルールを決めておきましょう。
- HTML内の外部script・form action・iframeを確認する
- APIキーやトークンらしき文字列がないか検索する
- 画像・CSS・JSのパスが公開後も解決できるか見る
- noindexと認証を混同せず、必要なら両方設定する
再発防止ルール
顧客名入りのHTMLを生成するAIプロンプトでは、冒頭に「顧客名・会社名・個人名・プロジェクト名は全て[顧客名]のようなプレースホルダーで記載し、具体的な名称は一切使わないこと」と指示してください。プレースホルダーで生成した後、実際の顧客名に置換するフローにすることで、テンプレートを複数顧客に使い回せます。
HTMLを渡す前の最終確認として、顧客の会社名を検索した結果をスクリーンショットに撮って保存することをお勧めします。「確認した」という事実の記録が残るため、万一問題が起きたときのエビデンスになります。この確認作業をチケットのコメントとして残す運用にするとなお確実です。
- HTML内の外部script・form action・iframeを確認する
- APIキーやトークンらしき文字列がないか検索する
- 画像・CSS・JSのパスが公開後も解決できるか見る
- noindexと認証を混同せず、必要なら両方設定する
よくある質問
日本語の顧客名を検索する際に文字コードの違いで検索漏れが起きることはありますか?
HTMLファイルがUTF-8で保存されていれば通常はgrepで日本語検索できますが、Shift-JISやEUC-JPで保存されたファイルではマッチしない場合があります。`file`コマンドでエンコーディングを確認し、必要に応じてiconvで変換してから検索してください。
顧客名をプレースホルダーに置換した後、デザインや文章の自然さは保たれますか?
「株式会社A商事」が「[顧客名]」に変わると文脈として不自然になりますが、外部共有のための確認用途であれば問題ありません。プレゼン用の実際のHTMLを渡す際は正式な顧客名に戻した最終版を使い、確認作業用と本番用を明確に区別してください。
AIが生成したHTMLに含まれる顧客名を自動で検出するツールはありますか?
汎用のDLP(データ損失防止)ツールを使うと、会社名や氏名のパターンを自動検出できます。ただし日本語の会社名は正規表現による汎用パターンでの検出が難しいため、顧客名リストをCSVで管理しgrepで照合するシンプルなスクリプトの方が精度が出やすい場合があります。