CakePHP 3.x JWT 认证服务器

Posted

技术标签:

【中文标题】CakePHP 3.x JWT 认证服务器【英文标题】:CakePHP 3.x JWT Auth Server 【发布时间】:2018-05-05 00:59:54 【问题描述】:

我在 Cakephp 3.5 中有两个应用程序。它们中的每一个都需要登录数据和其他操作。我不想在两个数据库之间复制数据,也不想使用 Users 表复制与数据库的连接,也不想复制支持用户的功能。我希望其中一个应用程序成为身份验证服务器,而另一个应用程序使用凭据。架构将是:通过转到客户端应用程序,您将重定向到身份验证服务器上的登录页面。成功登录后,我们将返回客户端应用程序。我可以使用“ADmad / cakephp-jwt-auth”插件做一个认证服务器吗?换句话说,如何使用从身份验证应用程序中检索到的数据来完成会话,或者在会话中存储令牌?有什么想法吗?

【问题讨论】:

【参考方案1】:

使用 users 表对您的应用进行身份验证,您将获得一个 JWT 令牌作为回报。在服务器端,如果您的其他应用程序向生成令牌的应用程序发出 HTTP 请求并验证它。关键是,如果您不这样做,则必须对其进行验证,任何令牌都可能对您没有 users 表的应用程序有效。

【讨论】:

因此,最好在每个应用程序中使用 Users 表访问数据库,并在每个应用程序中创建具有操作的模型和控制器用户:登录和注销。登录任何应用程序时,都会创建一个 JWT 令牌以向其他应用程序 API 进行身份验证。我说的对吗?

以上是关于CakePHP 3.x JWT 认证服务器的主要内容,如果未能解决你的问题,请参考以下文章

CakePHP2:JWT Auth 的 CORS 预检问题

Cakephp 3.x ADmad/JwtAuth MissingRouteException

jwt

jwt 认证

为啥 JWT 是无状态认证?

jwt认证规则