「ソースコードをAIに渡して、本当に大丈夫なのか」。AIを使ったシステム移行や解析のご相談で、費用や品質と並んで必ず出てくる質問です。自社のコードが他社のAIの学習に取り込まれ、どこかで出てこないか。クラウドに出すこと自体を社内の規程が認めていない。データベースには個人情報が入っている。不安の中身は会社ごとに違いますが、共通しているのは「見えないところで何が起きるか分からない」という点です。
この記事では、ソースコードが生成AIの学習に使われるかどうかが何で決まるのかを、主要な生成AIサービスの公式資料をもとに整理します。そのうえで、学習以外にある情報漏洩の経路、委託先に確認すべき項目、ソースコードを社外に出せない場合の選択肢、当社の運用を説明します。読み終えたときに、委託先へ何を聞けばよいかが具体的に分かるように書いています。
不安の正体は4つに分かれる
ご相談で伺う不安を分解すると、4つに分かれます。
1つ目は学習です。渡したコードがAIモデルの学習データになり、他社の利用者への回答に自社の処理ロジックが現れるのではないか、という懸念です。2つ目はクラウドです。学習に使われなくても、社外のサーバーにコードを送ること自体を、情報セキュリティ規程や取引先との契約が認めていない場合があります。3つ目は個人情報を含む実データです。移行の検証に本番データが必要だとすれば、個人情報の取り扱いや委託契約の整理が必要になります。4つ目は委託先の管理体制です。AIサービスの仕様がどれだけ堅牢でも、委託先の担当者が誰でもコードを見られる状態であれば意味がありません。
この4つは、確認する相手も方法も違います。順に説明します。
学習に使われるかどうかは契約と設定で決まる
まず学習について。結論から言うと、ソースコードが学習に使われるかどうかは、AIの種類や性能ではなく、どの契約でどの設定のサービスを使うかで決まります。
生成AIによる情報漏洩として広く報道された事例は、社員が個人向けの対話型AIに業務のソースコードを貼り付けたものでした。個人向けの無料サービスや個人契約のプランでは、利用者がオプトアウト(学習への利用を拒否する設定)をしない限り、入力内容がモデルの改善に使われることがあります。OpenAIは、ChatGPTなど個人向けサービスでは利用者がオプトアウトしない限り入力内容を学習に使う場合があること、そしてChatGPT Business・Enterprise・APIといった法人向け製品では既定で入力も出力も学習に使わないことを、公式ヘルプで明示しています。
他の主要ベンダーも、法人向けのAPI(システムからAIを直接呼び出す仕組み)やエンタープライズ契約では同様の方針を公式に公開しています。2026年9月時点の各社の公式ドキュメントから、学習への利用とデータの保持に関する記述を整理したのが次の表です。
| サービス | 学習への利用 | 入力データの保持と閲覧 |
|---|---|---|
| OpenAI(API・ChatGPT Enterprise/Business) | 既定で使わない。利用者が明示的にデータ提供を選んだ場合のみ | APIは不正利用の監視のため最大30日保持。条件を満たす顧客は保持ゼロ(ZDR)を申請できる。データの保管地域に日本を指定できる |
| Anthropic(Claude API・法人向けプラン) | 利用規約上、顧客コンテンツでモデルを学習しない | 入力・出力は原則保持せず、保持する場合も30日以内に削除。ZDR契約が可能。最新の一部モデルは安全対策のため30日間の保持が必須 |
| Microsoft(Azure OpenAI) | 使わない。OpenAI社を含む他社にも渡らない | 指定した地域内で処理。不正利用の監視で検出された入力の一部を保存し、承認されたMicrosoft社員のみが確認。条件を満たす顧客は申請により保存と人による確認を無効化できる |
| AWS(Amazon Bedrock) | AWSもモデル提供元も学習に使わない。モデル提供元には共有されない | 既定で入力・出力を保存しない。データは利用中のリージョン内に保存。最新の一部モデルは不正利用の検知のため最大30日保持 |
| Google Cloud(Vertex AI、現名称はGemini Enterprise Agent Platform) | 事前の許可や指示なしに学習に使わない | 不正利用の監視のためプロンプトを記録することがあり、要件に応じて例外を申請できる。応答高速化のためのキャッシュは24時間で、プロジェクト単位で無効化できる |
※2026年9月時点の各社公式ドキュメントによる。出典: OpenAI、Anthropicの利用規約とデータ保持、Microsoft、AWSの不正利用検知とFAQ、Google Cloud。各社の方針は更新されるため、最新の内容は必ず公式ページで確認してください。
表を見ると、法人向けサービスで「学習に使わない」はほぼ共通ですが、保持の扱いはサービスごとに違います。学習に使わないことと、送信したデータをまったく保存しないことは別の話です。不正利用の監視のために一定期間ログを保持するのが標準で、保持そのものをなくすには申請や上位の契約が必要になります。委託先から「学習には使われません」と説明されたら、それがどのサービスのどの契約に基づくのか、保持期間と保管地域はどうなっているのかまで聞く。この表は、その答え合わせに使ってください。
情報漏洩の経路は学習だけではない
学習の問題が契約と設定で整理できても、それで安全になったわけではありません。実際の漏洩リスクの多くは、AIサービスの仕様ではなく委託先の運用の中にあります。主な経路は5つです。
送信データのログと閲覧範囲。 表のとおり、AIサービス側には不正利用の監視のための保持があります。それに加えて、委託先が自社のシステムでプロンプト(AIへ送る入力文)や応答を記録していれば、そこにもコードが残ります。誰がそのログを見られるのか、いつ消すのかは、委託先の運用次第です。
データの保管地域。 法人向けサービスの多くは処理や保存の地域を指定できますが、指定しなければ海外で処理されることがあります。取引先との契約や社内規程で国内保管が求められている場合は、委託先がどのリージョン(データを処理・保管するデータセンターの地域)を使うかまで確認が必要です。
委託先の作業員のアクセス管理。 ソースコードは、AIだけでなく人も読みます。委託先の誰がコードにアクセスできるのか、作業用の端末や環境は分離されているのか、担当を外れた人のアクセス権は消えるのか。ここは従来の開発委託と同じ確認事項で、AIを使うからといって免除されるものではありません。
成果物やプロンプトへの機密情報の混入。 古いシステムのソースコードには、設定ファイルにデータベースのパスワードやAPIキーが直書きされていたり、コメントに顧客名が残っていたりすることがよくあります。コードごとAIに渡せば、それらも一緒に送信されます。渡す前に認証情報を取り除くこと、そして納品される仕様書やレポートに機密情報がそのまま転記されていないかを確認することが必要です。
再委託。 委託先がさらに別の会社や個人に作業を出していれば、そこにもコードが渡ります。NDA(秘密保持契約)や作業環境の条件が再委託先にも及ぶのか、そもそも再委託があるのかは、最初に聞いておくべき項目です。
次の図は、ソースコードが委託先を経由して生成AIサービスへ渡り、成果物として戻ってくるまでの流れと、それぞれの段階で確認すべきポイントをまとめたものです。
委託先に確認する8つの項目
ここまでの内容を、委託先への質問に落とし込みます。当社の商談で実際に多くいただく質問とも重なる項目です。
- 利用するAIサービスと契約種別。 「生成AIを使います」だけでは判断できません。どのベンダーのどのサービスを、個人契約ではなく法人向けの契約で使っているのかを聞きます
- 学習に使われないことの根拠。 口頭の説明ではなく、規約のどの条項に基づくのかを示してもらいます。前の表の出典が答え合わせに使えます
- データの保管場所と保持期間。 AIサービス側の保持期間と地域に加えて、委託先自身のログの保持期間と削除のルールを確認します
- 作業環境。 委託先が管理するクラウド上か、発注側のクラウド環境内に構築するのか、閉域か。作業員のアクセス管理と監査ログの有無もここに含まれます
- NDAの範囲。 AIサービスへの送信が秘密情報の「開示」に当たるのかどうかの整理があるか。生成AIの利用条件を明記したNDAが増えているため、契約書にAI利用の条項を入れることも検討します
- 実データの要否とマスキング。 個人情報を含む本番データを渡さずに済む方法があるか。データベースの構造情報や、個人を特定できる値を別の値に置き換えたテストデータで代替できるなら、渡すデータを最小限にできます
- 作業終了後のデータ削除。 預けたコードや資料を、いつ、どのように削除するのか。削除の報告を受けられるか
- 再委託の有無。 再委託があるなら、その先にも同じ条件が及ぶことの確認です
これらを1枚にまとめたのが、次の確認シートです。確認する理由と、回答を書き込む欄を横に並べています。
※実案件のものではなく、当社で作成したサンプル資料です。
聞き方のコツは、「安全ですか」と聞かないことです。安全かどうかは発注側の規程と照らし合わせて決まるもので、委託先が答えられるのは事実だけです。どのサービスを、どの契約で、どこで、誰が、いつまで扱うのか。事実を集めて社内で判断する形にすると、話が早く進みます。
ソースコードを社外に出せない場合の選択肢
社内の規程や取引先との契約で、ソースコードをクラウドに出せないケースもあります。その場合でも、AIを使った移行や解析をあきらめる必要はありません。現実的な選択肢は3つあります。
自社のクラウド環境内に専用環境を作る。 発注側が契約しているAWSやAzureの中に、委託先が作業環境を構築する方式です。コードは発注側のアカウントから出ず、生成AIも同じクラウドが提供するサービスを同じアカウント内で使えます。アクセス権の付与と剥奪を発注側が握れるため、作業終了後の削除も自分たちで確認できます。
閉域やオンプレミスで動かす。 インターネットに接続しない環境で、自前で動かせるモデルを使う方式です。ただし制約があります。使えるモデルが限られ、大規模なシステムの解析と変換に必要な精度や速度が出ないことがあります。GPU(AIの計算に使う高性能な処理装置)を備えた環境の準備と運用にも費用がかかります。要件が厳格な場合の選択肢ですが、移行の品質・期間・費用への影響を織り込んだうえで判断する必要があります。AIが移行のどの工程で何をしているかはAIマイグレーションとはで解説しています。
一部だけを渡す。 移行可能性の診断は、システム全体のコードがなくても進められます。代表的な画面やバッチ処理など一部のコードとシステム構成の概要があれば、使われている技術や複雑さ、移行の難所は把握できます。機密性の高いモジュールを除外する、認証情報や個人情報を取り除いてから渡す、といった調整もできます。最初から全部を出す必要はなく、診断の結果と委託先の管理体制を見てから、範囲を広げるかどうかを決めればよいのです。まずコードの解析と仕様書化だけを依頼して様子を見る進め方もあります。詳しくはソースコードからAIで仕様書を作る方法をご覧ください。
当社の運用
当社のAIマイグレーションでソースコードをどう扱っているかを説明します。
無料診断の段階からNDAを締結し、そのうえでシステム概要とソースコードの一部をお預かりします。作業環境は2つのパターンから選べます。当社が管理するクラウドAI基盤で作業するか、お客様のAWSまたはAzure環境内に専用環境を構築するかです。完全なオンプレミスや閉域での作業は、利用できるAIと運用条件を確認したうえで個別に判断しています。
生成AIサービスは法人向けの契約と設定で利用し、お預かりしたソースコードや資料がモデルの学習に使われない形で運用します。どのサービスをどの環境で使うのか、保持期間や地域はどうなるのかといった具体的な条件は、作業を始める前にご説明します。リージョンの指定や監査ログの設定といった追加の要件にも対応しています。
個人情報を含む実データは、初期診断では必須ではありません。データベースの構造情報や、マスキング・匿名化したテストデータをもとに検討します。テーブルの定義や項目の型だけでも、システムが何を管理しているかは読み取れるためです。この考え方は仕様書がないシステムの移行で説明しています。本番移行前の動作確認にどのデータを使うかは、お客様のセキュリティ要件に合わせて設計します。
こうした内容はよくあるご質問のセキュリティの項でもお答えしています。商談の場では、この記事の確認項目をそのまま質問として投げていただいて構いません。
まとめ
ソースコードが生成AIの学習に使われるかどうかは、契約と設定で決まります。法人向けの契約であれば、主要ベンダーは入力を学習に使わない方針を公式に公開しており、委託先がそれをどの契約で使っているかを確認すれば、学習の不安は事実として解消できます。一方で、情報漏洩の経路は学習だけではありません。ログの保持、保管地域、作業員のアクセス管理、機密情報の混入、再委託。これらは委託先の運用の問題であり、確認すべき項目は従来の開発委託と大きくは変わりません。
社外に出せない事情があるなら、自社のクラウド内に専用環境を作る、一部のコードだけで診断する、といった選択肢があります。当社の無料診断は、NDAを締結したうえでソースコードの一部をお預かりし、現状のリスクと移行可能性をまとめた診断レポートと概算費用をご提示するものです。作業環境や利用するAIサービスの条件は、開始前にご説明します。
よくある質問
Q. NDAを結べば、それで十分ですか?
NDAは委託先との契約であり、委託先が使う生成AIサービスのデータの扱いまでは規定しません。NDAに加えて、AIサービス側の契約種別と設定を確認する必要があります。NDAにAIサービスへの送信条件を明記しておくと、両者のつながりが明確になります。
Q. ソースコードにパスワードやAPIキーが埋め込まれています。どうすればよいですか?
渡す前に取り除き、可能であれば鍵やパスワードそのものを変更してください。委託先の側にも、受け取ったコードに認証情報が含まれていないかを確認する運用があるかを聞いておくと安心です。
Q. 個人情報を含むデータベースの中身も渡す必要がありますか?
初期診断では必要ありません。テーブルの定義や項目の型といった構造情報と、マスキングや匿名化を施したテストデータがあれば検討できます。本番移行前の確認で実データに近いものが必要になる場合は、その時点で範囲と方法を取り決めます。
Q. 生成AIを使わない移行会社に頼んだ方が安全ではありませんか?
人手で移行する場合でも、ソースコードは委託先に渡り、委託先の作業員が読みます。作業環境やアクセス管理、再委託の確認が必要な点は同じです。生成AIを使う場合に加わるのは、AIサービス側の契約と設定という確認項目で、これは公式資料で裏を取れる種類のものです。見積の根拠や進め方まで含めて委託先を比べる観点はマイグレーション見積の方法で扱っています。