Sicherheit
Sicherheit und Identitätsmanagement im KIVA LLM Gateway: Ein Überblick
Der KIVA LLM Gateway legt einen starken Fokus auf Sicherheit und Zugriffskontrolle, insbesondere durch die Implementierung eines robusten Identitäts- und Zugriffsmanagements (IAM), das auf die Bedürfnisse der öffentlichen Verwaltung zugeschnitten ist.
1. Service Account-basierte Kernauthentifizierung
Das zentrale Sicherheitsprinzip basiert auf der Service Account-basierten Authentifizierung. Dieses Vorgehen ermöglicht eine klare Trennung zwischen technischen und personengebundenen Identitäten.
Die Authentifizierung erfolgt in zwei Ebenen:
- Primäre Ebene (erforderlich): Diese Ebene sichert Service-zu-Service-Verbindungen ab und stellt sicher, dass nur autorisierte Anwendungen direkten Zugriff auf das LLM-Gateway erhalten. Die Authentifizierung erfolgt über einen Service Account API-Schlüssel in Form eines Bearer Tokens (
sa-xxxxxxxx), der im HTTP HeaderAuthorization: Bearer sa-xxxxxxxxxübermittelt wird. - Sekundäre Ebene (optional): Diese Ebene dient primär dem Monitoring und liefert zusätzliche organisatorische Claims wie
user_idoderteam_id. Hierfür wird ein Kiva JWT (Standard JWT mit organisatorischen Claims) im HTTP HeaderX-Kiva-JWTverwendet.
2. Hybrid-Authentifizierung und Autorisierung
Für Anwendungsfälle, die sowohl die technische Identität (Anwendung) als auch die Identität des Endbenutzers benötigen, kommt die Hybrid-Authentifizierung zum Einsatz:
- Das Service Account authentifiziert die Anwendung gegenüber dem LLM-Gateway.
- Das Keycloak JWT identifiziert den Endbenutzer und dessen Berechtigungen.
- Die Kombinierte Autorisierung prüft abschließend sowohl das Service-Account-Budget als auch die spezifischen Benutzerrechte.
3. Vorteile für Audit und Compliance
Das Service Account-basierte Management bietet signifikante Vorteile für die Einhaltung von Compliance-Anforderungen und Audits:
- Klare Audit-Trails: Die Nutzung von zweckgebundenen Zugriffen (Service Accounts) macht die Nachverfolgung aller Zugriffe und Vorgänge wesentlich einfacher und klarer.
- Vereinfachte Verwaltung: Es ist keine aufwändige individuelle Benutzer-Verwaltung auf dieser primären Ebene notwendig.
- Flexible Kostenzuordnung: Die Trennung ermöglicht eine präzise organisatorische Zuordnung der Kosten und die Budget-Kontrolle auf Ebene des Service Accounts, Teams oder basierend auf Tags (Kostenstellen).