0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Claude Agent SDK MCPサーバーのセキュリティ設計5軸

0
Posted at

Claude Agent SDKを活用して自社でMCPサーバーを構築する際に、情シス担当者が整理すべきセキュリティ設計の判断軸を5つに分類して解説します。

この記事を読んだほうが良い人

  • 社内AIエージェントの導入・自社構築を検討している情シス担当者
  • MCPサーバーのセキュリティ設計に判断軸が整っていない方
  • Claude Agent SDKを用いたAIエージェントの認証・権限・ネットワーク・監査ログ設計を整理したい方

Claude Agent SDK MCPサーバー設計の全体像

MCP(Model Context Protocol)は、AIエージェントが外部ツールやデータソースと安全にやり取りするためのオープンプロトコルです。AnthropicのClaude Agent SDKはこのプロトコルを実装しており、自社でMCPサーバーを構築することで、社内システムとAIエージェントを接続できます。

ただし、MCPサーバーは社内データへのアクセス窓口になるため、設計が甘いとAIエージェントが意図しない範囲のデータを読み書きするリスクが生じます。特に100名規模の企業では専任のセキュリティエンジニアがいないケースも多く、情シス担当者が設計判断を担わざるを得ない場面が増えています。

本記事では「どんな条件のときにどの選択肢を選ぶか」という判断フローの整理を目的として、設計の5つの軸を解説します。機能の使い方ではなく、設計選択の軸を示すことに絞っているため、Claude Agent SDK固有の操作手順は含みません。

MCPサーバーのセキュリティ設計を左右する5つの軸

設計判断は以下の5軸で整理できます。それぞれの軸ごとに「条件」と「推奨する選択肢」を示します。

各軸は独立しているわけではなく、互いに影響しあいます。たとえばホスティング場所をVPC内にするかどうかで、認証方式の選択肢が変わります。5軸をセットで検討することが重要です。

設計軸 判断のポイント
① ホスティング場所 社内オンプレ / VPC内 vs クラウドマネージドの選択
② 認証方式 APIキー vs OAuth2.0 の選択
③ スコープ設計 AIエージェントに与える権限の最小化
④ ネットワーク境界 どこに境界線を引くか
⑤ 監査ログ設計 何をどこまで記録するか

① ホスティング場所の選択

MCPサーバーをどこに置くかは、セキュリティと運用コストの両方に影響します。判断の基準は「アクセスするデータの機密度」と「既存インフラとの整合性」の2点です。

社内オンプレ / VPC内が適切なケース

  • 人事・給与・契約など、外部に出したくない機密データを扱う
  • 既存の社内認証基盤(Google WorkspaceのIDプロバイダー機能など)との連携が必要
  • コンプライアンス上、データが国外に出ることを禁止されている

クラウドマネージドが適切なケース

  • 扱うデータが公開情報や社内向け軽微な情報に限定される
  • 運用コストを抑えたい(インフラ管理を外部に委託できる)
  • 開発・検証フェーズで迅速に試したい

どちらを選ぶにせよ、「MCPサーバーへのネットワークアクセスを内部に限定する」ことは最低限の要件です。インターネットに直接公開した状態でAPIキーだけを認証に使う構成は、情シス目線では受け入れ困難なリスクを伴います。

② 認証方式の設計判断(APIキー vs OAuth2.0)

MCPサーバーへのアクセスに使う認証方式は、主にAPIキー認証とOAuth2.0ベースの認証の2択になります。以下に判断軸を整理します。

比較項目 APIキー認証 OAuth2.0
向いているアクセス主体 サービスアカウント(自動化処理) エンドユーザー対話型・IdP連携
トークン有効期限 明示的に設定しなければ無期限 アクセストークンは短命化が標準
漏洩時の影響範囲 キー単位で広い スコープ・有効期限で限定しやすい
運用の複雑さ シンプル(ローテーション運用が必要) やや複雑(IdP連携の設定が必要)
Google Workspace連携 一部API対応 Admin SDK等は基本OAuth必須

APIキー認証を選ぶ場合の注意事項

APIキーには、漏洩した場合の影響範囲が広く、失効・再発行の運用が煩雑になりやすいという固有のリスクがあります。採用する場合は以下の管理方針をセットで検討します。

  • キーをコードにハードコードしない(シークレットマネージャーや環境変数経由にする)
  • キーごとに権限スコープを絞り込む
  • 定期的なローテーション運用の頻度と担当者をあらかじめ決める

OAuth2.0が適切なケース

Google Workspace環境でAdmin SDK Directory APIなどのWorkspace APIにアクセスする際は、OAuthスコープが必須です。スコープは「読み取りのみか書き込みも必要か」「全ユーザーか特定OUか」を明確にした上で最小限のスコープを付与します。エンドユーザーが対話的にAIエージェントを操作するシナリオでは、OAuth2.0を選ぶことで既存のシングルサインオン基盤と統合できます。

③ スコープ最小化設計

AIエージェントに与える権限は「AIが実際に必要とする操作」に限定することが原則です。「とりあえず広めに与えておく」設計は、AIが誤操作や予期しない処理を行ったときのダメージを大きくします。

避けるべき設計パターン

  • ユーザー情報の読み取りだけで十分なのに、ユーザー管理全般(作成・削除・権限変更)の権限を付与する
  • 特定部門のフォルダ参照だけで十分なのに、共有ドライブ全体への読み書きを許可する
  • 一つのサービスアカウントにすべての操作権限を集約する

