Laravel MCPツールによるAIエージェントのセキュリティ確保
MCP経由でAIエージェントにアプリへのアクセス権を与えることは、誰かにキーリングを渡すようなものです。ルールを設定しなければ、彼らは間違ったドアを開けてしまうかもしれません。
最近、マルチテナントのLaravelアプリ向けにMCPツールを構築しました。私の目標は一つでした。エージェントに他人のデータを見せることなく、アプリを操作させることです。
MCPツールの問題点
すべてのMCPツールはエンドポイントです。エージェントがツールを呼び出すと、サーバーがコードを実行します。マルチテナントアプリでは、すべてのツールが次の2つの問いに答えなければなりません。
- これを行う権限がありますか?
- この特定の組織内でそれを行う権限がありますか?
一つでも欠けると、データが漏洩します。
なぜ標準的なマルチテナンシーでは不十分なのか
通常のWebアプリでは、セッションがあります。組織IDによってデータをフィルタリングするためにグローバル
