Kriterien für Schauspieler

Moderne Unternehmensanwendungen stützen sich zunehmend auf Delegationsszenarien, bei denen ein Dienst oder Agent im Namen eines Benutzers handelt. Ob es sich nun um einen KI-Assistenten handelt, der auf Ihren Kalender zugreift, um einen Microservice, der mit Benutzerberechtigungen APIs aufruft, oder um ein Szenario mit Vollmacht – eine sichere Delegierung ist von entscheidender Bedeutung. IBM® Verify bietet nun durch konfigurierbare Akteurskriterien mehr Flexibilität bei der Autorisierung dieser Delegationsbeziehungen.

Die Herausforderung beim herkömmlichen Token-Tausch

OAuth 2.0 Token Exchange (RFC 8693) ermöglicht die Delegierung, indem es einem Akteur erlaubt, Token im Namen eines Subjekts (in der Regel eines Benutzers) zu beziehen. Traditionell wird diese Berechtigung über eine may_act im Token des Subjekts eingebettete Berechtigungsangabe gesteuert, die genau festlegt, welche Akteure in seinem Namen handeln dürfen. Dieser Ansatz funktioniert zwar, bringt jedoch einige praktische Herausforderungen mit sich:
  • Eingeschränkte Flexibilität : Es ist schwierig, einen Kreis zulässiger Akteure festzulegen und gleichzeitig die Sicherheit zu gewährleisten. Bei der Ausstellung des Subjekt-Tokens muss die genaue Identität des Akteurs bekannt sein.
  • Komplexe Token-Verwaltung : Anwendungen müssen zusätzliche Schritte durchführen, um den may_act Claim in die Subject-Token einzufügen.

Kriterien für Schauspieler

IBM Verify Jetzt können Sie die Kriterien für Akteure mithilfe flexibler CELx-Ausdrücke direkt in Ihrer Anwendungskonfiguration festlegen. Dadurch entfällt die Notwendigkeit, Subjekt-Token anzupassen, und es werden kontextbezogene Kriterien ermöglicht.

Wichtige Vorteile:
  • Zentrale Steuerung über die Anwendungskonfiguration.
  • Unterstützung für dynamische Akteure wie KI-Agenten und Automatisierungsdienste.
  • Vereinfachte Abläufe ohne Vorverarbeitung der Token.
  • Vollständige Abwärtskompatibilität mit der bestehenden may_act Antragsbearbeitung.

Konfiguration

Für Bewerbungen
  1. Rufen Sie die Verwaltungskonsole auf und wählen Sie „Anwendungen “ > „Anwendungen “. Klicken Sie auf „Anwendung hinzufügen“ und wählen Sie eine der Anwendungen im Zusammenhang mit „ OpenID Connect“ aus oder bearbeiten Sie eine bereits vorhandene.
  2. Navigieren Sie auf der Registerkarte „Anmeldung “ zum Abschnitt „Token-Austausch “. Klicken Sie in der Kachel „Akteurskriterien“ auf „Kriterien festlegen“, um Ihren CELx-Ausdruck einzugeben.
  3. Speichern Sie Ihre Konfiguration.

Ausdrücke für Akteurskriterien

Ausdrücke für Akteurskriterien verwenden CELx und haben über das requestObject. Zugriff auf die Token-Angaben zu Subjekt und Akteur. Beispiel:
{
  "requestContext": {
    "grant_type": ["urn:ietf:params:oauth:grant-type:token-exchange"],
    "scope": ["email:read", "calendar:read", "documents:read"],
    "requested_token_type": ["urn:ietf:params:oauth:token-type:access_token"],
    "client_id": ["ai-assistant-app"],
    "subject_token": {
      "sub": "user-123",
      "email": "Jessica@example.com",
      "name": "Jessica Smith",
      "iss": "https://abc.verify.ibm.com/oauth2",
      "exp": 1737537000,
      "iat": 1737533400,
      "scope": ["openid", "profile", "email"]
    },
    "actor_token": {
      "agent_id": "ai-assistant-gpt-001",
      "name": "AI Assistant GPT",
      "type": "ai-agent",
      "version": "4.0",
      "purpose": "general-assistance",
      "certified": true,
      "provider": "openai",
      "iss": "spiffe://abc.com",
      "exp": 1737537000,
      "iat": 1737533400
    }
  }
}
Eine vollständige Dokumentation zur CELx-Syntax finden Sie im Handbuch zu den Attributfunktionen.
Beispielausdrücke
Prüfung der Angaben im Subjekt- und Akteur-Token:
requestContext.actor_token.type == 'ai-agent' && 
    requestContext.actor_token.certified == true && 
    requestContext.subject_token.ai_delegation_enabled == true
Bestimmte Bereiche validieren:
requestContext.actor_token.type == 'ai-agent' && 
    requestContext.scope.all(s, s in ['email:read', 'calendar:read', 'documents:read'])

Verhalten zur Laufzeit

Wenn eine Anfrage zum Token-Austausch eingeht, führt „ IBM Verify “ folgende Schritte aus:
  • Überprüft sowohl Subjekt- als auch Akteur-Token.
  • Wertet den Ausdruck für die CELx-Akteurskriterien aus.
  • Überprüft optional die traditionelle may_act Behauptung (sofern diese nicht übersprungen wurde).
  • Gibt ein delegiertes Token mit einem erweiterten Akt-Anspruch aus, wenn alle Prüfungen erfolgreich sind.
Der Prozess ist für Anwendungen transparent und verursacht nur minimale Latenz.