Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
MCPの認証と認可 - MCP Meetup Tokyo 2025
Search
Hi120ki
September 05, 2025
18
11k
MCPの認証と認可 - MCP Meetup Tokyo 2025
https://aiau.connpass.com/event/365588/
Hi120ki
September 05, 2025
Tweet
Share
More Decks by Hi120ki
See All by Hi120ki
運用して初めてわかったDevinのセキュリティ課題 - Devin Meetup Tokyo 2025
hi120ki
11
6.9k
SECCON13 - SECCON Beginners Workshop - Reversing
hi120ki
0
160
Reversing基礎編 / Basics of Reversing - SECCON Beginners Live 2022
hi120ki
5
2.1k
CTF大会開催はいいぞ。- 魔女のお茶会 2021冬 / Guide for holding CTF events
hi120ki
2
1.5k
Magicで学ぶWebセキュリティ - SECCON Beginners Live 2021
hi120ki
0
1.1k
Featured
See All Featured
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.9k
Unsuck your backbone
ammeep
671
58k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
34
2.3k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.2k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
30
2.9k
The Cult of Friendly URLs
andyhume
79
6.6k
Why Our Code Smells
bkeepers
PRO
340
57k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Building Adaptive Systems
keathley
44
2.8k
GraphQLとの向き合い方2022年版
quramy
49
14k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Building Applications with DynamoDB
mza
96
6.7k
Transcript
1 MCPの認証と認可 MCP Meetup Tokyo 株式会社メルカリ Hiroki Akamatsu
2 ⾃⼰紹介 Hiroki Akamatsu @hi120ki 株式会社メルカリAI Security Team所属 • 外部AIツールのセキュリティレビュー
• 安全な利⽤⽅法やガイドライン策定 • 社内のAIの取り組みのセキュリティ確保 • Platform(クラウド‧GitHub等)整備 • 社内LiteLLM基盤構築
3 MCPサーバーのセキュリティ 様々なベストプラクティスが提唱 • Security Best Practices - 公式MCP仕様 •
利⽤者⽬線で考える、MCPを安全に使うために - GMO Flatt Security • Research Briefing: MCP Security - Wiz Blog → ローカルではなくリモートMCPサーバーの利⽤が推奨 実際にサービス公式からリモートMCPサーバーが提供開始 • Atlassian MCP Server • Notion MCP Server • Linear MCP Server
4 リモートMCPサーバーのメリット ✅ 設定ファイルにアクセストークンが不要 ✅ ユーザーごとの動作バージョンが統⼀ ✅ 組織内での利⽤状況の可視性の向上
5 新たな動き 複数のサービスにまたがる処理をMCP化したい 公式のMCPサーバーが公開されていない 公式のMCPサーバーにない機能がほしい 社内の独⾃システムに接続したい → 内製のMCPサーバー開発の機運
6 MCPサーバーのセキュリティ 内製のMCPサーバー開発の機運 → とりあえずローカルMCPサーバーを開発 ❌ 設定ファイルにアクセストークンがハードコード ❌ ユーザーごとに動作バージョンが混在 ❌
組織内での利⽤状況の可視性の不⾜ 公式の認可仕様を満たしURLのみで接続できる 内製リモートMCPサーバー開発に期待 → 公式の認可仕様の「現在地」を確認
7 リモートMCPサーバーの認可の動き 1. MCPクライアントにMCPサーバーのURLを追加し有効化 Atlassian MCPを利⽤
8 リモートMCPサーバーの認可の動き 1. MCPクライアントにMCPサーバーのURLを追加し有効化 2. ブラウザが⽴ち上がり、サービスにログイン
9 リモートMCPサーバーの認可の動き 1. MCPクライアントにMCPサーバーのURLを追加し有効化 2. ブラウザが⽴ち上がり、サービスにログイン 3. MCPクライアントに許可する権限の範囲を確認し承認
10 リモートMCPサーバーの認可の動き 1. MCPクライアントにMCPサーバーのURLを追加し有効化 2. ブラウザが⽴ち上がり、サービスにログイン 3. MCPクライアントに許可する権限の範囲を確認し承認 4. MCPサーバーが利⽤可能に
11 リモートMCPサーバーの認可の動き(1)
12 リモートMCPサーバーの認可の動き(2)
13 リモートMCPサーバーの認可の動き(3)
14 リモートMCPサーバーの認可の動き(4)
15 リモートMCPサーバーの認可の動き(5)
16 リモートMCPサーバーの認可の動き(6)
17 リモートMCPサーバーの認可仕様の問題 内製リモートMCPサーバーで認可仕様をサポートできそう? → 実は挙動(4)に罠
18 リモートMCPサーバーの認可仕様の問題 内製リモートMCPサーバーで認可仕様をサポートできそう? → 実は挙動(4)に罠 OAuthクライアントIDの登録‧取得 → 各サービス上でOAuthクライアントを追加または参照する必要 → URLだけのMCP設定で接続したい
Dynamic Client Registrationプロトコルで⾃動クライアント登録(推奨) https://modelcontextprotocol.io/specification/2025-06-18/basic/authorization
19 Dynamic Client Registration
20 Dynamic Client Registrationの課題 既存の認可サーバーのDynamic Client Registration対応不⾜ • プロトコル⾃体が実装されていない •
リクエストに管理者レベルの権限が必要 ほとんどの著名サービスの認可サーバーはDCRや認証なしDCRに⾮対応 Okta, Google Cloud, Google Workspace, GitHub, Atlassian… 公式の認可仕様を満たしURLのみで接続できるリモートMCPサーバー → 現状だと困難 → Atlassian MCP Serverなどはどうしている?
21 Dynamic Client Registrationの既存の対応⽅法(1)
22 Dynamic Client Registrationの既存の対応⽅法(2)
23 Dynamic Client Registrationの既存の対応⽅法(3)
24 Dynamic Client Registrationの既存の対応⽅法(4)
25 Dynamic Client Registrationの既存の対応⽅法(5)
26 Dynamic Client Registrationの既存の対応⽅法(6)
27 Dynamic Client Registrationの既存の対応⽅法 公式の認可仕様を満たしURLのみで接続できるリモートMCPサーバー DCRに対応したMCP⽤独⾃認可サーバー内製が必要 → OAuth provider library
for Cloudflare Workersライブラリ 内製には認可サーバーの管理責務を持つ必要 • 正確なOAuth仕様の準拠のための知識 • 多数のアクセストークン‧OAuthクライアントの正確な処理 • ⾮対応のサービスごとに認可サーバーを管理 • DCRのセキュリティ考慮事項 ◦ https://datatracker.ietf.org/doc/html/rfc7591#section-5
28 Dynamic Client Registrationの既存の対応⽅法 • DCRのセキュリティ考慮事項 ◦ https://datatracker.ietf.org/doc/html/rfc7591#section-5 😇
29 Dynamic Client Registrationの今後 ⼀般的ではないDynamic Client Registrationを推奨する認可仕様 → DCRを利⽤しない認可仕様の追加の試み •
SEP-991: Enable URL-based Client Registration using OAuth Client ID Metadata Documents • SEP-1299 (SEP-1415): Server-Side Authorization Management with Client Session Binding SEP-991はMCP公式ブログにも取り上げられ注⽬度が⾼い Evolving OAuth Client Registration in the Model Context Protocol
30 MCPの認可仕様の今後 すべての連携先(Google, GitHub, …)ごとにブラウザを開く必要 → IdP(Okta)にログインするだけで連携が完了する試み • SEP-646: Enterprise-Managed
Authorization Profile for MCP IdPと各サービスの認可サーバー間で事前に設定をしておき、MCPクライ アントからID-JAGの仕組みを使ってアクセストークンをユーザー操作無く 取得 OktaではEA開始済み
31 まとめ 現在の内製リモートMCPサーバー提供には認可仕様の壁 → Dynamic Client Registration 提供⽅法はあるが内製の責任範囲の⼤きさ‧⻑期的な解消の⽅向性の存在 現時点で取り得るToDo •
プラットフォームでのアクセストークンの有効期限の短期化 • Keychainなどをサポートする安全な保管ソフトウェア利⽤ • 安全な利⽤⽅法の周知 • MCP仕様変更のキャッチアップ