Websphere 6.1 JAAS Выйти - PullRequest
       27

Websphere 6.1 JAAS Выйти

0 голосов
/ 17 декабря 2009

У меня есть WebApplication на WAS 6.1, использующий JAAS, уже работающий. Аутентифицирует и авторизует упорядоченным образом. Но моя страница выхода не деавторизирует принципала. Это приложение корректно работает на JBoss и Glasfish, но не на WAS.

Моя страница выхода из системы - это просто JSP с этим содержимым.

<%System.out.println("principal is not null:"+(null != request.getUserPrincipal()));

if (null != request.getSession(false))
request.getSession(false).invalidate();
%><jsp:include page="/index.html" />

Я что-то упустил? Я бы предпочел не использовать какой-либо конкретный API из Webpshere, но если он будет абсолютно необходим, я это сделаю.

Ответы [ 3 ]

2 голосов
/ 18 декабря 2009

Для успешного выхода из системы также необходим фрагмент кода:

try {
        com.ibm.websphere.security.WSSecurityHelper.revokeSSOCookies(request, response);
     } catch(Exception e) {
        // catch all possible exceptions if you want or handle them separately
        out.println("JAASLogoutServlet: logout Exception = " + e.getMessage());
        throw new ServletException(e);
}
0 голосов
/ 27 января 2015

В WebSphere 8.5.5 (возможно, и в более старых версиях) вы можете установить пользовательское свойство.

Безопасность -> Глобальная безопасность -> Пользовательские свойства

com.ibm.ws.security.web.logoutOnHTTPSessionExpire=true   
0 голосов
/ 02 сентября 2010

IBM также реализует форму под названием ibm_security_logout. Я использовал его на Websphere 7.0, но он существует в предыдущей версии. Вы можете найти более подробную информацию мой ответ на мой вопрос:

Как выйти из системы безопасности, управляемой контейнером Java EE?

...