Sicherheit • 2026-03-26
MCP-Verbindungen mit OAuth absichern: Vollständiger Leitfaden
MCP Trail Team
Sicherheitsteam
MCP-Verbindungen mit OAuth absichern: Vollständiger Leitfaden
OAuth bietet sichere, standardisierte Autorisierung für MCP-Verbindungen. Dieser Leitfaden behandelt Implementierungsmuster und Best Practices.
Warum OAuth für MCP?
- Standardisierte Sicherheit: Branchenbewährtes Protokoll
- Token-basierter Zugriff: Keine Anmeldedaten in Anfragen
- Fein granulare Berechtigungen: Scope-basierte Zugriffskontrolle
- Benutzer-Delegation: Begrenzten Zugriff ohne Freigabe von Anmeldedaten ermöglichen
OAuth-Flow für MCP
1. Autorisierungsanfrage
const authUrl = `https://auth.example.com/authorize?
client_id=${clientId}
&redirect_uri=${redirectUri}
&response_type=code
&scope=mcp:read mcp:write
&state=${securityToken}`;
2. Token-Austausch
const tokenResponse = await fetch('https://auth.example.com/token', {
method: 'POST',
headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
body: `grant_type=authorization_code
&code=${authCode}
&client_id=${clientId}
&client_secret=${clientSecret}`
});
const { access_token, refresh_token } = await tokenResponse.json();
3. MCP-Anfrage mit Token
const mcpRequest = {
tool: 'my_tool',
arguments: args,
authorization: `Bearer ${accessToken}`
};
Implementierungsmuster
Server-zu-Server (Client Credentials)
Für Maschine-zu-Maschine-Kommunikation:
const serverAuth = {
grant_type: 'client_credentials',
client_id: 'mcp-server',
client_secret: 'server-secret',
scope: 'mcp:github mcp:jira'
};
Benutzer-Delegation (Authorization Code)
Für benutzerinitiierte Aktionen:
const userAuth = {
grant_type: 'authorization_code',
code: authCode,
redirect_uri: callbackUrl,
client_id: clientId
};
Token-Management
Refresh-Tokens
const refreshAccessToken = async (refreshToken) => {
const response = await fetch(tokenEndpoint, {
method: 'POST',
body: `grant_type=refresh_token
&refresh_token=${refreshToken}
&client_id=${clientId}`
});
return response.json();
};
Token-Widerruf
const revokeToken = async (token) => {
await fetch(revokeEndpoint, {
method: 'POST',
body: `token=${token}`
});
};
Sicherheits-Best Practices
- HTTPS verwenden: Immer Datenverkehr verschlüsseln
- Kurzlebige Tokens: Token-Lebensdauer minimieren
- Sichere Speicherung: Tokens verschlüsselt speichern
- Regelmäßige Rotation: Tokens häufig erneuern
- Scope-Beschränkung: Minimal erforderliche Scopes anfordern
Conclusion
OAuth bietet robuste Sicherheit für MCP-Infrastruktur. Implementieren Sie proper Token-Management und folgen Sie Sicherheits-Best Practices, um Ihre KI-Systeme zu schützen.
Verwandte Artikel
- MCP Sicherheits-Best Practices - Umfassender Sicherheitsleitfaden
- GitHub MCP einrichten - OAuth-Implementierungsbeispiel
- Jira MCP einrichten - Ein weiteres OAuth-Beispiel
- Top 10 MCP-Server 2026 - MCP-Integrationen entdecken
- MCP im großen Maßstab: Lehren aus der Produktion - Sicherheit im großen Maßstab