我正在尝试用SAML注销,Okta是我的IdP。我在Okta日志中看到“发卡机构不匹配”:
我已经设置了单次注销:
上传的证书是我的SP公钥。
代码方面:
const config = require('../../app/config')
const saml = require('saml2-js')
module.exports = {
sp: new saml.ServiceProvider({
entity_id: `${config.HOSTNAME}/saml/assert`,
private_key: config.SAML_SP_PRIVATE_KEY,
certificate: config.SAML_SP_PUBLIC_KEY,
assert_endpoint: `${config.HOSTNAME}/saml/assert`,
allow_unencrypted_assertion: true,
sign_get_request: true
}),
idp: new saml.IdentityProvider({
sso_login_url: config.SAML_SSO_LOGIN_URL,
sso_logout_url: config.SAML_SSO_LOGOUT_URL,
certificates: config.SAML_SSO_IDP_CERT,
sign_get_request: true
})
}
以及注销功能:
if (!req.signedCookies.token) {
res.status(400).send('Missing token')
return
}
const tokenData = await jwtVerify(req.signedCookies.token, config.AUTH_SECRET)
const options = {
name_id: tokenData.name_id,
session_id: tokenData.session_id,
sign_get_request: true
}
const createLogoutRequestUrl = util.promisify(sp.create_logout_request_url).bind(sp)
const logoutUrl = await createLogoutRequestUrl(idp, options)
res.redirect(logoutUrl)
OK发现我的错误:
我的SP entity\u id应该是元数据URL
entity_id: `${config.HOSTNAME}/saml/metadata`,
配置也应反映在okta中:
我是okta的新手saml。单点登录集成成功,现在我想做单点注销。我在Okta做了以下工作- 1)单注销网址:http://localhost:8080/spring-security-saml2-sample/saml/logout 2) SP发行人:http://localhost:8080/spring-security-saml2-sample/saml/metadata 3) 创建证书并
我在ADFS上有saml。一切正常,但我有不止一个依赖方的信任。然后,当我登录到我的一个webapp(信赖方信任)并注销时,一切都很好。 但当我登录到第一个web应用程序,然后再登录到第二个web应用程序时,我可以在ADF上使用cookie:samleSession,它结合了两个会话,然后当我从第一个web应用程序注销时,我会重定向到第二个web应用程序上的注销页面,并且不会删除网站1上的cook
我已经通过SAML通过基于OpenAM的IDP验证了我的应用程序。现在我想通过SAML注销我的应用程序。所以我的问题是: > 我选择了“spSingleLogoutInit.jsp”实现,这样做对吗? 如果是,而不是RelayState,我已经给出了我的应用程序的登录页面,即“http://www.myexample.com/login.do. 3.在sessionIndex中,我需要提供当前会话
我已经使用spring-saml建立了一个联合。SSO过程工作正常,但是我有一个单一注销的问题。 问题#1是,在我从SP调用saml/注销后,它从Idp注销,也从我的SP注销,但它不会重定向到Idp登录页面。 问题#2是,当我让其他SP参与处理我的SP时,我的SP不知何故断开了链,它将其他SP引导到我的SP注销页面,而不是Idp注销页面。 这是我的配置: 这是我的日志: 有人能帮我设置配置吗 谢啦
我使用的是Drools 4,当我用==比较两个hashmap值时,它不起作用。所有其他运营商,如 评估((abc.getValue(“123”))。intValue()==(abc.getValue(“456”))。intValue()) 规则: 我们正在使用的对象: 提前感谢。
我有一个关于SAML 2.0和SLO的问题<在SLO过程中,作为Idp,我们启动注销并向SP发送注销请求,SP则返回注销响应。我们在IDP端部分注销,用户在IDP端注销,但是如果我返回SP站点,我仍然登录<这是IdP侧还是SP侧的问题?我的意思是SP应该终止会话并向IDP发送注销响应,还是IDP的任务是终止双方的会话? 谢啦