将OAuth2令牌安全地存储在KeyStore中,并链接到AccountManager中的帐户

问题描述 投票:3回答:1

我的Web API需要身份验证令牌才能访问受保护的资源。我可以请求并接收这些,并使用api。现在我想存储此令牌以供以后使用。

我知道安全存储机密数据很难甚至不可能,但this文章建议使用KeyStore来存储令牌,这可能是最好的方法。我在某地读过股票电子邮件应用程序也使用这种方法,但不幸的是我记不起来了。

我想将KeyStore与AccountManager结合使用,因此用户可以查看和管理其设备上的所有已注册帐户(令牌)。

这可能吗?如果是这样,我怎么能做到这一点?我似乎无法找到一种方法来“附加”对帐户的密钥库条目的引用。

欢迎任何建议或替代方案!提前致谢!

android oauth oauth-2.0 accountmanager android-keystore
1个回答
1
投票

因此,如果您在密钥库中加密/解密某些内容,则使用别名。例如,您的帐户名称。或者您可以在AccountManager中存储别名。您可以决定在密钥库中使用帐户名作为别名是否更好(请记住,您应该提供从设置创建帐户的功能)。或者您想要随机生成别名并将它们存储在AccountManager中作为附加数据(UserData)。密钥库部分记录得非常好,客户经理不是。我记得那个研究花了我一些时间,实现略有不同,基于应用程序类型。

© www.soinside.com 2019 - 2024. All rights reserved.