我有一个.NET应用程序,该应用程序与Web服务器集成在一起,可以在台式计算机上向用户显示其在线个人资料中的信息。
本机应用程序当前使用API ID和密码来向服务器发送API请求,但我们希望升级到OAuth2令牌进行授权。我了解本机应用程序的授权代码流和PKCE安全要求,以及当用户没有令牌时该流如何工作。我不了解的是从令牌服务器中检索令牌后如何将令牌安全地存储在客户端计算机上(以供将来的API请求使用)。
如果我正确理解,则客户端应存储其访问令牌,并将其用于将来的API请求,直到它过期为止,此时可以请求新的令牌。但是当使用PKCE时会发生这种情况,因为我们不能信任客户端信息的本地存储吗?
任何帮助将不胜感激!
答案 0 :(得分:1)
对于本机应用程序,您可以使用内置的操作系统安全存储,该存储将安全地存储刷新令牌,刷新令牌的范围仅限于用户和应用程序,并使用用户特定的秘密进行加密。
此处的某些屏幕截图可以帮助您了解其外观: https://authguidance.com/2018/01/26/final-desktop-sample-overview/
如果有帮助,您可以按照以下说明运行我的演示应用程序: https://authguidance.com/home/code-samples-quickstart/