Unterstützung für Plug-in-fähige Token

Die Unterstützung für Plug-in-fähige Sicherheitstoken stellt Plug-in-Punkte für angepasste Typen von Sicherheitstoken bereit, darunter Tokengenerierung, Tokenvalidierung und Zuordnung einer Clientidentität zu einer WebSphere Application Server-Identität, die von der Java™-EE-Engine für Berechtigung (Java Platform, Enterprise Edition) verwendet wird. Darüber hinaus ist es in der modular aufgebauten Architektur für Tokengenerierung und -validierung möglich, XML-basierte Token in den Header von Web-Service-Nachrichten einzufügen und diese dann auf Empfängerseite zu validieren.

Wichtig: Es gibt eine wichtige Unterscheidung zwischen Anwendungen der Version 5.x und Version 6.0.x. Die Informationen in diesem Artikel gelten nur für Anwendungen der Version 5.x, die in WebSphere Application Server Version 6.0.x und höher verwendet werden. Diese Informationen gelten nicht für Anwendungen der Version 6.0.x.

Der erweiterbare Mechanismus von WebSphere Application Server für die Anmeldezuordnung unterstützt die Verarbeitung neuer Typen von Authentifizierungstoken. WebSphere Application Server bietet eine modular aufgebaute Architektur für die Generierung von Sicherheitstoken auf der Seite des Nachrichtensenders und die Validierung des Sicherheitstoken auf der Seite des Nachrichtempfängers. Die Architektur basiert auf den JAAS-APIs (Java Authentication and Authorization Service).

Mit der Implementierung javax.security.auth.callback.CallbackHandler können Sie gemäß den folgenden Richtlinien neue Typen von Sicherheitstoken erstellen:
  • Verwenden Sie einen Konstruktor, der einen Benutzernamen (Zeichenfolge oder null, sofern nicht definiert), ein Kennwort (char[] oder null, sofern nicht definiert) und java.util.Map (leer, sofern keine Eigenschaften definiert sind) akzeptiert.
  • Verwenden Sie handle()-Methoden, die die folgenden Implementierungen verarbeiten können:
    • javax.security.auth.callback.NameCallback
    • javax.security.auth.callback.PasswordCallback
    • com.ibm.wsspi.wssecurity.auth.callback.XMLTokenCallback
    • com.ibm.websphere.security.auth.callback.WSCredTokenCallbackImpl
    Wenn
    1. die Implementierung von javax.security.auth.callback.NameCallback oder von javax.security.auth.callback.PasswordCallback mit Daten gefüllt ist, wird ein Element <wsse:UsernameToken> generiert.
    2. com.ibm.websphere.security.auth.callback.WSCredTokenCallbackImpl mit Daten gefüllt ist, wird das Element <wsse:BinarySecurityToken> aus der Implementierung von com.ibm.websphere.security.auth.callback.WSCredTokenCallbackImpl erstellt.
    3. com.ibm.wsspi.wssecurity.auth.callback.XMLTokenCallback mit Daten gefüllt ist, wird basierend auf dem von XMLTokenCallback zurückgegebenen DOM-Element (Document Object Model) ein XML-basiertes Token erstellt.

    Verschlüsseln Sie das Tokenbyte mit dem Sicherheitshandler und nicht mit der Implementierung javax.security.auth.callback.CallbackHandler.

Sie können die Schnittstelle "com.ibm.wsspi.wssecurity.auth.callback.CallbackHandlerFactory" implementieren, das eine Factory für die Instanziierung der javax.security.auth.callback.CallbackHandler-Implementierung ist. Für eine eigene Implementierung müssen Sie die Schnittstelle "javax.security.auth.callback.CallbackHandler" verwenden. Die WS-Security-Laufzeit instanziiert die Implementierungsklasse der Factory und übergibt die Authentifizierungsdaten aus dem Header der Web-Service-Nachricht mit Setter-Methoden an die Factory-Klasse. Anschließend ruft die WS-Security-Laufzeit die Methode newCallbackHandler() der Implementierungsklasse der Factory auf, um eine Instanz des Objekts javax.security.auth.CallbackHandler anzufordern. Das Objekt wird an die JAAS-Anmeldekonfiguration übergeben.

Das folgende Beispiel zeigt die Definition der Schnittstelle "CallbackHandlerFactory":
public interface com.ibm.wsspi.wssecurity.auth.callback.CallbackHandlerFactory {
       public void setUsername(String username);
       public void setRealm(String realm);
       public void setPassword(String password);
       public void setHashMap(Map properties);
       public void setTokenByte(byte[] token);
       public void setXMLToken(Element xmlToken);
       public CallbackHandler newCallbackHandler();

Symbol, das den Typ des Artikels anzeigt. Konzeptartikel



Symbol für Zeitmarke Letzte Aktualisierung: 25.05.2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cwbs_plugtokensp
Dateiname:cwbs_plugtokensp.html