【发布时间】:2018-02-15 02:48:57
【问题描述】:
我不确定在实施过程中应该采用哪种方法,需要一些指导。
我有一个内置于 Yii2 框架 (PHP) 的 REST API (api.mysite.com),它可以访问来自 mysite.com(数据库)的数据。在 mysite.com 上,我们的用户将能够创建连接的应用程序,该应用程序将提供客户端 ID + 机密 - 授予对其帐户的访问权限(完整范围?)。
根据我的研究,下一步似乎是设置一些东西来实际提供要传递给 api 的不记名令牌 - 我一直倾向于 oAuth2,但后来我读到 oAuth2 不提供身份验证。基于此,我认为我需要 OpenID Connect 才能提供用户令牌,因为我的 API 需要根据用户上下文限制数据。
在这种方法中,我的理解是我需要一个身份验证服务器 - 所以有几个问题:
我可以安装哪些软件来充当 OpenID Connect/oAuth2 身份验证服务器?
是否有特定的 Amazon Web Services 将充当 OpenID Connect/oAuth2 身份验证服务器?
我假设流程是:应用程序使用客户端 ID + 秘密向身份验证服务器发出请求并接收访问令牌。访问令牌可用于进行 API 调用。这些令牌存储在哪里(我假设一个特定于我正在使用的服务/软件的数据库?)
在进行 API 调用时,我会传递不记名令牌和用户令牌吗?
非常感谢任何见解。
【问题讨论】:
标签: oauth-2.0 api-design openid-connect