【问题标题】:Symfony2 two authentication methods for one APISymfony2 一种 A​​PI 的两种身份验证方法
【发布时间】:2015-04-15 19:25:14
【问题描述】:

是否有可能在 Symfony 2 for REST API 中进行两因素身份验证?

我想这样实现:

  1. 终端用户(移动应用)动态准备登录名和密码(基于某种算法)
  2. 端点中的用户请求 API 接口,例如 /api/me?access_token=[ACEESTOKEN]
  3. 为了继续,用户必须为基本身份验证传递创建的登录名和密码。
  4. Symfony2 以与移动应用程序相同的方式准备登录名和密码,并与从移动应用程序发送的进行比较。
  5. 如果没问题,Symfony2 会检查 access_token(OAuth2 使用 FOSOAuthServerBundle 实现)。如果没问题,提供者根据访问令牌接收用户对象,用户通过身份验证,可以访问 api/me

【问题讨论】:

    标签: php api symfony authentication fosoauthserverbundle


    【解决方案1】:

    您可以创建/添加多个身份验证提供程序,symfony 的身份验证管理器将检查每个身份验证提供程序

    " AuthenticationProviderInterface 需要用户令牌上的身份验证方法和支持方法,该方法告诉身份验证管理器是否将此提供程序用于给定令牌。在多个提供程序的情况下,身份验证管理器将移动到列表中的下一个提供商。”

    Example

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-04-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-22
      • 2013-06-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多