Angepassten TAI für das Liberty-Profil entwickeln
Sie können eine angepasste TAI-Klasse (Trust-Association-Interceptor) entwickeln, indem Sie die im Liberty Profile-Server bereitgestellte Schnittstelle com.ibm.wsspi.security.tai.TrustAssociationInterceptor implementieren.
Informationen zu diesem Vorgang
Die Trust-Association-Schnittstelle ist eine Service-Provider-API, die die Integration von Sicherheitsservices anderer Anbieter mit einem Liberty Profile-Server ermöglicht. Beim Verarbeiten der Webanforderung sendet der Liberty Profile-Server die Anforderungen HttpServletRequest und HttpServletResponse an die TAIs. HttpServletRequest ruft die Methode isTargetInterceptor des Interceptor auf, um festzustellen, ob der Interceptor die Anforderung verarbeiten kann. Nachdem ein geeigneter TAI ausgewählt wurde, wird HttpServletRequest von der Methode negotiateValidateandEstablishTrust des Interceptor verarbeitet und gibt das Ergebnis in einem Objekt des Typs TAIResult zurück. Sie können in jede Methode der angepassten TAI-Klasse Ihren eigenen Logikcode aufnehmen.
Weitere Informationen hierzu finden Sie auch im Java™-API-Dokument für die TAI-Schnittstelle, Ausführliche Informationen zur Java-API-Dokumentation für die einzelnen APIs von Liberty Profile finden Sie im Information Center im Abschnitt Programmierschnittstellen (APIs). Die Java-API-Dokumentation ist außerdem als eigenständige .zip-Datei in einem der Javadoc-Unterverzeichnisse des Verzeichnisses ${wlp.install.dir}/dev verfügbar.

Beispiel
Nachfolgend ist eine TAI-Beispielklasse mit dem Namen SimpleTAI aufgeführt, in der auch alle verfügbaren Methoden aus der Schnittstelle TrustAssociationInterceptor aufgelistet sind.
package com.ibm.websphere.security.sample;
import java.util.Properties;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.ibm.websphere.security.WebTrustAssociationException;
import com.ibm.websphere.security.WebTrustAssociationFailedException;
import com.ibm.wsspi.security.tai.TAIResult;
import com.ibm.wsspi.security.tai.TrustAssociationInterceptor;
public class SimpleTAI implements TrustAssociationInterceptor {
public SimpleTAI() {
super();
}
/*
* @see com.ibm.wsspi.security.tai.TrustAssociationInterceptor#isTargetInterceptor
* (javax.servlet.http.HttpServletRequest)
*/
public boolean isTargetInterceptor(HttpServletRequest req)
throws WebTrustAssociationException {
//Logik hinzufügen, die festlegt, ob diese Anforderung abgefangen werden soll
return true;
}
/*
* @see com.ibm.wsspi.security.tai.TrustAssociationInterceptor#negotiateValidateandEstablishTrust
* (javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)
*/
public TAIResult negotiateValidateandEstablishTrust(HttpServletRequest req,
HttpServletResponse resp) throws WebTrustAssociationFailedException {
// Logik hinzufügen, um eine Anforderung zu authentifizieren und ein TAI-Ergebnis zurückzugeben.
String tai_user = "taiUser";
return TAIResult.create(HttpServletResponse.SC_OK, tai_user);
}
/*
* @see com.ibm.wsspi.security.tai.TrustAssociationInterceptor#initialize(java.util.Properties)
*/
public int initialize(Properties arg0)
throws WebTrustAssociationFailedException {
return 0;
}
/*
* @see com.ibm.wsspi.security.tai.TrustAssociationInterceptor#getVersion()
*/
public String getVersion() {
return "1.0";
}
/*
* @see com.ibm.wsspi.security.tai.TrustAssociationInterceptor#getType()
*/
public String getType() {
return this.getClass().getName();
}
/*
* @see com.ibm.wsspi.security.tai.TrustAssociationInterceptor#cleanup()
*/
public void cleanup()
{}
}
Nächste Schritte
Fügen Sie die TAI-Klasse dem Liberty Profile-Server hinzu.
- Speichern Sie die angepasste TAI-Klasse in einer JAR-Datei, z. B. simpleTAI.jar, und machen Sie die JAR-Datei dann als gemeinsam genutzte Bibliothek verfügbar. Nähere Informationen hierzu finden Sie im Abschnitt TAI für das Liberty-Profil konfigurieren.
- Packen Sie die angepasste TAI-Klasse als Feature. Informationen hierzu finden Sie unter Angepassten TAI als Liberty-Profilfeature entwickeln.