我有一个使用 oauth2 流程与 api 交互的程序。为了不打扰用户每次启动程序时输入登录名和密码。我想以跨平台的方式将刷新令牌安全地存储在某处。这是正确的做法吗?在 C++ 中做到这一点的最佳方法是什么?
这个话题似乎被讨论了很多,但只是从网站的角度来看,他们可以使用cookie来存储刷新令牌。
存储密钥的最佳位置是使用操作系统密钥环,因为这些密钥环将受到其他用户的保护,并且在硬盘驱动器被盗时可能是安全的(假设您的用户帐户有密码)。
每个操作系统/环境都有不同的访问其密钥环的方式(Windows 凭证管理器、KWallet、gnome-keyring、macOS 钥匙串),您可以对多个非跨平台方法(如 keyring python 模块)使用跨平台包装器.