なぜ危ないのか
本物の決済リンクが含まれたHTMLを社外関係者へ送付した場合、受信者が「デモUIの確認作業中」に誤って実際のチェックアウト画面に遷移することがあります。Stripe Checkout等は一度URLにアクセスした時点でセッションが生成されるため、入力完了前でもセッションログが残ります。
さらに悪いシナリオは、HTMLファイルが第三者に転送され、悪意ある者がリンクをフィッシング詐欺に流用するケースです。あなたの企業名・ブランドが詐欺に使われ、被害者から訴えられる可能性があります。一度ネット上に出回ったHTMLを完全に回収することは困難です。
- 相手がログインなしで開ける状態か確認する
- PCとスマホで最低1回ずつ表示を確認する
- 内部情報・個人情報・不要な外部送信が残っていないか見る
- レビュー期限と修正時の差し替え方を決めておく
ソースで見る場所
aタグのhref属性を全件抽出し、`checkout.`・`/pay/`・`/payment/`・`/buy/`を含むURLを確認します。`grep -on 'href="[^"]*checkout[^"]*"'`のように正規表現を使うと効率的です。Buttonタグにdata-url属性でリンクを持つケースもあるため、data-属性も合わせてスキャンします。
JavaScriptコード内で`window.location.href`や`window.open`に決済URLを渡している場合も見落とされがちです。`grep -n 'stripe\|payjp\|paypay\|paypal'`でJSファイルとインラインscriptをスキャンし、決済サービス名が含まれる全箇所を確認します。
- HTML内の外部script・form action・iframeを確認する
- APIキーやトークンらしき文字列がないか検索する
- 画像・CSS・JSのパスが公開後も解決できるか見る
- noindexと認証を混同せず、必要なら両方設定する
安全に共有する設定
決済リンクを除去したHTMLをギガサイト便に上げ、「会社ドメイン認証」でアクセスを絞ります。指定ドメインのメールアドレスを持つユーザーのみが閲覧できるため、第三者への転送リスクを構造的に抑えられます。期限設定も合わせて行い、レビュー完了後は自動的にアクセス不能にします。
「決済リンクを#に差し替えた旨」をHTMLのコメント(`<!-- 決済URL: 無効化済み レビュー用 -->`)と送付メッセージの両方に記載します。二重に明示することで受信者の誤解を防ぎ、後でファイルを見直した際にも無害化の意図が分かります。
- HTML内の外部script・form action・iframeを確認する
- APIキーやトークンらしき文字列がないか検索する
- 画像・CSS・JSのパスが公開後も解決できるか見る
- noindexと認証を混同せず、必要なら両方設定する
再発防止ルール
ECサイトやサービス紹介ページのHTMLをAIで生成する場合、プロンプトの末尾に「決済ボタンのhrefは全て`#`とし、実在するStripe/PayPay/PayPalのURLは出力しないこと」を必ず追記します。この指示をサービス別のプロンプトテンプレートとして管理することで、依頼者が意識しなくても適用されます。
送付フローの自動化として、HTMLファイルをコミットまたはアップロードする前に`grep`スクリプトで決済URLを検出する仕組みを組み込みます。GitHubであればpre-push hookで実行し、決済URLが含まれていた場合はコミットを中断してアラートを表示します。
- HTML内の外部script・form action・iframeを確認する
- APIキーやトークンらしき文字列がないか検索する
- 画像・CSS・JSのパスが公開後も解決できるか見る
- noindexと認証を混同せず、必要なら両方設定する
よくある質問
リンクを#に変えても、JavaScriptが動的にURLを書き換える場合はどうなりますか?
JavaScriptが決済URLを動的にhrefへ設定しているケースは、JSコード内の変数・定数も合わせて確認が必要です。JSファイルでも同様にgrep検索し、URLが直書きされている行をすべて無効化してください。
決済SDKが読み込まれているだけで金銭的なリスクはありますか?
SDKの読み込みだけでは課金されません。ただし、SDKの初期化にPublishable Keyが使われており、キーから不正操作が可能かを確認する必要があります。StripeのPublishable Keyは公開可能ですが、Secret Keyは絶対に含めないようにしてください。
レビュー終了後にギガサイト便のURLを期限切れにする手順は?
ギガサイト便の管理画面から対象URLの有効期限を即時に変更するか、URLを手動で削除します。レビュー完了のタイミングでカレンダーリマインダーを設定しておくと削除忘れを防げます。