سؤال

ولدي لتطبيق ويب على WAS 6.1 باستخدام JAAS تعمل بالفعل. يصادق ويأذن بطريقة منظمة. لكن صفحة تسجيل الخروج بلدي لا إلغاء المصادقة الرئيسية. هذا التطبيق يعمل بشكل صحيح على جبوس وعلى 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" />

وأنا في عداد المفقودين شيء؟ وأود أن preffer عدم استخدام أي API محددة من Webpshere ولكن إذا كانت هناك حاجة على الاطلاق وسوف.

هل كانت مفيدة؟

المحلول

لبنجاح الخروج وهناك حاجة أيضا هذه التعليمات البرمجية المتكررة:

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);
}

نصائح أخرى

وكما تنفذ IBM نموذج يسمى ibm_security_logout. لقد تم استخدامه في بنك الإسكان للتجارة 7.0، لكنها موجودة في الإصدار السابق. يمكنك العثور على مزيد من التفاصيل جوابي على سؤالي:

كيف يمكنني تسجيل الخروج من الحاوية جافا EE تمكن الأمن؟

في بنك الإسكان للتجارة 8.5.5 (ربما في الإصدارات القديمة، أيضا) يمكنك تعيين الخاصية المخصصة.

والأمن -> الأمن العالمي -> الخصائص المخصصة

com.ibm.ws.security.web.logoutOnHTTPSessionExpire=true   
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top