Php Laravel jwt认证如何(我的解决方案好吗?)

Php Laravel jwt认证如何(我的解决方案好吗?),php,laravel,authentication,jwt,Php,Laravel,Authentication,Jwt,我有很多laravel(5.4)应用程序 主应用程序处理注册、登录等。其他应用程序需要使用主应用程序的用户表和身份验证,因此,如果有人登录主应用程序,其他应用程序应将其视为登录用户 对此进行了一段时间的研究,得出了JWT athentication(因为另一个node.js应用程序已经使用此方法与主laravel应用程序进行身份验证)。在node.js中,它是通过ajax完成的,例如节点应用程序调用https://www.mainapp.com/token,并返回一个jwt令牌(如果存在),然后

我有很多laravel(5.4)应用程序

主应用程序处理注册、登录等。其他应用程序需要使用主应用程序的用户表和身份验证,因此,如果有人登录主应用程序,其他应用程序应将其视为登录用户

对此进行了一段时间的研究,得出了JWT athentication(因为另一个node.js应用程序已经使用此方法与主laravel应用程序进行身份验证)。在node.js中,它是通过ajax完成的,例如节点应用程序调用
https://www.mainapp.com/token
,并返回一个jwt令牌(如果存在),然后节点对其进行解密,然后一切继续


正如所有使用tymon/jwt auth包的laravel应用程序一样,我也可以在其他laravel应用程序中执行相同的操作,但在我看来有点笨拙,有没有更好的方法在应用程序之间共享身份验证?还是服务器端解决方案?

您的JWT正在使用您独特的
JWT\u机密
。因此,只要您的所有env文件都以相同的env值为
JWT_SECRET
运行,您就只需要使用中间件来检查令牌并对用户进行身份验证


此外,JWT有许多参数,您可以对其进行调查,但其中一些最重要的参数是
exp
,它是过期时间,以及
sub
,它是来自用户表的用户id。因此,您几乎获得了所需的所有信息。

没错,它会获取令牌,对其进行解密,并对解密的令牌数据使用laravels内置的auth。创建一个新的中间件是更好的解决方案吗?您只希望您的端点位于身份验证中间件的范围内。您可以使用jwt中间件本身对端点进行身份验证,并授予访问控制器的权限