0
所以我来自移动客户端的OAuth2的理解是:使用OAuth2,我应该从移动客户端向服务发送授权码还是令牌?
- 移动客户端重定向页面上,使用客户端ID
- 资源持有者响应回来了,还
auth_code
auth_code
一个access_token
和交换来获得用户身份验证refresh_token
如上所述,如果您的网络服务支持您的移动应用程序,您将永久存储access_token
和refresh_token
,这将允许您继续访问用户的数据,只要他们没有撤销您的权限。
所以我的问题是:auth_code
应该发送到服务,并在那里交换的令牌?或者客户应该交换auth_code
,并将结果令牌发送给服务?它不重要,或者对于不同的实现可能不同?我假设客户秘密只存储在服务上,我的理解是需要将refresh_token
换成新的access_token
,但我不确定auth_code
。
啊我看到了 - 不会让客户端的客户端机密是安全风险吗?我的理解是,这就像你的应用程序的密码,这证明你就是你。 – Rollie
是的,将客户端密钥存储在客户端中是一种安全风险 - 因为您无法阻止某人从中提取客户端密钥,但是如果您将客户端密钥存储在服务中,则客户端可以请求并使用它 - 而不用存储它 - 只要客户端和服务之间的通信被加密(无论如何),安全性都是可以的 – MiMo