Ассоциация доверия Инициализировать Не удается загрузить класс ассоциации доверия {X}

#java #security #websphere #interceptor #trust

Вопрос:

я пытаюсь разработать пользовательский перехватчик ассоциаций доверия на Websphere Application Server, но он всегда выдает мне эту ошибку заголовка. Ниже приведены все шаги:

  1. Я создал простой проект Maven с классом MySimpleTAI (пакет com.sampleTAI), реализующим TrustAssociationInterceptor (импорт com.ibm.wsspi.security.tai.*)
  2. Скомпилировал класс, создал банку (MySimpleTAI.jar) и помещены как в каталог app_server_ / lib/ext, так и в каталог app_server_/плагины
  3. Создал запись com.sampleTAI.MySimpleTAI моего пользовательского TAI в разделе «Глобальная безопасность -> Безопасность Wep и SIP ->> Ассоциации доверия — > > Перехватчики», а затем сохранил и перезапустил сервер. Флажки «Включить ассоциацию доверия», «Административная безопасность» и «Безопасность приложений» включены

Я делаю что-то не так? Я помещаю банку не в те каталоги? Спасибо за помощь

Ниже пользовательского кода TAI

 package com.sampleTAI;

... imports ...

public class MySimpleTAI implements TrustAssociationInterceptor
{
    protected static final Logger LOGGER = LoggerFactory.getLogger(MethodHandles.lookup().lookupClass());

    public MySimpleTAI()
    {
        super();
    }

    public boolean isTargetInterceptor(HttpServletRequest req) throws WebTrustAssociationException
    {
        LOGGER.info("MySimpleTAI -> TAI filter!");
        return true;
    }

    public TAIResult negotiateValidateandEstablishTrust(HttpServletRequest req,
                                                    HttpServletResponse resp) throws WebTrustAssociationFailedException
    {
        LOGGER.info("MySimpleTAI -> TAI do stuff!");
        String tai_user = "taiUser";
        return TAIResult.create(HttpServletResponse.SC_OK, tai_user);
    }

    public int initialize(Properties arg0) throws WebTrustAssociationFailedException
    {
        return 0;
    }

    public String getVersion()
    {
        return "1.0";
    }

    public String getType()
    {
        return this.getClass().getName();
    }

    public void cleanup() { }

}