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.

Für verteilte PlattformenFehler vermeiden: Auf der WASdev.net-Website finden Sie mehrere Sicherheitskonfigurationsbeispiele als Referenz bei der Konfiguration der Sicherheit Ihrer Anwendungen in Liberty Profile. Weitere Informationen finden Sie unter TAI im Liberty-Profil mit Entwicklertools konfigurieren.

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.

Verwenden Sie eine der folgenden Methoden, um die TAI-Klasse dem Liberty Profile-Server hinzuzufügen:

Symbol das den Typ des Artikels anzeigt. Taskartikel

Nutzungsbedingungen für Information Center | Feedback


Symbol für Zeitmarke Letzte Aktualisierung: 25.08.2015
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=phil&product=was-libcore-mp&topic=twlp_dev_custom_tai
Dateiname: twlp_dev_custom_tai.html