【发布时间】:2017-05-03 02:39:03
【问题描述】:
我已经实现了一个包含 IdentityServer4 身份验证的 Web API,作为 Web 服务的一部分。
如果我重新启动,在重新启动之前发出的服务器访问令牌将不再有效。 我正在使用 AddConfigurationStore 和 AddOperationalStore 保存 IdentityServer 数据。
我认为应该保留访问令牌是不正确的吗?
【问题讨论】:
标签: identityserver4
我已经实现了一个包含 IdentityServer4 身份验证的 Web API,作为 Web 服务的一部分。
如果我重新启动,在重新启动之前发出的服务器访问令牌将不再有效。 我正在使用 AddConfigurationStore 和 AddOperationalStore 保存 IdentityServer 数据。
我认为应该保留访问令牌是不正确的吗?
【问题讨论】:
标签: identityserver4
IdentityServer4 使用非对称密钥对来签署和验证 JWT。除了AddOperationalStore 调用之外,您还应该保留这对。如documentation中所述:
AddSigningCredential
添加一个签名密钥服务,提供 指定各种令牌创建/验证的关键材料 服务。您可以传入
X509Certificate2、SigningCredential或证书中对证书的引用 商店。AddDeveloperSigningCredential
与临时签约目的相同 凭据。但是这个版本保留了文件系统的密钥,所以它 在服务器重新启动之间保持稳定。这解决了当 客户端/api 元数据缓存在开发过程中不同步。
更多信息:Cryptography, Keys and HTTPS。
AddSigningCredential 示例:GitHub。
附:我猜AddOperationalStore 只存储刷新令牌,这是设计使然。
【讨论】: