首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SimpleSamlphp中的“状态信息丢失”

SimpleSamlphp中的“状态信息丢失”
EN

Stack Overflow用户
提问于 2017-04-19 09:15:56
回答 1查看 1.7K关注 0票数 0

在SimpleSamlphp中,我得到了一个错误状态信息丢失了“状态信息丢失”。使用sprint-安全性作为SP,并在Simplesamlphp上配置Idp。然后,可以通过浏览器将SP网页重定向到Idp,但是在登录用户名和密码后,我得到了一个错误“状态信息丢失”。`

代码语言:javascript
复制
Apr 19 08:52:28 simplesamlphp DEBUG [bc5df4b2c1] array (
  'id' => 'a3a41e7aia439d7371j5e742e35jhi',
  'url' => NULL,
)
Apr 19 08:52:28 simplesamlphp DEBUG [bc5df4b2c1] Ron====sid===end
Apr 19 08:52:28 simplesamlphp DEBUG [bc5df4b2c1] NULL
Apr 19 08:52:28 simplesamlphp DEBUG [bc5df4b2c1] Ron====url===end
Apr 19 08:52:28 simplesamlphp DEBUG [bc5df4b2c1] Ron====state:NULL
Apr 19 08:52:28 simplesamlphp ERROR [bc5df4b2c1] SimpleSAML_Error_NoState: NOSTATE
Apr 19 08:52:28 simplesamlphp ERROR [bc5df4b2c1] Backtrace:
Apr 19 08:52:28 simplesamlphp ERROR [bc5df4b2c1] 2 /var/simplesamlphp/lib/SimpleSAML/Auth/State.php:274 (SimpleSAML_Auth_State::loadState)
Apr 19 08:52:28 simplesamlphp ERROR [bc5df4b2c1] 1 /var/simplesamlphp/modules/saml/www/sp/saml2-acs.php:91 (require)
Apr 19 08:52:28 simplesamlphp ERROR [bc5df4b2c1] 0 /var/simplesamlphp/www/module.php:137 (N/A)
Apr 19 08:52:28 simplesamlphp ERROR [bc5df4b2c1] Error report with id f9c150bb generated.
代码语言:javascript
复制
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-04-20 01:41:15

在我的例子中,我发现php的逻辑与SP php脚本保持一致,更明显的是,当我手动更改"stateId“时,我得到了一个错误: SimpleSAML_Error_Exception:这个SP [https://domainname/simplesaml/module.php/saml/sp/metadata.php/default-sp]不是断言的有效受众。候选人名单如下: com:vdenotaris:spring:sp

这很奇怪,也超出了我的预期。然后,我检查了SimpleSAMLphp文档中所说的用于将SP元数据添加到Idp配置中以让它知道的“元数据/saml20-sp-emote.php”文件。最后,我发现我在这里填充了错误的SP元数据。如果是这样的话,就会出问题:

代码语言:javascript
复制
$metadata['com:vdenotaris:spring:sp'] = array(
        'AssertionConsumerService' => 'https://domainname/simplesaml/module.php/saml/sp/saml2-acs.php/default-sp',
        'SingleLogoutService' => 'https://domainname/simplesaml/module.php/saml/sp/saml2-logout.php/default-sp',
);

应该为AssertionConsumerService和SingleLogoutService分配SP中的URL,因为它们是SP上的服务。所以应该是这样的:

代码语言:javascript
复制
$metadata['com:vdenotaris:spring:sp'] = array(
        'AssertionConsumerService' => 'https://SPonRonSever:8443/prj/saml/SSO',
        'SingleLogoutService' => 'https://SPonRonSever:8443/prj/saml/SingleLogout',
);

然后,当您在浏览器的地址栏中输入"https://SPonRonSever:8443/prj“时,它可以跳转到Idp提供的登录页面,在身份验证之后,您可以访问您想要的网页。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43491372

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档