如何防止Google云Pub/Sub推送订阅发送旧令牌
How to prevent Google Cloud Pub/Sub push subscriptions to send old tokens
我们正在使用 Google 云 Pub/Sub 带身份验证的推送订阅。
有时 HTTPS 调用包含旧令牌。
它们大约存在 1 小时,这可能表明存在时区问题,但在端点 returns 401(未授权)之后,将使用另一个令牌重试调用,大约半小时。
原则上,由于重试,系统可以正常工作,但我无法想象 Google 会发送带有旧令牌的请求。
有人知道如何解决这个问题吗?
示例:
来自接收端点 (GMT+1) 的日志:
2020-01-06 01:57:27.5975|ERROR|Google.Apis.Auth.InvalidJwtException: JWT has expired.
JWT 包含负载:
{
"exp": 1578272235,
"iat": 1578268635
}
"iat": 1578268635
GMT: Sunday 5. January 2020 23:57:15
Your time zone: mandag d. 6. januar 2020 kl. 00:57:15 GMT+01:00
"exp": 1578272235
GMT: Monday 6. January 2020 00:57:15
Your time zone: mandag d. 6. januar 2020 kl. 01:57:15 GMT+01:00
推送请求中包含的 JSON Web 令牌最长可达一个小时。 Cloud Pub/Sub 中可能存在导致令牌在到达推送端点之前过期的问题,目前正在调查中。
有关详细信息,请参阅此处有关使用 JSON Web 令牌的文档:https://cloud.google.com/pubsub/docs/push#using_json_web_tokens_jwts
我们正在使用 Google 云 Pub/Sub 带身份验证的推送订阅。 有时 HTTPS 调用包含旧令牌。 它们大约存在 1 小时,这可能表明存在时区问题,但在端点 returns 401(未授权)之后,将使用另一个令牌重试调用,大约半小时。
原则上,由于重试,系统可以正常工作,但我无法想象 Google 会发送带有旧令牌的请求。
有人知道如何解决这个问题吗?
示例: 来自接收端点 (GMT+1) 的日志:
2020-01-06 01:57:27.5975|ERROR|Google.Apis.Auth.InvalidJwtException: JWT has expired.
JWT 包含负载:
{
"exp": 1578272235,
"iat": 1578268635
}
"iat": 1578268635
GMT: Sunday 5. January 2020 23:57:15
Your time zone: mandag d. 6. januar 2020 kl. 00:57:15 GMT+01:00
"exp": 1578272235
GMT: Monday 6. January 2020 00:57:15
Your time zone: mandag d. 6. januar 2020 kl. 01:57:15 GMT+01:00
推送请求中包含的 JSON Web 令牌最长可达一个小时。 Cloud Pub/Sub 中可能存在导致令牌在到达推送端点之前过期的问题,目前正在调查中。
有关详细信息,请参阅此处有关使用 JSON Web 令牌的文档:https://cloud.google.com/pubsub/docs/push#using_json_web_tokens_jwts