/** * @see {@code SAML2Handler#handleRequestType(SAML2HandlerRequest, SAML2HandlerResponse)} */ @SuppressWarnings("unchecked") public void handleRequestType(SAML2HandlerRequest request, SAML2HandlerResponse response) throws ProcessingException { //Do not handle log out request interaction if (request.getSAML2Object() instanceof LogoutRequestType) return; //only handle IDP side if (getType() == HANDLER_TYPE.SP) return; HTTPContext httpContext = (HTTPContext) request.getContext(); HttpSession session = httpContext.getRequest().getSession(false); Principal userPrincipal = (Principal) session.getAttribute(GeneralConstants.PRINCIPAL_ID); List<String> roles = (List<String>) session.getAttribute(GeneralConstants.ROLES_ID); if (roles == null) { roles = roleGenerator.generateRoles(userPrincipal); session.setAttribute(GeneralConstants.ROLES_ID, roles); } response.setRoles(roles); }
/** * @see {@code SAML2Handler#handleRequestType(SAML2HandlerRequest, SAML2HandlerResponse)} */ @SuppressWarnings("unchecked") public void handleRequestType(SAML2HandlerRequest request, SAML2HandlerResponse response) throws ProcessingException { //Do not handle log out request interaction if (request.getSAML2Object() instanceof LogoutRequestType) return; //only handle IDP side if (getType() == HANDLER_TYPE.SP) return; HTTPContext httpContext = (HTTPContext) request.getContext(); HttpSession session = httpContext.getRequest().getSession(false); Principal userPrincipal = (Principal) session.getAttribute(GeneralConstants.PRINCIPAL_ID); List<String> roles = (List<String>) session.getAttribute(GeneralConstants.ROLES_ID); if (roles == null) { roles = roleGenerator.generateRoles(userPrincipal); session.setAttribute(GeneralConstants.ROLES_ID, roles); } response.setRoles(roles); }
response.setRoles(roles);
response.setRoles(roles);
response.setRoles(roles);
response.setRoles(roles);
response.setRoles(roles);
response.setRoles(roles);
response.setRoles(roles);
response.setRoles(roles);