Security
SC4SAP セキュリティアーキテクチャ
SC4SAP の安全装置は、文書ではなくコードで強制されます。何をブロックし、何を確認し、何をブロックできないのかまで、このページに記載しました。
- SAP 権限を超えることはありません登録した SAP ユーザーがすでに持っている権限の範囲内でのみ動作します
- 本番環境は読み取り専用QA・本番区分では、作成・変更・削除のツール自体がなくなります
- 機密データは取り出しません銀行・給与などのテーブルからの行抽出は、承認によっても解除されません
1.システムを守る仕組み
AI にできることを何重にも制限しています。層ごとに異なる方向で失敗するよう設計されているため、ある層が欠けたり誤って設定されたりしても、次の層がブロックします。
区分に応じてツールを除外します
接続ごとに開発・QA・本番の区分を付けます。QA と本番の区分では、システムを変更するツールがセッションから完全に外されます。AI は見えないツールを呼び出せないため、プロンプトを巧妙に書いても回避できません。区分は作成後に変更できず、変更するには接続を削除して作り直す必要があります。
機密テーブルからの行抽出をブロックします
銀行・給与およびこれに準ずるテーブルは、常時ブロックリストに登録されています。これらのテーブルの内容照会と SQL 照会は、リクエストがユーザーに届く前に拒否され、どこから得た承認によっても解除されません。
機密性の高い呼び出しは停止して人に確認します
前の 2 つの層を通過した機密性の高い呼び出しは、実行前にツールと正確な入力内容を表示して待機します。応答がなければ制限時間の経過後に自動的に拒否され、ブラウザを閉じた場合も拒否として扱われます。
MCP サーバー自体のガードは常に有効です
SAP と直接通信する MCP サーバー(abap-mcp-adt-powerup)の中にも、同じブロックが組み込まれています。プラグインのフックが欠けたり誤って設定されたりしても、この層は無効になりません。
インストール時に実際に確認します
設定ウィザードは接続直後にセッションの往復、システム情報、ADT 権限をチェックし、行抽出ブロックと区分ブロックのフックを登録したうえで、両方が実際にブロックされるかをスモークテストで確認します。このステップを通過しなければ、設定は完了しません。
2.ネットワーク環境に合わせた構成
SC4SAP は SAP の ADT(ABAP Development Tools)インターフェースで接続します。接続経路は会社のセキュリティポリシーに合わせて選べ、SC4SAP のためにポリシーで禁止されている経路を新たに開く必要はありません。
| 環境 | 構成 |
|---|---|
| 社内ネットワーク | プラグインはユーザーの PC 上の Claude Code の中で動作します。その PC から SAP サーバーに到達できればよく、SAP 側を外部に公開することはありません。 |
| リモート・外部接続 | VPN、許可リスト、ゲートウェイなど、会社ですでに使っている経路をそのまま使います。経路の構成は会社のポリシーに従います。 |
| S/4HANA Cloud | Public・Private の両エディションとも、ADT が有効であれば接続できます。 |
| 複数システム・複数法人 | 1 つの接続が 1 つのプロファイルです。開発・QA・本番や法人ごとのシステムをそれぞれ登録し、区分もそれぞれに付けます。 |
| ネットワーク分離・社内設置 | 環境ごとに条件が異なるため、導入相談の中で一緒に検討します。 |
回答を作成するために AI が読んだソースや照会結果は、モデル提供者(Anthropic)の API に送信されます。そのため、その API へ出ていく経路が必要です。ネットワークの外に送信できないデータには接続しないでください。
3.運用データと監査
- SAP データ
- SAP システムのコピーやバックアップを別途保存することはありません。作業に必要な分だけ、その都度読み取ります。
- モデルの学習
- お客様のコンテンツをモデルの学習に使用せず、サービス運営に必要な提供者以外の誰とも共有・販売しません。
- 認証情報
- プラグインは SAP のパスワードを OS のキーチェーン(Windows 資格情報マネージャー・macOS キーチェーン・Linux libsecret)に保管します。Web ワークスペースは接続情報を暗号化して保存し、保存後はブラウザに再表示しません。
- 監査記録
- Web ワークスペースは、アカウントごとにすべてのプロンプト、スキルの実行、承認・拒否を記録します。誰が何を許可したかを後から確認できます。
- システム変更
- 書き込みが許可された区分で行った変更は、シミュレーションではありません。登録した技術ユーザーを作成者として SAP に記録され、トランスポートに含まれるため、SAP の変更履歴にそのまま残ります。
一緒に守ってください
- 個人の管理者アカウントではなく、業務に必要な権限だけを付与した専用の技術ユーザーで接続してください。権限は定期的に見直してください。
- システムごとに正しい区分を付けてください。SC4SAP は、開発として登録された本番システムを見分けることができません。
- 新しいスキルは、まず非本番環境で実行してみてください。成果物はレビュー担当者のための下書きであり、会社のレビュー・承認・移送の手続きに代わるものではありません。
- リクエスト内容を読まずに承認しないでください。
4.SC4SAP Web(PoC)のセキュリティ水準
Web ワークスペースは PoC・クローズドテストの段階です。以下は現在適用している基準であり、正式リリースまでに構成が変わる可能性があります。
- HTTPS でのみ提供しますログイン Cookie は HTTPS でのみ送信されるよう設定されています。ログインは Google アカウントで行います。
- 外部に公開しているのは Web だけですAI セッションを実行するバックエンドは外部に公開しておらず、Web からのリクエストも署名を確認した後にのみ受け付けます。
- 接続情報は暗号化して保存しますSAP の接続情報と API キーは AES-256-GCM で暗号化され、ブラウザに返されることはありません。
- アカウントごとに同時セッション数を制限します1 つのアカウントが開ける AI セッションの数に上限があります。
- デプロイの前に毎回、依存関係の脆弱性をチェックします既知の脆弱性が見つかった場合は、バージョンを上げて対処してからデプロイします。
PoC 段階で本番システムを接続する場合は、導入相談の中でまず構成を一緒に検討します。
5.安全装置でブロックできないもの
安全装置はリスクを減らすためのセーフティネットであり、コンプライアンスプログラムではありません。
- データを代わりに分類することはできません。カスタムテーブルのうち、どれに個人情報が含まれているかはわかりません。
- ソースコードに直接書かれた値はソースの一部であるため、読み取りを依頼したプログラムに機密性の高い値があれば、そのまま読み取られます。
- AI の結果は誤っていたり不完全だったりする可能性があります。重要なシステムへの反映は、資格のある人が責任を持って行う必要があります。
セキュリティレビューが必要ですか
環境別の構成やセキュリティチームによるレビューは、導入相談の中で一緒に確認します。脆弱性と思われる事例は sc4sap.dev@gmail.com までお知らせください。