開發 Liberty 設定檔的自訂 TAI

您可以實作 Liberty 設定檔伺服器提供的 com.ibm.wsspi.security.tai.TrustAssociationInterceptor 介面來開發自訂信任關聯攔截程式 (TAI) 類別。

關於這項作業

信任關聯介面是一種服務提供者 API,能夠讓協力廠商安全服務與 Liberty 設定檔伺服器整合。當處理 Web 要求時,Liberty 設定檔伺服器會呼叫 HttpServletRequestHttpServletResponse,並將它們傳遞給信任關聯攔截程式。 HttpServletRequest 會呼叫攔截程式的 isTargetInterceptor 方法,以查看攔截程式是否能夠處理要求。 選取適當的信任關聯攔截程式之後,攔截程式的 negotiateValidateandEstablishTrust 方法會處理 HttpServletRequest,且會在 TAIResult 物件中傳回結果。 您可以新增您自己的邏輯程式碼到自訂 TAI 類別的每個方法中。

另請參閱 TAI 介面的 Java™ API 文件。 每一個 Liberty 設定檔 API 的 Java API 文件都詳述於資訊中心的程式設計介面 (API) 區段,也以個別的 .zip 檔來提供(其位於 ${wlp.install.dir}/dev 目錄下的其中一個 javadoc 子目錄中)。

適用於分散式平台避免問題: 在 Liberty 設定檔上配置應用程式安全時,WASdev.net 網站上有一些安全配置範例可供參考。 請參閱在 Liberty 設定檔上,利用開發人員工具來配置 TAI

範例

以下是一個稱為 SimpleTAI 的 TAI 類別範例,它也會列出 TrustAssociationInterceptor 介面中所有可用的方法。

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 {
      //新增邏輯來判斷是否攔截這個要求
      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 {
        // 新增邏輯來鑑別要求及傳回 TAI 結果。
        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()

    {}
}

下一步

新增 TAI 類別至 Liberty 設定檔伺服器。

使用下列其中一個方法,新增 TAI 類別至 Liberty 設定檔伺服器:

指示主題類型的圖示 作業主題

資訊中心條款 | 意見


「時間戳記」圖示 前次更新: 2015 年 6 月 22 日
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=phil&product=was-libcore-mp&topic=twlp_dev_custom_tai
檔名:twlp_dev_custom_tai.html