推奨するアプローチ

  • 操作カテゴリごとに権限を分離し、AIエージェントがどの操作を行うかを文書化する
  • 「読み取り専用」と「書き込みあり」の権限を別々のサービスアカウントやトークンで管理する
  • 定期的に「実際に使われているスコープ」を確認し、不要な権限を剥奪する監査サイクルを設ける

スコープ設計の基準は「もしこのAIエージェントが乗っ取られたとして、最悪のケースで何が起きるか」を想定して決めます。想定被害が許容範囲内になるように権限を絞り込むことが情シス担当者の仕事です。

④ ネットワーク境界設計

MCPサーバーはどこからでもアクセスできる状態にせず、アクセス元を明示的に制限します。

VPC / ファイアウォール設計の判断軸

  • AIエージェントの実行環境と同一VPC内、またはVPNで接続された環境からのみアクセスを受け付ける構成を基本とする
  • クラウドホスティングの場合、IPホワイトリストやVPCエンドポイントを活用して外部公開を避ける
  • Google Workspaceのセキュリティ設定からContext-Aware Accessを組み合わせる場合は、デバイスとユーザーの状態に基づくアクセス判断を検討できる

AIエージェント実行環境とMCPサーバーの関係

Claude Agent SDKを使った場合、AIエージェントの推論処理はAnthropic側のクラウドを経由します。このため「AIエージェントがMCPサーバーを呼び出す経路」が外部通信になる点は設計段階から意識が必要です。

この課題への対応として、MCPサーバーをインターネット公開せずに済む構成——具体的にはサーバーサイドでエージェントを動かし、MCPサーバーとの通信を内部ネットワークに閉じる設計——が取れるかどうかを、Claude Agent SDKの公式ドキュメントで確認するのが先決です。サーバーサイド実装とクライアントサイド実装では、ネットワーク設計の前提が大きく異なります。

⑤ 監査ログ設計

AIエージェントは人間よりも高速・大量にAPIを呼び出せるため、「何をいつ誰が(どのエージェントが)操作したか」を追える記録が不可欠です。

記録すべき最低限の項目

  • リクエスト日時とリクエスト元(エージェントID・サービスアカウント名)
  • 呼び出したMCPツール名とリクエストの概要(機密データはマスキング)
  • レスポンスステータス(成功 / 失敗 / タイムアウト)
  • アクセスしたリソースの識別子(ファイルID・ユーザーID等)

ログの保管と活用

ログは記録するだけでなく、異常検知の入力として活用できる状態にします。Google Cloud環境であればCloud Loggingへの集約、社内SIEMがあればその転送パイプラインを事前に用意しておきます。

また「AIエージェントがどのリソースに異常なアクセスを試みたか」を事後に検証できる体制がないと、インシデント対応時に原因追跡ができなくなります。AIエージェント導入前に監査ログの設計と保管期間をあらかじめ決めておくことが必要です。

特に注意すべき点として、AIエージェントは自然言語で指示を受けて動くため、「意図していない操作が含まれていた」と後から判明するケースがあります。操作ログが細かく残っていれば調査が速く完了しますが、ログが荒い(エラーしか記録していない等)状態だと問題の特定に数日かかることもあります。

導入前チェックリスト(5項目)

MCPサーバーを本番稼働させる前に以下を確認します。

  • ホスティング場所とアクセス経路の確定: 誰からどの経路でMCPサーバーにアクセスできるかをネットワーク図で明示できるか
  • 認証方式の選定と鍵管理ルールの文書化: APIキーまたはOAuthトークンの発行・ローテーション・失効フローが決まっているか
  • スコープ一覧の文書化: 付与している権限の一覧と、それが必要な理由を説明できるか
  • 監査ログの記録・保管・閲覧体制の確立: ログが指定の保管先に書き込まれていることを確認する手段があるか
  • インシデント時の対応フローの設定: AIエージェントが不正操作を行った場合に、どのアカウント・APIキーを無効化すれば止められるかが即座に分かるか

5項目すべてに「Yes」と答えられる状態にしてから本番稼働させることが、後から慌てないための最低ラインです。「動かしながら整備する」という進め方は通常のSaaSツール導入では許容できても、社内データに触れるAIエージェントには推奨しません。

まとめ

Claude Agent SDKでMCPサーバーを自社構築する際のセキュリティ設計は、①ホスティング場所、②認証方式、③スコープ設計、④ネットワーク境界、⑤監査ログの5軸で判断を整理できます。

重要なのは「とりあえず動く状態を作る」ではなく「何かあったとき止められる状態で動かす」という設計思想です。AIエージェントは人間よりも速く動き、広い権限でAPIを呼び出します。権限の絞り込みと監査ログの整備はAI導入前に済ませておく準備事項として扱います。

設計の各軸について「自社の要件ではどちらが適切か」を一度チームで議論するところから始めることを勧めます。特に認証方式とスコープ設計はあとから変更するコストが高くなりやすいため、最初の段階で丁寧に決めておく価値があります。本記事で整理した5軸のチェックリストを議論の入口として活用してください。

コーポレートITのご相談はお気軽に

この記事で書いたような業務改善・自動化の設計から実装まで、DRASENASではコーポレートITの現場に寄り添った支援を行っています。
「まず相談だけ」でも大歓迎です。DRASENAS 公式サイトからお気軽にどうぞ。


※ この記事は DRASENAS Blog の転載です。オリジナルではコードや設定手順が随時アップデートされています。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?