相关疑难解决方法(0)

用于网站的REST API,使用Facebook进行身份验证

我们有一个网站,登录和验证自己的网站的唯一方法是使用Facebook(这不是我的选择).第一次使用Facebook登录时,会自动为您创建一个帐户.

我们现在想为我们的网站创建一个iPhone应用程序,也为其他人创建一个公共API来使用我们的服务.

这个问题是关于如何通过app/API对我们的网站进行身份验证,并分为两部分:

  1. 从API到仅使用Facebook OAuth作为身份验证方法的网站处理REST身份验证的正确方法是什么?

    我已经阅读并研究了很多关于REST API的标准身份验证方法.我们不能通过HTTPS使用Basic Auth等方法,因为没有用户凭证.像这样的东西似乎只是用于使用API​​验证应用程序.

    目前,我认为最好的方法是在API上点击/授权终点,重定向到Facebook OAuth,然后重定向回站点并提供API的用户可以用来验证后续的"令牌"要求.

  2. 对于我们创建的官方应用程序,我们不一定需要以相同的方式使用公共API.那么与我们的网站交流并对用户进行身份验证的最佳方式是什么?

我理解(我认为)如何使用API​​(公共)密钥和秘密(私有)密钥验证使用我们的API的第三方应用程序.但是,当涉及到对正在使用该应用程序的用户进行身份验证时,我对如何进行此操作感到困惑,因为我们必须对用户进行身份验证的唯一方法是Facebook.

我觉得我错过了一些非常明显的东西,或者没有完全理解公共REST API应该如何工作,所以任何建议和帮助将不胜感激.

openid authentication rest facebook facebook-authentication

84
推荐指数
3
解决办法
4万
查看次数

使用Facebook登录并在移动应用中注册用户

我有一个Android应用程序,可为用户提供其Facebook帐户使用它的功能。为此,我集成了Facebook登录。但是,我对Facebook的用户注册感到困惑。

用户登录后,Facebook将提供userId,电子邮件和访问令牌。我可以使用它们在后端为用户创建一个帐户。让我们演示一下场景:

用户至上

    1- User logged-in by Facebook.
    2- The email is checked by server and returns no such user
    3- An account is created by the information from Facebook
    4- The user keeps using the app with this account.
Run Code Online (Sandbox Code Playgroud)

用户再次来

    1- User logged-in by Facebook.
    2- The email is checked by the server and returns that there exists a user.
Run Code Online (Sandbox Code Playgroud)

在这里,这里是问题:

1-服务器如何信任真正来自Facebook的请求,以便服务器可以响应应用程序“他可以登录”?可以肯定,我是否也应该通过在服务器端连接到Facebook来验证访问令牌?

2-如果没有,如何以一种非常安全的方式使用Facebook登录名来注册用户?

这里已经提出类似的问题,但是没有答案作为解决方案。

security android facebook oauth facebook-graph-api

4
推荐指数
1
解决办法
1662
查看次数