这个标题日期从哪里来的响应? (带有Tomcat的spring-saml2)

Posted

技术标签:

【中文标题】这个标题日期从哪里来的响应? (带有Tomcat的spring-saml2)【英文标题】:Where come from this header date in response? (spring-saml2 with Tomcat) 【发布时间】:2014-12-17 18:40:42 【问题描述】:

我正在使用 spring-security-saml2 api 来建立连接。

它在一段时间内运行良好,但最近我在响应标头中的日期遇到了一些问题。 当过滤器 org.springframework.security.saml.SAMLProcessingFilter 被调用 (url -> /saml/SSO/alias/defaultAlias) 时,响应包含一个标头 date,并且此日期有时晚了 2 小时。

因此我收到错误 Etat HTTP 401 - Authentication Failed : Response issue time is either too old or with date in the future, skew 60, time 2014-10-22T08:25:55.967Z(在 10 点 25 分测试)

我不知道如何检索日期以及为什么这种行为只会定期发生。 我正在寻找任何线索。谢谢。

【问题讨论】:

如果它只是偶尔发生,也许你场中只有一台服务器设置了错误的时区? 【参考方案1】:

你在哪个时区? 2014-10-22T08:25:55.967Z 是 UTC,因此您的当地时间之间的 2 小时差异可以通过 GMT+2(例如法国夏令时)来解释。

我的猜测是您的 IDP 和 SP 之间的时钟未正确同步,有时创建响应对象之间的时间差 (2014-10-22T08:25:55.967Z) 和您的 SP 机器上的时间超过 60 秒。

尝试更改您的WebSSOProfileConsumerImpl bean 并将其声明如下,它可能会解决您的问题:

<bean id="webSSOprofileConsumer" class="org.springframework.security.saml.websso.WebSSOProfileConsumerImpl">
    <property name="responseSkew" value="180"/>
</bean>

【讨论】:

嗨弗拉基米尔。谢谢你的回答!是的,你是对的,我在 GMT+2,所以它解释了迟到了 2 小时。我会尝试增加偏斜值。如果它在星期一解决它,我会告诉你;) 抱歉耽搁了,我忘了给你反馈,但是增加响应偏差使它起作用了!

以上是关于这个标题日期从哪里来的响应? (带有Tomcat的spring-saml2)的主要内容,如果未能解决你的问题,请参考以下文章

ASPasswordCredential - 从哪里来?

移民从哪里来?

python上的列表:`u`从哪里来? [复制]

为啥 Java webapps 使用 .do 扩展名?它从哪里来的?

圈复杂度数为 31,这是从哪里来的?

我是谁?我从哪里来?我到哪里去?