在实施OAuth2提供程序时存储客户端信用的最佳做法是什么?
我可以将access_token / refresh_token / auth_code存储为salted哈希(就像密码一样),如果我决定每次客户端请求新的哈希,我都会发出一个新密码。但是对于client_secret我需要能够在app注册页面上的client_id上显示它,所以我不能只保留哈希。
谢谢! 列夫
答案 0 :(得分:1)
使用计算机生成的客户端密钥仅one of many means来验证客户端应用程序。我认为这是您要在服务中使用的内容。在这种情况下,您已经回答了问题,只要您希望能够随时将其传达给应用程序开发人员,就必须以纯文本格式存储秘密。
如果您无法接受,请考虑选择其他解决方案,例如让开发人员像使用密码一样设置秘密,并且永远不要存储明文;或使用私人/公钥对认证方案,如MAC。