Claude Cowork|法務・情シスが安心する「貼ってはいけない情報」の境界設計
目次 クリックで開く
生成AIの進化により、エンジニアの生産性は劇的に向上しました。特にAnthropicがリリースしたClaude Codeは、ターミナルから直接リポジトリを操作し、コードの修正からテスト、デプロイの準備までを完結させる「エージェント型」のツールとして注目を集めています。
しかし、企業の法務部門や情報システム部門(情シス)にとって、Claude Codeは「ブラックボックス」に見えがちです。「リポジトリ内の情報をすべて外部に送信しているのではないか?」「ソースコードに含まれる秘密情報が学習に使われないか?」という懸念は、導入を阻む大きな壁となります。本記事では、IT実務担当者の視点で、Claude Codeを安全に運用するための「情報の境界線」と、具体的なガードレールの敷き方を詳説します。
【情シス・法務向け】Claude Codeのデータプライバシーと安全性
まず、管理部門が最も懸念する「データが学習に使われるかどうか」という点について、公式の仕様に基づき整理します。
Anthropicのデータ取り扱いポリシー
Claude Codeは、AnthropicのAPI(Messages API)を介して動作します。公式の「Commercial Terms」によれば、APIを通じて送信されたデータがAnthropicのモデル学習に使用されることは、明示的にオプトアウト(拒否)の設定をせずとも、デフォルトで「学習には利用されない」と定義されています。これはブラウザ版の無料プラン(Claude.ai)とは大きく異なる、法人利用における大前提です。
ローカル実行とアクセス権限
Claude Codeは、ユーザーのローカル環境の権限を引き継いで動作します。つまり、そのエンジニアがアクセスできないファイルにClaude Codeが勝手にアクセスすることはありません。ただし、リポジトリ全体をコンテキストとして読み取るため、意図しないファイル(古いメモ書きや設定ファイル)がプロンプトに含まれるリスクは存在します。
貼ってはいけない「情報の境界線」:4つのリスクカテゴリ
実務上、Claude Codeに「読み取らせてはいけない」あるいは「プロンプトに含めてはいけない」情報の境界線は、以下の4つに分類されます。
| カテゴリ | 具体例 | リスク |
|---|---|---|
| 1. 認証情報 | APIキー、AWSアクセスキー、DBパスワード(.env, .json) | 認証情報の外部送信およびログへの残留 |
| 2. 個人情報 (PII) | テストデータ内の顧客メールアドレス、氏名、住所 | 個人情報保護法およびGDPRへの抵触 |
| 3. インフラ構造 | 内部IPアドレス、未公開のドメイン、VPN構成 | ネットワーク攻撃の脆弱性情報の露呈 |
| 4. 独自ロジック | 特許出願前のアルゴリズム、極秘のビジネスルール | 競合他社への技術流出(学習はされずとも送信はされるため) |
特に、バックオフィス系のシステム構築においては、会計データや給与データがリポジトリ付近のテストデータとして存在するケースがあり、注意が必要です。例えば、給与ソフトからfreeeへの仕訳連携などを自社開発している場合、開発環境に本番同等のデータが混入していないかを厳格に管理しなければなりません。
Claude Codeを守る「技術的な壁」の構築手順
「触れてはいけない情報」を定義したら、次はそれをClaude Codeに物理的に読み取らせないための設定を行います。
1. .gitignore と CLAUDE.md による二重のガード
Claude Codeはデフォルトで .gitignore に指定されたファイルを無視しますが、それだけでは不十分な場合があります。プロジェクトのルートに CLAUDE.md を配置し、Claude Codeに対する「行動指針」を明文化します。
CLAUDE.md Security Rules DO NOT read any files in the tests/fixtures/ directory containing PII. DO NOT access .env or any file ending in .secrets. Before suggesting any network-related changes, warn the user about security implications.
2. permissions.deny による読み取り拒否
法務・情シスが指定する「機密ディレクトリリスト」を、プロジェクトの .claude/settings.json にある permissions.deny 配列へ Read(...) ルールとして登録する運用が推奨されます。deny は allow より優先されるため、指定したパスの読み取りを確実に止められます。
// .claude/settings.json
{
"permissions": {
"deny": [
"Read(./.env)",
"Read(./.env.*)",
"Read(./secrets/**)",
"Read(./config/**)"
]
}
}
3. スキル(Skills)の制限
Claude Codeには「コマンドを実行する」「ファイルを編集する」といったスキルが備わっています。情シス側の懸念として「AIが勝手に外部の未知のURLにデータを送信するスクリプトを書いて実行してしまわないか」という点があります。これに対しては、実行前の「承認フロー」を仕組みとして組み込む必要があります。
プロジェクト種別 × Claude Code セキュリティ設定 必要度早見表
前のセクションで技術的なガード設定(.gitignore / CLAUDE.md等)を解説しましたが、「どのプロジェクトにどこまでのセキュリティ設定が必要か」は、扱う情報の機密性と業種によって大きく変わります。以下の表は、代表的なプロジェクト種別ごとに、情報リスクの高さ・設定すべきガード項目・チームへの周知レベルをまとめたものです。情報システム部門や法務担当者が利用ガイドライン策定の基準表として活用できます。
| プロジェクト種別 | 情報リスクレベル | 必須のガード設定 | Claude Codeへのコンテキスト渡し方針 | 法務・情シスへの説明方法 |
|---|---|---|---|---|
| 社内管理ツール(勤怠・経費) | 中(社員の個人情報含む) | .gitignoreに.env・認証ファイルを追記。テストデータは匿名化(氏名→AAA等) | DBスキーマとサンプルレコード(匿名化済み)のみ渡す。本番環境の接続情報は含めない | 「学習利用なし・API通信はTLS暗号化・本番データは渡さない」の3点でドキュメント化 |
| 会計・請求書システム(freee/kintone連携開発) | 高(財務情報・顧客売掛金含む) | CLAUDE.mdに「顧客名・金額が入った実データは渡さないこと」を明記。本番API keyは環境変数で管理しgitに含めない | APIのレスポンス形式(サンプルJSON)と処理ロジックのみ渡す。顧客名・金額は「customer_id:001, amount:XXXX」に置換してからプロンプトへ | freee/kintoneのAPI利用規約のデータ取り扱い条項を情シスに共有。「Claude Codeは認証情報を記憶しない」を明示 |
| 医療・クリニックシステム | 最高(要配慮個人情報) | .claude/settings.jsonのpermissions.denyで患者データディレクトリを丸ごと読み取り拒否(例:Read(./patient_data/**))。開発環境に本番DBへの接続を物理的に持たせない | 画面仕様書・ER図(患者IDのみで氏名・病名なし)のみ渡す。患者情報を含むSQL実行はClaude Codeに依頼しない | 厚労省「医療情報システム安全管理ガイドライン」の「外部サービス利用」条項を引用してリスク評価を実施。DPIAが必要な場合は別途 |
| 社内向けWebアプリ(ダッシュボード等) | 低〜中(業務KPIデータ) | .gitignoreで.envを除外する基本設定のみ。特別な追加ガードは不要 | コンポーネント設計・APIレスポンス仕様を積極的に渡してよい。数値データもダミー値に差し替えれば問題なし | 「外部API送信はするが学習には使われない」「本番データは渡していない」の2点で説明 |
| EC・顧客向けサービス開発 | 高(顧客PII・決済情報含む可能性) | CLAUDE.mdに「個人情報保護法上の個人情報(氏名・メールアドレス・住所)は含めないこと」を明記。Stripeの本番秘密キーは絶対に含めない | 注文フロー仕様・エラーハンドリングは積極的に渡してよい。顧客IDはハッシュ値に置換してからプロンプトへ | PCI-DSS準拠の観点から決済情報がClaude Code経由で送信されないことを確認・記録。セキュリティ監査への説明資料として保管 |
このような整理を経て、多くの情報システム部門が行き着く結論は「Claude Codeのリスクはプロンプト設計の問題であり、ツール自体の問題ではない」というものです。本番データを渡さない・認証情報を含めない・個人情報をマスクするという3原則を徹底すれば、多くの業務プロジェクトでClaude Codeを安全に活用できます。次のセクションでは、この方針を組織内の承認フローとして定着させる方法を解説します。
【実務編】法務を安心させる「承認フロー」と運用ルール
ツールを導入するだけでなく、運用ルールをセットにすることで法務の承認を得やすくなります。
プルリクエスト(PR)運用の徹底
Claude Codeが生成したコードを直接 main ブランチにマージすることは絶対に避けなければなりません。以下のフローを標準化します。
- Step 1: Claude Codeがローカルでブランチを作成し、コードを修正。
- Step 2:
Summary of changesコマンドで変更内容を人間が確認。 - Step 3: GitHub等へPushし、別のエンジニア(またはテックリード)がレビュー。
- Step 4: セキュリティスキャン(SnykやGitHub Advanced Security)をCI/CDで回す。
特に、SaaS連携などの複雑なアーキテクチャを扱う場合、AIは「動くコード」は書きますが「最もセキュアなコード」を優先するとは限りません。例えば、SaaSアカウント管理の自動化をClaude Codeで実装する際、APIキーの扱いがハードコードされていないか、人間の目によるチェックが不可欠です。
非エンジニアとの役割分担
法務や情シスがGitを直接見ることが難しい場合、Claude Codeに「今回の変更によるセキュリティ的な影響をMarkdownで要約せよ」と指示を出し、その内容をドキュメントとして共有する運用も有効です。
SaaS・会計・労務リポジトリでのClaude Code活用事例
具体的な業務DXのシーンで、どのようにClaude Codeを「安全に」使いこなすかの事例を紹介します。
事例:経費精算データの自動クレンジングスクリプト作成
「楽楽精算」と「freee会計」のデータを突合させるための変換スクリプトをClaude Codeで作る場合、以下のようなディレクトリ構成とルールを適用します。
/project-root ├── scripts/ (Claude Codeが編集する場所) ├── mapping_logic.py ├── .gitignore (ここに raw_data/ を含める) ├── CLAUDE.md (「raw_dataの中身は絶対に見るな」と記述) └── raw_data/ (本物のCSV。Claude Codeからは不可視)
このように、「ロジック」と「実データ」を分離し、実データをClaude Codeの視界から完全に消すことが、最大の防御となります。この手法は、「CSV手作業」を滅ぼすアーキテクチャを構築する際にも非常に有効です。
まとめ:ガードレールを敷いてClaude Codeの出力を最大化する
Claude Codeは、正しく制約をかければ、法務・情シスが懸念する「情報の流出」を防ぎつつ、開発速度を数倍に高める強力な武器になります。大切なのは「AIを信頼すること」ではなく、「AIがミスをしても致命傷にならない仕組み(境界線)」をシステム的に構築することです。
- データ保護: API経由の送信データは学習に使われないことを再確認する。
- 技術的遮断:
.gitignore(既定で読み取り対象外)と.claude/settings.jsonのpermissions.denyによるRead(...)ルールを組み合わせて、機密情報へのパスを確実に断つ。 - プロセス管理: 人間によるレビューと、CIでの自動セキュリティチェックを必須とする。
これらの対策を講じることで、エンタープライズ環境においてもClaude Codeの恩恵を安全に享受することが可能になります。まずは、機密情報を含まない小さなユーティリティの作成から、法務・情シスと共に「成功体験」を積み重ねていくことをお勧めします。
Claude Coworkの情報境界線設計を実務に落とし込む段階では、「貼ってよい情報」のリスト化と並行して permissions.deny などのツール側の制御を組み合わせ、どのリポジトリ・ディレクトリを誰にどこまで開くかの権限設計と監査証跡を仕組みとして整備することが情シス・法務の承認を得やすくします。組織のルールづくりからPoC設計まで、自社に合わせた進め方は Claude Code 導入支援 でもご相談いただけます。
生成AIの法人導入・セキュリティ設計のご相談
ChatGPTやClaudeなど生成AIのプラン選定・セキュアな全社導入・権限/ログ設計を、貴社の体制に合わせて整理します。すでに導入済みの環境について『この設計で問題ないか』を確認したい、という導入前後のセカンドオピニオンにも対応しています。
AI・業務自動化
ChatGPT・Claude APIを活用したAIエージェント開発、n8n・Difyによるワークフロー自動化で繰り返し業務を削減します。まずはどの業務をAI化できるか診断します。