我目前将我的 iOS 应用程序连接到 facebooks API 以将用户登录到我的应用程序。我不为用户提供任何其他登录方式,因此他们现在在我的数据库上没有本地密码。该应用程序当前将 facebook user_id 发布到我的服务器,如果它在数据库中,则完成登录,如果不在,则重定向用户进行注册。显然,这是一种非常糟糕的方法,因为任何人都可以提交用户 ID(如果他们知道)(这是公共(public)信息)并以其他人的身份登录我的应用程序。我的 PHP 中确实有 if 语句,以确保用户在发布之前确实位于表中。
我的问题是如何确保登录过程安全,以便人们不能仅提交用户 ID 并获得访问权限?我已经阅读了 facebook API,但我对编程不太熟悉,希望得到帮助。我知道 Facebook 必须有一些用于此目的的东西,我要么因为不理解而忽略了它,要么完全错过了它。
提前致谢!
最佳答案
访问 token 并将其保存在您的数据库中。而不是保存 UserID。
token 仅在用户授予对应用程序的访问权限时提供,类似于您在具有 Facebook 登录访问权限的常规网站上看到的内容。
更多文档在这里:官方 Facebook iOS SDK https://developers.facebook.com/docs/reference/ios/current/class/FBAccessTokenData/
关于php - 使用 MySQL DB 和 iOS 进行 Facebook 登录的安全性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24253536/