protected void resumeRequest(String contextId, HttpServletRequest request, HttpServletResponse response) throws IOException { if (contextId == null) { LOG.warn("The context parameter has not been provided back with signin request."); response.sendError(HttpServletResponse.SC_UNAUTHORIZED); } else { Session session = ((Request)request).getSessionInternal(); String originalURL = (String)session.getNote(FederationAuthenticator.SESSION_SAVED_URI_PREFIX + contextId); session.removeNote(FederationAuthenticator.SESSION_SAVED_URI_PREFIX + contextId); // Cleanup session try { if (originalURL != null) { LOG.debug("Restore request to {}", originalURL); response.sendRedirect(response.encodeRedirectURL(originalURL)); } else { LOG.debug("User took so long to log on the session expired"); if (landingPage == null) { response.sendError(HttpServletResponse.SC_REQUEST_TIMEOUT, sm .getString("authenticator.sessionExpired")); } else { // Redirect to landing page String uri = request.getContextPath() + landingPage; response.sendRedirect(response.encodeRedirectURL(uri)); } } } catch (IOException e) { LOG.error("Cannot resume with request.", e.getMessage()); } } }
protected void resumeRequest(HttpServletRequest request, HttpServletResponse response) throws IOException { String contextId = request.getParameter(FederationConstants.PARAM_CONTEXT); if (contextId == null) { LOG.warn("The 'wctx' parameter has not been provided back with signin request."); response.sendError(HttpServletResponse.SC_UNAUTHORIZED); } else { Session session = ((Request)request).getSessionInternal(); String originalURL = (String)session.getNote(FederationAuthenticator.SESSION_SAVED_URI_PREFIX + contextId); session.removeNote(FederationAuthenticator.SESSION_SAVED_URI_PREFIX + contextId); // Cleanup session try { if (originalURL != null) { LOG.debug("Restore request to {}", originalURL); response.sendRedirect(response.encodeRedirectURL(originalURL)); } else { LOG.debug("User took so long to log on the session expired"); if (landingPage == null) { response.sendError(HttpServletResponse.SC_REQUEST_TIMEOUT, sm .getString("authenticator.sessionExpired")); } else { // Redirect to landing page String uri = request.getContextPath() + landingPage; response.sendRedirect(response.encodeRedirectURL(uri)); } } } catch (IOException e) { LOG.error("Cannot resume with request.", e.getMessage()); } } }
public boolean logout(HttpServletRequest request) { if (this.request != null && this.request.getRequest() == request) { Session session = getSession(this.request, false); if (session != null) { session.setPrincipal(null); session.setAuthType(null); session.removeNote(Constants.SESS_USERNAME_NOTE); session.removeNote(Constants.SESS_PASSWORD_NOTE); } return true; } return false; }
public boolean logout(HttpServletRequest servletRequest) { if (servletRequestMatches(servletRequest)) { Session session = getSession(request, false); if (session != null) { session.setPrincipal(null); session.setAuthType(null); session.removeNote(Constants.SESS_USERNAME_NOTE); session.removeNote(Constants.SESS_PASSWORD_NOTE); } return true; } return false; }
public boolean logout(HttpServletRequest servletRequest) { if (servletRequestMatches(servletRequest)) { Session session = getSession(request, false); if (session != null) { session.setPrincipal(null); session.setAuthType(null); session.removeNote(Constants.SESS_USERNAME_NOTE); session.removeNote(Constants.SESS_PASSWORD_NOTE); } return true; } return false; }
/** * Logout the specified single sign on identifier from all sessions. * * @param ssoId Single sign on identifier to logout */ public void removeLogin(String ssoId) { // Look up and remove the corresponding SingleSignOnEntry SingleSignOnEntry sso = null; synchronized (cache) { sso = cache.get(ssoId); } if (sso == null) return; // Remove all authentication information from all associated sessions Session sessions[] = sso.findSessions(); for (Session session : sessions) { session.setAuthType(null); session.setPrincipal(null); session.removeNote(Constants.SESS_USERNAME_NOTE); session.removeNote(Constants.SESS_PASSWORD_NOTE); } // Reset SSO authentication sso.updateCredentials(null, null, null, null); }
protected boolean validateToken(Request request, HttpServletResponse response, FedizContext fedConfig) { Session session = request.getSessionInternal(); if (session != null) { FedizResponse wfRes = (FedizResponse)session.getNote(FEDERATION_NOTE); Date tokenExpires = wfRes.getTokenExpires(); if (tokenExpires == null) { LOG.debug("Token doesn't expire"); return true; } Date currentTime = new Date(); if (!currentTime.after(tokenExpires)) { return true; } else { LOG.warn("Token already expired. Clean up and redirect"); session.removeNote(FEDERATION_NOTE); session.setPrincipal(null); request.getSession().removeAttribute(SECURITY_TOKEN); } } else { LOG.debug("Session should not be null after authentication"); } return false; }
@Override protected boolean signout(HttpServletRequest req, HttpServletResponse resp) { // Direct Logout Session session = request.getSessionInternal(); session.removeNote(FederationAuthenticator.FEDERATION_NOTE); session.setPrincipal(null); return super.signout(req, resp); } }
@Override protected boolean signout(HttpServletRequest req, HttpServletResponse resp) { // Direct Logout Session session = request.getSessionInternal(); session.removeNote(FederationAuthenticator.FEDERATION_NOTE); session.setPrincipal(null); return super.signout(req, resp); } }
protected boolean validateToken(Request request, HttpServletResponse response, FedizContext fedConfig) { Session session = request.getSessionInternal(); if (session != null) { FedizResponse wfRes = (FedizResponse)session.getNote(FEDERATION_NOTE); Date tokenExpires = wfRes.getTokenExpires(); if (tokenExpires == null) { LOG.debug("Token doesn't expire"); return true; } Date currentTime = new Date(); if (!currentTime.after(tokenExpires)) { return true; } else { LOG.warn("Token already expired. Clean up and redirect"); session.removeNote(FEDERATION_NOTE); session.setPrincipal(null); request.getSession().removeAttribute(SECURITY_TOKEN); } } else { LOG.debug("Session should not be null after authentication"); } return false; }
@Override protected boolean signoutCleanup(HttpServletRequest req, HttpServletResponse resp) { // Cleanup session internal Session session = request.getSessionInternal(); session.removeNote(FederationAuthenticator.FEDERATION_NOTE); session.setPrincipal(null); super.signoutCleanup(req, resp); request.clearCookies(); return true; }
public void logout() throws SecurityServiceException { HttpGraniteContext context = (HttpGraniteContext)GraniteContext.getCurrentInstance(); Session session = getSession(context.getRequest(), false); if (session != null && session.getPrincipal() != null) { session.setAuthType(null); session.setPrincipal(null); session.removeNote(Constants.SESS_USERNAME_NOTE); session.removeNote(Constants.SESS_PASSWORD_NOTE); endLogout(); session.expire(); } }
@Override protected boolean signoutCleanup(HttpServletRequest req, HttpServletResponse resp) { // Cleanup session internal Session session = request.getSessionInternal(); session.removeNote(FederationAuthenticator.FEDERATION_NOTE); session.setPrincipal(null); super.signoutCleanup(req, resp); request.clearCookies(); return true; }
public void logout() throws SecurityServiceException { HttpGraniteContext context = (HttpGraniteContext)GraniteContext.getCurrentInstance(); Session session = getSession(context.getRequest(), false); if (session != null && session.getPrincipal() != null) { session.setAuthType(null); session.setPrincipal(null); session.removeNote(Constants.SESS_USERNAME_NOTE); session.removeNote(Constants.SESS_PASSWORD_NOTE); endLogout(); session.expire(); } }
public void logout() throws SecurityServiceException { ServletGraniteContext graniteContext = (ServletGraniteContext)GraniteContext.getCurrentInstance(); if (graniteContext instanceof HttpGraniteContext) { Session session = getSession(graniteContext.getRequest(), false); if (session != null && session.getPrincipal() != null) { session.setAuthType(null); session.setPrincipal(null); session.removeNote(Constants.SESS_USERNAME_NOTE); session.removeNote(Constants.SESS_PASSWORD_NOTE); endLogout(); session.expire(); } } else { HttpSession session = graniteContext.getSession(); if (session != null) { session.removeAttribute(AuthenticationContext.class.getName()); endLogout(); session.invalidate(); } } }
protected boolean restoreRequest(Request request) throws IOException { Session session = request.getSessionInternal(false); String uri = request.getDecodedRequestURI(); if (session != null && uri != null) { SavedRequest saved = (SavedRequest)session.getNote(SESSION_SAVED_REQUEST_PREFIX + uri); if (saved != null) { session.removeNote(SESSION_SAVED_REQUEST_PREFIX + uri); // cleanup session synchronized (session) { session.setNote(Constants.FORM_REQUEST_NOTE, saved); return super.restoreRequest(request, session); } } } return false; }
protected boolean restoreRequest(Request request) throws IOException { Session session = request.getSessionInternal(false); String uri = request.getDecodedRequestURI(); if (session != null && uri != null) { SavedRequest saved = (SavedRequest)session.getNote(SESSION_SAVED_REQUEST_PREFIX + uri); if (saved != null) { session.removeNote(SESSION_SAVED_REQUEST_PREFIX + uri); // cleanup session synchronized (session) { session.setNote(Constants.FORM_REQUEST_NOTE, saved); return super.restoreRequest(request, session); } } } return false; }
/** * Log the user out * @param request */ protected void unregister(Request request) { request.setAuthType(null); request.setUserPrincipal(null); // Cache the authentication principal in the session. Session session = request.getSessionInternal(false); if (session != null) { session.setAuthType(null); session.setPrincipal(null); session.removeNote(Constants.SESS_USERNAME_NOTE); session.removeNote(Constants.SESS_PASSWORD_NOTE); } // Unregister the SSOID. SingleSignOn sso = this.getSingleSignOn(request); if (sso != null) { String ssoId = (String) request.getNote(Constants.REQ_SSOID_NOTE); sso.deregister(ssoId); } }
/** * Adds JSESSIONID cookie whose value includes jvmRoute if necessary. */ private void addSessionCookieWithJReplica(Request request, StandardContext ctx, Session sess) { String replicaLocation = null; if (sess != null) { replicaLocation = (String)sess.getNote(Globals.JREPLICA_SESSION_NOTE); sess.removeNote(Globals.JREPLICA_SESSION_NOTE); } if (replicaLocation != null) { Cookie cookie = getSafeCookie(Globals.JREPLICA_COOKIE_NAME, replicaLocation); request.configureSessionCookie(cookie); if (request.isRequestedSessionIdFromCookie()) { cookie.setSecure( request.isRequestedSessionIdFromSecureCookie()); } grizzlyResponse.addHeader(SET_COOKIE_HEADER, response.getCookieString(cookie)); } }
public Principal login(String username, String password, HttpServletRequest servletRequest) { Realm realm = valve.getContainer().getRealm(); if (realm == null) return null; Principal principal = realm.authenticate(username, password); if (principal == null) return null; if (servletRequestMatches(servletRequest)) { request.setAuthType(AUTH_TYPE); request.setUserPrincipal(principal); Session session = getSession(request, true); // Cache the authentication information in our session. if (session != null) { session.setAuthType(AUTH_TYPE); session.setPrincipal(principal); if (username != null) session.setNote(Constants.SESS_USERNAME_NOTE, username); else session.removeNote(Constants.SESS_USERNAME_NOTE); if (password != null) session.setNote(Constants.SESS_PASSWORD_NOTE, password); else session.removeNote(Constants.SESS_PASSWORD_NOTE); } } return principal; }