php - 使用 MySQL DB 和 iOS 进行 Facebook 登录的安全性

标签 php mysql ios facebook facebook-login

我目前将我的 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/

相关文章:

mysql - 通过 ODBC 带参数的 SSRS/MySQL/存储过程

ios - 具有通用 iOS 库所需的 AIR 第 3 方依赖项

ios - 使用 Swift 测试 UIApplicationOpenSettingsURLString 是否存在

php - 更新发生时突出显示更改的方法

php - 如何在 php 中获取所有具有特定文件夹名称的子目录?

html - 使用 Django 删除项目按钮仅删除第一项

python - 启动应用程序一段时间后,nginx、uwsgi、python 出现永久 mysql 错误

ios - 无法在 IOS 7.0 中更改 uitableviewheaderfooterview 的背景颜色

javascript - 将 Javascript 弹出 HTML 链接分配给 PHP 变量

php - PHP 的循环引用问题有多大,我应该担心吗?