【问题标题】:User authentication with zfcampus/zf-oauth2 module使用 zfcampus/zf-oauth2 模块进行用户身份验证
【发布时间】:2018-11-05 08:27:11
【问题描述】:

我正在使用 ZF3 实现模块 zfcampus/zf-oauth2。 记录的所有内容 (https://github.com/zfcampus/zf-oauth2) 都按预期工作。

我想实现用户认证。

我发现此作业有“密码”授权类型,但调用需要客户端应用程序 ID 和密码。

这是一个问题,因为如果我有一个第三方应用程序需要对用户进行身份验证,我必须将用户重定向到登录表单并跟踪这些信息的唯一方法是将它们清楚地发送给客户端应用程序,可能作为查询字符串的一部分。

显然我没有这样做。

所以问题是,使用上述技术,是否可以在没有“secret”参数的情况下使用授权类型“password”进行调用? 或者,是否有使用 zf-oauth2 模块实现用户身份验证的最佳实践?

谢谢

【问题讨论】:

    标签: php authentication oauth-2.0 zend-framework2 zend-framework3


    【解决方案1】:

    经过几个小时的研究,我想我可以回答自己这个问题。 由于创建 Oauth2 是为了管理授权而不是身份验证,因此我在 Oauth2 服务器中创建了一个单独的控制器来管理身份验证。

    此控制器将呈现一个登录表单,在提交时检查用户数据,然后将用户重定向到指定的第三方应用程序位置,如果身份验证成功与否,则只返回一个值。

    第三方应用收到此事件后,通过肯定的身份验证,就可以开始获取授权令牌的过程,并向用户呈现“你要授权吗”页面。

    我没有使用在这个实现中实际上不需要的密码授权。

    用户授权后,第三方应用会得到可以用来消费受保护资源的token,例如获取用户数据或者token范围内的任何东西,这其实是我下一步的研究。

    我仍然愿意接受建议:)

    【讨论】:

      猜你喜欢
      • 2017-05-20
      • 2017-10-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-06-24
      • 2021-08-03
      • 1970-01-01
      相关资源
      最近更新 更多