服务器重新启动后的 IdentityServer4 访问令牌

Gra*_*ght 5 identityserver4

我已经实现了一个 Web API,将 IdentityServer4 身份验证合并为 Web 服务的一部分。

如果我重新启动,重新启动之前颁发的服务器访问令牌将不再有效。我使用 AddConfigurationStore 和 AddOperationalStore 保存 IdentityServer 数据。

我认为应该保留访问令牌是错误的吗?

Ily*_*kov 2

IdentityServer4 使用非对称密钥对来签名和验证 JWT。除了跟注之外,您还应该保留这一对AddOperationalStore。如文档中所述:

添加签名凭证

添加签名密钥服务,为各种令牌创建/验证服务提供指定的密钥材料。您可以传入X509Certificate2、 a SigningCredential或对证书存储中的证书的引用。

添加开发者签名凭证

与临时签名凭证的用途相同。但此版本保留了文件系统的密钥,因此它在服务器重新启动之间保持稳定。这解决了开发过程中客户端/API 元数据缓存不同步时出现的问题。

更多信息:密码学、密钥和 HTTPS

AddSigningCredential示例:GitHub

PS 我猜AddOperationalStore商店只刷新令牌,这是设计使然。