在智能手机应用程序中使用社交网络 OAuth 2.0 进行授权
Make authorization with social networks OAuth 2.0 at smartphone app
我们正在做手机游戏,想做社交网络的认证和授权,但是遇到了一个大问题:
我们通过 OAuth 2.0(通过 WebView 的客户端流)成功实施了 VK.com 或 Facebook 身份验证,但是如果某人有 access_token 的用户使用 其他钓鱼应用程序 我们将接受这个 access_token 因为它对社交网络仍然有效并且作弊者将 完全访问 用户个人资料,因为根据 OAuth 2.0 协议这是不可能的获取 access_token 创建的来源(应用程序 ID 或其他)。
那么基于 OAuth 2.0 身份验证实现授权的最简单和最好的方法是什么,以便我们能够知道用户在我们的应用程序中获得了他的 access_token,而不是其他人?
解决方案非常简单:只需使用授权代码流而不是隐式流,即使小偷将 "code" 流更改为从他的钓鱼应用程序中接受 Auth Sever 也不会生成访问令牌,因为错误 client_id(与收到的代码不同)
我们正在做手机游戏,想做社交网络的认证和授权,但是遇到了一个大问题:
我们通过 OAuth 2.0(通过 WebView 的客户端流)成功实施了 VK.com 或 Facebook 身份验证,但是如果某人有 access_token 的用户使用 其他钓鱼应用程序 我们将接受这个 access_token 因为它对社交网络仍然有效并且作弊者将 完全访问 用户个人资料,因为根据 OAuth 2.0 协议这是不可能的获取 access_token 创建的来源(应用程序 ID 或其他)。
那么基于 OAuth 2.0 身份验证实现授权的最简单和最好的方法是什么,以便我们能够知道用户在我们的应用程序中获得了他的 access_token,而不是其他人?
解决方案非常简单:只需使用授权代码流而不是隐式流,即使小偷将 "code" 流更改为从他的钓鱼应用程序中接受 Auth Sever 也不会生成访问令牌,因为错误 client_id(与收到的代码不同)