@Override public void init(FilterConfig config) throws ServletException { mgmt = (ManagementContext) config.getServletContext().getAttribute(BrooklynServiceAttributes.BROOKLYN_MANAGEMENT_CONTEXT); provider = new DelegatingSecurityProvider(mgmt); }
protected boolean handleLogout(HttpServletRequest request) { if ("/logout".equals(request.getRequestURI()) || "/v1/logout".equals(request.getRequestURI())) { log.info("Web API logging out "+request.getSession()+" for user "+ request.getSession().getAttribute(AUTHENTICATED_USER_SESSION_ATTRIBUTE)); provider.logout(request.getSession()); request.getSession().removeAttribute(AUTHENTICATED_USER_SESSION_ATTRIBUTE); request.getSession().invalidate(); return true; } return false; }
protected boolean authenticate(HttpServletRequest request) { if (provider.isAuthenticated( request.getSession() )) return true; String user = null, pass = null; String authorization=request.getHeader("Authorization"); if (authorization!=null) { String userpass=Base64.base64Decode(authorization.substring(6)); user=userpass.substring(0,userpass.indexOf(":")); pass=userpass.substring(userpass.indexOf(":")+1); } if (provider.authenticate(request.getSession(), user, pass)) { log.debug("Web API authenticated "+request.getSession()+" for user "+user); if (user!=null) { request.getSession().setAttribute(AUTHENTICATED_USER_SESSION_ATTRIBUTE, user); } return true; } return false; }
@Override public boolean logout(HttpSession session) { return getTargetProvider().logout(session); } }
protected boolean authenticate(HttpServletRequest request) { if (provider.isAuthenticated( request.getSession() )) return true; String user = null, pass = null; String authorization=request.getHeader("Authorization"); if (authorization!=null) { String userpass=Base64.base64Decode(authorization.substring(6)); user=userpass.substring(0,userpass.indexOf(":")); pass=userpass.substring(userpass.indexOf(":")+1); } if (provider.authenticate(request.getSession(), user, pass)) { log.debug("Web API authenticated "+request.getSession()+" for user "+user); if (user!=null) { request.getSession().setAttribute(AUTHENTICATED_USER_SESSION_ATTRIBUTE, user); } return true; } return false; }
@Override public boolean isAuthenticated(HttpSession session) { return getTargetProvider().isAuthenticated(session); }
@Override public boolean authenticate(HttpSession session, String user, String password) { return getTargetProvider().authenticate(session, user, password); }
protected boolean handleLogout(HttpServletRequest request) { if ("/logout".equals(request.getRequestURI()) || "/v1/logout".equals(request.getRequestURI())) { log.info("Web API logging out "+request.getSession()+" for user "+ request.getSession().getAttribute(AUTHENTICATED_USER_SESSION_ATTRIBUTE)); provider.logout(request.getSession()); request.getSession().removeAttribute(AUTHENTICATED_USER_SESSION_ATTRIBUTE); request.getSession().invalidate(); return true; } return false; }
@Override public void init(FilterConfig config) throws ServletException { mgmt = (ManagementContext) config.getServletContext().getAttribute(BrooklynServiceAttributes.BROOKLYN_MANAGEMENT_CONTEXT); provider = new DelegatingSecurityProvider(mgmt); }
@Override public boolean authenticate(HttpSession session, String user, String password) { return getTargetProvider().authenticate(session, user, password); }
@Override public boolean logout(HttpSession session) { return getTargetProvider().logout(session); } }
@Override public boolean isAuthenticated(HttpSession session) { return getTargetProvider().isAuthenticated(session); }