保存访问令牌(IdentityServer4)



我正在使用自定义用户存储(基于SQL Server DB)使用IdentityServer4。我想知道如何存储访问令牌,以检查每个请求是否都有正确的访问令牌。

我尝试使用默认的操作商店,但它只是保存了刷新令牌和授权代码。

预先感谢。

如果我正确理解您,则要保存服务器端的访问令牌,以便可以身份验证用户请求。您需要不是需要将访问令牌存储在服务器端,因为IdentityServer为您完成了此操作。如果您使用Identity Server正确设置API(资源服务器),那么您所需要的只是在API控制器上添加[Authorize](似乎您正在使用.NET Core Web API)。您可以在GitHub上找到有关身份服务器文档和示例项目的许多示例。

同时,您可能需要将访问令牌存储在客户端,因为直到令牌到期之前,无需再次验证用户。这取决于您使用哪种赠款类型。当您使用ResourceOwnerPassword赠款时,尤其如此;如果您的客户端是水疗中心(例如Angular),则通常访问令牌存储在浏览器的本地存储中;对于每个客户端请求,您检查是否已经有一个令牌,如果可以检查它尚未到期。

,可以为不同的赠款支持刷新令牌,以便用户在访问代币到期时自动重新认证。

最新更新