如果颁发者和身份提供者 ID 不同,如何启用 SSO 严格模式?
How can I enable SSO strict mode if the issuer and identity provider ID are different?
我正在从事我最近接手的一个项目,以使其做好生产准备。其中一项任务是为 SSO 启用严格模式,但是一旦我这样做,它就会立即失败。
我正在利用 'python-saml' 库为应用程序提供 SSO 功能。经过一些调试后,脚本在这里失败了:
# Checks the issuers
issuers = self.get_issuers()
for issuer in issuers:
if issuer is None or issuer != idp_entity_id:
raise OneLogin_Saml2_ValidationError(
'Invalid issuer in the Assertion/Response (expected %(idpEntityId)s, got %(issuer)s)' %
{
'idpEntityId': idp_entity_id,
'issuer': issuer
},
OneLogin_Saml2_ValidationError.WRONG_ISSUER
这告诉我,颁发者与身份提供者 ID 不同,实际上是不同的。
我对 SSO 的了解有限,但是,这似乎很奇怪,这会有所不同。
如何解决这个问题,或者如果这些是故意不同的,我该如何启用严格模式?
问题出在对 idp 实体 ID 值的理解上。这应该与 SAML 响应中的 Issuer 相同。
我正在从事我最近接手的一个项目,以使其做好生产准备。其中一项任务是为 SSO 启用严格模式,但是一旦我这样做,它就会立即失败。
我正在利用 'python-saml' 库为应用程序提供 SSO 功能。经过一些调试后,脚本在这里失败了:
# Checks the issuers
issuers = self.get_issuers()
for issuer in issuers:
if issuer is None or issuer != idp_entity_id:
raise OneLogin_Saml2_ValidationError(
'Invalid issuer in the Assertion/Response (expected %(idpEntityId)s, got %(issuer)s)' %
{
'idpEntityId': idp_entity_id,
'issuer': issuer
},
OneLogin_Saml2_ValidationError.WRONG_ISSUER
这告诉我,颁发者与身份提供者 ID 不同,实际上是不同的。
我对 SSO 的了解有限,但是,这似乎很奇怪,这会有所不同。
如何解决这个问题,或者如果这些是故意不同的,我该如何启用严格模式?
问题出在对 idp 实体 ID 值的理解上。这应该与 SAML 响应中的 Issuer 相同。