【问题标题】:How to handle security certificate expired scenario in the REST call?如何处理 REST 调用中的安全证书过期场景?
【发布时间】:2020-09-19 17:19:59
【问题描述】:

作为 http 请求验证的一部分,客户端在进行 web api REST 调用时必须在 http 授权标头中向服务器提供 JWT 令牌。

服务器必须使用公共(rsa 安全)证书验证客户端提供的令牌。如果 CA 颁发的服务器上可用的 rsa 证书已过期,应该向客户端返回什么,http 状态码或自定义验证异常?

如果 CA 证书过期意味着,过期适用于其私钥和公钥?我的意思是,我可以使用过期证书的公钥在过期前对其私钥签名的令牌进行签名验证吗?

【问题讨论】:

  • 一些回复会很有用

标签: ssl-certificate http-status-codes x509certificate2 asp.net-authorization cacerts


【解决方案1】:

https 失败通常不会导致任何状态被报告。只有当您的计算机以有意义的方式与服务器通信时,您才会获得 http 状态。例如,在 MacOS / iOS 上,http 请求或 https 请求将导致错误(与服务器的有意义的通信失败)或包含状态代码的回复,并且失败的 https 协商返回一个错误,您可以检查该错误以找出什么错了。

如果您提供的令牌会随着时间的推移而失效,并且您的计算机设法将该令牌发送到服务器,并且服务器检查并拒绝了它,您很可能会收到状态为 401 的响应,并且该响应应该告诉您为什么不允许您从服务器获得回复,然后您应该知道如何解决此问题。

【讨论】:

  • 我强调的场景与 https 或过期的 JWT 无关,但它是关于客户端向服务器提供有效的 JWT 但服务器中用于验证 JWT 的公共证书最近已过期,那么什么服务器应该返回客户端,可能是 500 或一些自定义异常?不确定
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-03-22
  • 2018-06-27
  • 2015-01-10
  • 2020-10-31
  • 1970-01-01
  • 1970-01-01
  • 2018-07-27
相关资源
最近更新 更多