利益:
- 機密、個人データ、機密ビジネス資産を含むデータを分類し、赤線を認識する機能
- データを入力する前に合成データを使用してマスキング、匿名化、保護する
- 承認されたツールの選択、コンテキストの最小化、および漏洩の場合にキーローテーションリフレックスを適用する機能
コーディング アシスタントに貼り付けるものはすべて、制御不能になる可能性があります。 API キー、顧客データベースのダンプ、未発表の独自ソース コード、患者記録などは、未承認のツールに侵入すると、取り返しのつかない漏洩となる可能性があります。ソフトウェア チームにとっての AI の最大のリスクは、行のエラーではなく、不注意なコピー&ペーストから発生します。この単元では、コピー&ペーストを安全にすることが目的です。
ここでは、どのデータを入力してはいけないのか、どのツールをどのような安全策とともに使用できるのか、そしてデータを入力する前にデータを保護する方法 (マスキング、合成データ、ローカルでの作業) の 3 つを区別します。これは「あったらいいな」というオプションではありません。これはほとんどの教育機関において契約上および法的な義務です。
なぜそれほど重要なのでしょうか?
AI ツールに送信するデータ。プロバイダーのサーバーで処理され、場合によっては一定期間保存されるため、一部の製品設定でモデルを改善するために使用できます。多くの場合、「チャットを削除しました」と言うだけでは十分ではありません。データがネットワークから出た瞬間にリスクが発生します。さらに、漏洩のコストは高くなります。漏洩したクラウドキーは数分以内に悪用される可能性があり、漏洩した顧客データは KVKK/GDPR などの規制に基づいて通知や罰則を受ける可能性があり、漏洩したプライベートソースコードは競争上の優位性を破壊する可能性があります。
したがって、経験則は単純です。失くすわけにはいかないものを、未承認の車両に乗り込まないでください。疑わしい場合は入らないでください。
注意: 「一度だけ、すぐに」という考え方は、漏れの最も一般的な原因です。緊急のバグを解決するときに、運用ログや設定ファイルをそのまま貼り付けることは、まさにプレッシャーの下で行われたそのような決定で起こることです。緊急性があるからといって守秘義務が停止されるわけではありません。
絶対に入力してはいけない内容(赤線)
- シークレット: API キー、パスワード、クラウド アクセス キー、プライベート証明書、トークン、接続文字列。
- 個人データ (PII): 氏名、TR ID 番号、電子メール、電話番号、住所、健康/財務記録、顧客データ。
- 機密のビジネス資産: 未公開のソース コード、独自のアルゴリズム、内部アーキテクチャの秘密、契約の詳細。
- 規制されたデータ: ヘルスケア、ペイメント カード (PCI)、個人金融などの特別に保護されたカテゴリ。
ステップバイステップ: 安全な使用フロー
- データを分類します。あなたが持っているものはどのカテゴリに該当しますか? 公開、内部、機密、規制されていますか?
- クラス別に車両を選択します。機密/規制データは、データ保証 (教育での不使用、保持制限、地域処理) を提供する機関が承認したツールでのみ処理されます。
- 入る前に確保してください。機密情報を削除し、PII をマスク/匿名化し、可能であれば本物ではなく合成 (捏造されているが現実的な) データを使用します。
- コンテキストを最小限に抑えます。問題を、機密部分を含まない、再現可能な最小の例に縮小します。
- 出力も確認してください。 AI によって生成されたコード内にハードコーディングされたシークレットやデータの残骸がないことを確認してください。
ミニケース3個
ケース 1 — 貼り付けられたキーがキャンセルされました。開発者はバグを修正する際に、構成ファイル全体を AI に貼り付けました。ファイルには、ライブのサードパーティ API キーが含まれていました。チームがこれに気づいたとき、すぐにキーをキャンセル (ローテーション) し、新しいキーを作成しました。虐待はなかったが、「安っぽい」事件だった。教訓: 接着する前に釉薬を取り除き、漏れがあった場合はすぐにキーを回してください。
ケース 2 — 合成データがビジネスを救った。チームは実際の顧客レコードで解析エラーを経験していました。本物のデータを入力する代わりに、同じ構造を持つ完全に偽物の合成データを 20 行作成し、それでエラーを再現し、AI で解決しました。 PII が漏洩することも、診断が遅れることもありませんでした。合成データは安全かつ十分でした。
ケース 3 — 印刷物に隠された秘密。サンプル設定を生成する際、AI は現実的に見える「サンプル」キーを埋め込み、開発者が気付かないうちにコードに取り込みました。コード ベース スキャン (秘密スキャナー) がこれを検出し、警告しました。不変のシークレットは決してコードに含めるべきではありません。正しい方法は、環境変数またはシークレット マネージャーを使用することでした。教訓: 秘密についても出力をスキャンしてください。
4 つのコピー可能なテンプレート
入場前のマスキングチェックリスト(自分):
このテキストを AI に渡す前に、API キー、パスワード、トークン、接続文字列、氏名、電子メール、電話番号、ID 番号、顧客データを削除し、見つかったものを [マスク済み] に置き換えてください。テキスト:{{テキスト}}
合成テストデータの生成:
以下のスキームに従って、完全に捏造された (実在の人物/機関とは無関係な) {{N}} 行のテスト データを生成します。リアルに見えるようにしますが、本物の PII は使用しないでください。スキーマ: {{フィールドとタイプ}}エッジケース (空、境界、不正な形式) が含まれます。
シークレットハントを修正しました (コード内):
このコード/構成でハードコードされたシークレット (キー、パスワード、トークン、カスタム URL) を探します。見つかった場合は、その場所を指定し、正しい方法 (環境変数 / シークレット マネージャー) を提案します。コード:{{コード}}
車両適合性評価 (データクラス別):
次のタイプのデータがあります: {{クラス: パブリック / 内部 / 機密 / 規制済み}}。私が使用する予定のツールは次のとおりです: {{tool}}。このツールでこのデータを処理する前に、どのような安全対策 (保管、教育での使用禁止、地域、アクセス) を確認する必要がありますか?チェックリストを与えます。決定は私にあります。基準を明確にしてるんですね。
弱いプロンプト / 強いプロンプト
弱い: (実稼働データベースから取得した 200 の実際のユーザー行を貼り付ける) 「このデータに解析エラーがあるのはなぜですか?」
Strong: 「以下は実際のデータと同じ構造を持つ 15 行ですが、完全に合成されています (PII はありません)。parse_user() はこれらの行のうち 3、8、12 で ValueError をスローします。共通のパターンは何でしょうか。どうすれば修正できますか?」
強力なバージョンには、バグの再現に必要な構造は維持されていますが、実際の個人データは含まれていません。診断は同じままで、リスクはリセットされます。
データクラス
AIで処理できるのか?
前提条件
公共の
はい
—
社内用(非精密)
一般的に
企業ポリシーの遵守
機密(ソースコード、企業秘密)
認定車両のみ
企業保証 + 最小化
PII / 規制対象
原則としていいえ
マスク/匿名化するか、合成を使用する
ポリシーの遵守と追跡
安全な使用は単なる個人的な習慣ではなく、企業システムです。どのツールが承認されるか、どのデータ クラスがどこに送信できるか、侵害が発生した場合に何をすべきかは、書面によるポリシーで定義する必要があります。シークレットが漏洩した場合に最も重要な最初のステップは、パニックに陥るのではなく、漏洩した資格情報を直ちに元に戻し (キャンセルして新しい資格情報を生成し)、インシデントを報告することです。組織の承認済みツールのリストとデータ分類ルールがわからない場合、最初のタスクはそれらを学習することです。
ヒント: これらのファイルがアシスタントのコンテキストに誤って含まれないように、エディター/CLI ツールでプロジェクト固有の「無視」リスト (例: .env、隠しフォルダー、ID ファイル) を定義します。予防は常に浄化よりも安価です。
よくある間違い
- 機密データを「一度だけ」貼り付けます。緊急性によって赤線が一時停止されるわけではありません。最も一般的な漏れはここで発生します。
- 「会話を削除しよう」と考えています。データがネットワークから出た瞬間にリスクが生じます。削除しても元に戻せません。
- クラスを見ずに車を選ぶ。個人アカウントを使用して企業の機密データを処理することは重大な違反です。
- 出力をスキャンしていません。 AI はコードに不変の秘密を埋め込むことができます。シークレットスキャナーで生産物も検査します。
- 秘密が漏れても回さない。漏洩したキーを取り消さないと、漏洩が実際のエクスプロイトに変わります。
要約すると
ソフトウェアにおける AI の最大のリスクはプライバシー漏洩であり、そのほとんどは強迫の下で行われたコピー&ペーストの決定から生じます。ルールは明確です。秘密、個人データ、機密ビジネス資産、および規制対象データは、未承認のツールに入力されません。入力前にデータを分類し、クラスごとにエージェントを選択し、シークレットを抽出し、PII をマスクするか合成データを使用し、コンテキストを最小化し、シークレットの出力もスキャンします。漏洩があった場合は、まず資格情報を返却して報告してください。
アプリケーションタスク
最近 AI に与えた (または与えることを検討している) コード/ログ/データの一部を取得します。まず、「マスキング チェックリスト」テンプレートを使用して、秘密および PII の候補を特定します。次に、実際のデータが含まれている場合は、「合成テスト データ生成」テンプレートと同じで完全に構成されたバージョンを作成し、それを使用して問題を再現できるようにします。最後に、所属機関が承認したツールのリストとデータ分類ポリシーを見つけて読んでください。それ以外の場合は、この省略に注意してください。
チェックリスト
- [ ] データを入力する前に分類します (公開/内部/機密/規制対象)。
- [ ] 私は、秘密、PII、機密ビジネス資産を未承認のツールに入力することは決してありません。
- [ ] 可能な限り、実際のデータの代わりにマスキングまたは合成データを使用します。
- [ ] コンテキストを、機密部分を含まない最小の例に縮小します。
- [ ] AI 出力をスキャンして、ハードに埋められた秘密を探します。
- [ ] 秘密が漏洩した場合、私は直ちに識別情報を返却し、事件を報告することを承知しています。