AppCotton は「ライセンスの購入」「アクティベーション」「解除」「アップグレード」といった、
ビジネスに直結する操作が行われるシステムです。
そのため、後から誰が何をしたかを正確に追跡できる仕組みが必要であり、
これを担うのが 監査ログ(Audit Log) です。
監査ログは、不正利用対策だけでなく、サポート対応・トラブル調査・法的保全の観点でも重要です。
1. 保存する情報
監査ログには、以下を記録します。
| 項目 | 例 | 見る目的 |
|---|---|---|
| ライセンスID | 12345 | 対象となった資産の特定 |
| 操作したユーザーID/メール | user@example.com | 操作者の追跡 |
| アクション名 | activation, deactivation, upgrade | 何が起きたか |
| ドメイン / サイトURL | example.com | 不正共有検出 |
| IP アドレス | 203.0.113.45 | なりすまし/自動化検知 |
| User-Agent | WP-HTTP/1.0; WordPress/6.4 | BOTか判断 |
| 時刻(UTC) | 2025-11-10 12:45:00 | 事象のタイムライン整理 |
保存例(概念)
license_id: 12345
action: activation
domain: example.com
ip: 203.0.113.45
user_agent: WordPress/6.4; PHP/8.1
timestamp: 2025-11-10T12:45:00Z
2. IP と User-Agent を保存する理由
| 理由 | 説明 |
|---|---|
| 不正共有の検知 | 同一ライセンスが多数のIP/環境で使われていないか |
| 成りすまし防止 | 複数アクティベーションのパターン分析に利用 |
| トラブル調査 | 「認証できない/外れてしまう」等の原因追跡に必須 |
| 法的証跡 | 不正利用者への警告・差し止めの証拠となる |
IPアドレスは個人情報に該当します。
→ 保存には プライバシーポリシー上の明示 が必要です。
3. 保存形式と保管ポリシー
保存形式
- IP は 生の文字列では保存しません。
VARBINARY(16)に Packed IP (IPv4/IPv6) として保存します。
理由:
- GDPR / 個人情報保護法のリスクを低減
- 検索が高速になる
- v4 / v6 両対応
保管期間(推奨)
| 情報 | 期間 | 理由 |
|---|---|---|
| ライセンス・注文情報 | 永久 / 業務存続中 | 資産管理 |
| 監査ログ(アクティベーションログ) | 12〜36ヶ月 | トラブル調査・不正検知に必要 |
期間は国の法制度や業界に合わせて調整できます。
4. 表示と運用
管理画面で確認できる項目
AppCotton > ライセンス > 詳細
└ アクティベーション履歴
| 項目 | UI例 |
|---|---|
| ドメイン | example.com |
| 状態 | Active / Deactivated |
| 最初の登録日時 | 2025/07/03 12:00 |
| 最終チェック | 2025/07/04 08:14 |
| IP | ログとして表示(必要に応じてマスク:例 203.0.*.) |
埋め込みルール
- IP を直接対ユーザーに提示しない
- 公開画面では マスク表示 する
5. プライバシーポリシーへの追記例
サイト運営者は、以下の文言を プライバシーポリシーに明記する必要があります。
当サービスは、ライセンスの不正利用防止およびサポート対応のため、
アクティベーション時にドメイン名・IPアドレス・ユーザーエージェント等を記録します。
これらは技術的識別情報であり、第三者に共有されることはありません。
保存期間は運用上必要な期間に限られます。
6. 不正利用の兆候例
| 兆候 | 意味 | 対応 |
|---|---|---|
| 短期間に多数のアクティベーション | ライセンス共有・リーク | 自動停止 + メール通知 |
| 国が大きく異なるIPが連続 | 共有アカウント / VPN | 調査と本人確認 |
| 解除→再認証→解除 の連続 | 複製・共有の疑い | 1日の解除回数制限 |
AppCotton は、これらを 監査ログで検知する設計になっています。
まとめ
| 項目 | 重要性 | 要点 |
|---|---|---|
| 監査ログ | ★★★★★ | 後から何が起きたかを説明できるようにする |
| IP保存 | ★★★★☆ | 生保存せず Packed 形式で保護 |
| プライバシー配慮 | ★★★★☆ | ポリシーに記載+UIでマスク |
| 自己解除と回数制限 | ★★★★☆ | 不正共有防止とサポート負荷軽減の両立 |
「守る」だけでなく、「説明できる状態にする」ことが信頼性につながる。