Liberty에 대한 사용자 정의 TAI 개발

Liberty 서버에 제공된 com.ibm.wsspi.security.tai.TrustAssociationInterceptor 인터페이스를 구현하여 사용자 정의 신뢰 연관 인터셉터(TAI) 클래스를 개발할 수 있습니다.

이 태스크 정보

신뢰 연관 인터페이스는 Liberty 서버와 써드파티 보안 서비스의 통합을 가능하게 하는 서비스 제공자 API입니다. 웹 요청을 처리할 경우 Liberty 서버는 HttpServletRequestHttpServletResponse를 호출하여 신뢰 연관 인터셉터에 전달합니다. HttpServletRequest는 인터셉터의 isTargetInterceptor 메소드를 호출하여 인터셉터가 요청을 처리할 수 있는지 여부를 확인합니다. 적절한 신뢰 연관 인터셉터가 선택된 후, HttpServletRequest는 인터셉터의 negotiateValidateandEstablishTrust 메소드로 처리되고 TAIResult 오브젝트에서 결과를 리턴합니다. 사용자 정의 TAI 클래스의 개별 메소드에 고유 논리 코드를 추가할 수 있습니다.

TAI 인터페이스는 Java™ API 문서도 참조하십시오. 각 Liberty API에 대한 Java API 문서는 ${wlp.install.dir}/dev 디렉토리의 javadoc 서브디렉토리 중 하나에 별도의 .zip 파일로 사용 가능합니다.

분산 플랫폼용문제점 예방: WASdev.net 웹 사이트에는 Liberty의 애플리케이션을 위한 보안을 구성할 때 참조할 수 있는 여러 보안 구성 예가 있습니다. 개발자 도구를 사용하여 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 {
      //Add logic to determine whether to intercept this request
      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 {
        // Add logic to authenticate a request and return a TAI result.
        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()

    {}
}

다음에 수행할 작업

Liberty 서버에 TAI 클래스를 추가하십시오.

다음 메소드 중 하나를 사용하여 Liberty 서버에 TAI 클래스를 추가하십시오.

주제의 유형을 표시하는 아이콘 태스크 주제



시간소인 아이콘 마지막 업데이트 날짜: Tuesday, 6 December 2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=twlp_dev_custom_tai
파일 이름: twlp_dev_custom_tai.html