我们正在使用启用了SSO的WSO2 API Manager 2.6。在store jaggery应用程序的site.json中,我们配置了以下参数:
"ssoConfiguration" : {
"enabled" : "true",
"issuer" : "API_STORE",
"identityProviderURL" : "https://identity.it/samlsso",
"keyStorePassword" : "",
"identityAlias" : "",
"responseSigningEnabled":"true",
"assertionSigningEnabled":"true",
"verifyAssertionValidityPeriod":"true",
"timestampSkewInSeconds":"300",
"audienceRestrictionsEnabled":"true",
"keyStoreName" :"",
"passive" : "true",
...
}
当我们以访客用户身份浏览商店站点时(无需登录),商店在到达目标页面之前会无提示地将所有请求重定向到https://identity.it/samlsso(不询问凭据)。 我们如何允许访客用户浏览商店网站,而无需将所有请求都重定向到身份?
在2.1版中,要获取该信息,我们已将被动参数配置为false ,在此版本中,该参数不起作用,因为它将所有请求重定向到登录页面。
答案 0 :(得分:1)
我有同样的问题。经过长时间的搜索,我发现了该语句
if ((!session.get("hasTriedSSO") || Boolean(user)) && site.ssoConfiguration.enabled == "true" && site.ssoConfiguration.passive == "true") {
jagg.includeBlock("sso/filter", {});
}
我认为这种情况不正确。因为仅当site.ssoConfiguration.passive
为 false 不为 true 时,才应包括阻止。
它位于
repository\deployment\server\jaggeryapps\store\site\blocks\api\api-info\block.jag
repository\deployment\server\jaggeryapps\store\site\blocks\site\pages\list-apis.jag
我更改了此site.ssoConfiguration.enabled == "false"
,它对我有用。但是我不确定这是最好的解决方案。