【问题标题】:Symfony Restful API authentication and OAuth2Symfony Restful API 身份验证和 OAuth2
【发布时间】:2015-06-06 14:01:33
【问题描述】:

我正在使用Symfony2 构建一个 RESTful API 应用程序。 该应用程序将由两部分组成。

  1. JavaScript 前端 - 用户能够看到和执行的所有操作都将驻留在此处。

  2. Symfony2 后端 API - 用户可以从前端访问的每个资源和数据都将通过端点以标准 JSON 格式提供。

我以前从未构建过完全 RESTful 的应用程序。我主要关心的是如何对用户进行身份验证。

我想像这样的 REST 身份验证:

用户在前端生成的表单中输入他的凭据,然后将请求发送到发生身份验证逻辑的服务器,如果用户通过身份验证,则将带有“令牌”的响应发送回用户,他会将该令牌添加到每个请求 url 或授权标头(我不知道这些选项中哪个更可取)。

然后对于每个请求,服务器将检查用户令牌是否有效,以及用户是否有权访问该数据(角色),如果是,则提供请求数据。 (我不想让用户使用 Google、Facebook 或类似的东西登录。我希望我的用户使用我的应用程序登录到其他应用程序)

现在这看起来很简单,但是OAuth2 让我感到困惑,因为我在没有研究的情况下就开始开发了。我下载了FOSOAuthServerBundle,当我开始觉得有些不对劲时,我就开始胡闹了。

我想知道的是RESTful认证和OAuth的区别。

对于实现所描述的登录机制有哪些建议?

【问题讨论】:

    标签: rest symfony oauth-2.0


    【解决方案1】:

    你已经很清楚了。您仅将 OAuth 用于身份验证,以下所有请求都必须提供该 HTTP-Authorization 标头。你需要创建你的custom authentication provider 来处理它。也可以使用 FOSRestBundle 之类的东西来创建您的资源。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-11-13
      • 2011-11-28
      • 2013-03-06
      • 2013-08-21
      • 2014-05-10
      • 1970-01-01
      • 1970-01-01
      • 2011-10-02
      相关资源
      最近更新 更多