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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Hi120ki
September 05, 2025
14k
20
Share
MCPの認証と認可 - MCP Meetup Tokyo 2025
https://aiau.connpass.com/event/365588/
Hi120ki
September 05, 2025
More Decks by Hi120ki
See All by Hi120ki
メルカリのClaude Codeセキュリティ設定の組織配布戦略 - Claude Code Meetup Japan #4
hi120ki
26
46k
メルカリのセキュアなDevin管理の自動化 - Devin / Windsurf Meetup Tokyo
hi120ki
3
1.6k
運用して初めてわかったDevinのセキュリティ課題 - Devin Meetup Tokyo 2025
hi120ki
13
8.3k
SECCON13 - SECCON Beginners Workshop - Reversing
hi120ki
1
270
Reversing基礎編 / Basics of Reversing - SECCON Beginners Live 2022
hi120ki
5
2.2k
CTF大会開催はいいぞ。- 魔女のお茶会 2021冬 / Guide for holding CTF events
hi120ki
2
1.6k
Magicで学ぶWebセキュリティ - SECCON Beginners Live 2021
hi120ki
0
1.1k
Featured
See All Featured
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
62
53k
Why Our Code Smells
bkeepers
PRO
340
58k
Designing for Performance
lara
611
70k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.2k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.5k
Utilizing Notion as your number one productivity tool
mfonobong
4
290
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
420
Code Review Best Practice
trishagee
74
20k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.9k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
770
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
710
sira's awesome portfolio website redesign presentation
elsirapls
0
210
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仕様変更のキャッチアップ