Я пытаюсь войти в приложение Travelocity с помощью ADFS в качестве поставщика удостоверений.В index.jsp прокомментируйте все параметры и добавьте мою собственную ссылку. Нажмите здесь для входа в ADFS
После нажатия на ссылку он перенаправляет (в первый раз) на страницу входа в ADFS (запрос saml) и вводит идентификатор пользователя и пароль.Подтвердите успешно с ответом SAML.
Приземлился в home.jsp Теперь после нажатия на ссылку токена Oauth2
else {
if(ssoAgentConfig.isOAuth2SAML2GrantEnabled()){
%>
<a href=”token”>Click here for WSO2 Oauth2 Token</a><br/>
<%
}
В SSOAgentfilter он входит в метод и генерирует тот же запрос saml снова иприземлился в home.jsp
if (resolver.isPassiveAuthnRequest()) {
LOGGER.log(Level.INFO, “isPassiveAuthnRequest”);
isPassiveAuth = ssoAgentConfig.getSAML2().isPassiveAuthn();
samlSSOManager = new SAML2SSOManager(ssoAgentConfig);
ssoAgentConfig.getSAML2().setPassiveAuthn(true);
redirectUrl = samlSSOManager.buildRedirectRequest(request, false);
LOGGER.log(Level.INFO,”redirectUrl “+ redirectUrl);
ssoAgentConfig.getSAML2().setPassiveAuthn(isPassiveAuth);
response.sendRedirect(redirectUrl);
return;
}
INFO: SLO getRequestURI ==/travelocity.com/home.jsp
Sep 12, 2018 10:46:48 AM org.wso2.sample.is.sso.agent.SSOAgentFilter doFilter
INFO: isSAML2SSOResponse
Sep 12, 2018 10:46:48 AM org.wso2.carbon.identity.sso.agent.saml.SSOAgentHttpSessionListener sessionCreated
WARNING: HTTP Session created without LoggedInSessionBean
INFO: isPassiveAuthnRequest
Sep 12, 2018 8:52:27 AM org.wso2.sample.is.sso.agent.SSOAgentFilter doFilter
INFO: redirectUrl https://localhost.com:9444/samlsso?SAMLRequest=nVTBjto
Каждый раз, когда он входил в логику isPassiveAuthnRequest, я хочу вызвать этот метод
if (resolver.isSAML2OAuth2GrantRequest()) {
LOGGER.log(Level.INFO, "isSAML2OAuth2GrantRequest" +resolver.isSAML2OAuth2GrantRequest());
LOGGER.log(Level.INFO, "isSAML2OAuth2GrantRequest");
org.wso2.sample.is.sso.agent.SAML2GrantManager saml2GrantManager = new SAML2GrantManager(ssoAgentConfig);
saml2GrantManager.getAccessToken(request, response);
}
Из-за этого his.request.getSession (false).getAttribute («org.wso2.carbon.identity.sso.agent.LoggedInSessionBean») == null
По сути, я хочу добиться генерации OAuth-токенов из ответа saml
Есть идеи?