Php nginx反向代理级别上的外部身份验证

Php nginx反向代理级别上的外部身份验证,php,laravel,authentication,nginx,proxy,Php,Laravel,Authentication,Nginx,Proxy,我们在Laravel中有PHP应用程序,它为我们进行登录/通过身份验证。然后 在这个应用程序中,我们有XX个到VPS的外部链接。 在VPS上,我们使用nginx作为apache处理后端的反向代理。 目前,所有与外部VP有链接的人都可以访问内容。我们希望限制登录到我们的主应用程序(Laravel,PHP)的用户的访问权限 我们希望在用户单击我们的主Laravel PHP应用程序上的链接时发送类似令牌的内容,该链接在nginx代理上得到验证,而用户无需提供任何凭据(因为他曾经在Laravel PHP

我们在Laravel中有PHP应用程序,它为我们进行登录/通过身份验证。然后 在这个应用程序中,我们有XX个到VPS的外部链接。 在VPS上,我们使用nginx作为apache处理后端的反向代理。 目前,所有与外部VP有链接的人都可以访问内容。我们希望限制登录到我们的主应用程序(Laravel,PHP)的用户的访问权限

我们希望在用户单击我们的主Laravel PHP应用程序上的链接时发送类似令牌的内容,该链接在nginx代理上得到验证,而用户无需提供任何凭据(因为他曾经在Laravel PHP应用程序上获得过身份验证)

总而言之:

Laravel PHP Application that auths user.
User clicks external link.
Gets authenticated on nginx reverse proxy.
Based on result of auth either gets the content or gets denied.
我们感兴趣的是nginx服务器:
我们如何在不需要用户手动提供任何凭据的情况下对nginx反向代理级别的用户进行身份验证,只需单击主应用程序上的链接即可访问它?我想到了两种解决方案:

  • 分享会

  • 基本授权


  • 公元2年。这有助于我想到两种解决方案:

  • 分享会

  • 基本授权


  • 公元2年。这可能会有所帮助

    我们的第一个想法是使用客户端证书,但这需要客户端操作。不过,这将是一次行动。我正在准备这个想法的PoC,将在这里更新。一些链接也可能有帮助:我将测试这些解决方案并选择最好的一个。但我想我们会带证书去。这可能是一个理想的解决方案,但它是Nginx商业产品的一部分,这可能不是您想要的。您可以在URL中包含JWT作为查询参数。我们的第一个想法是使用客户端证书,但这需要客户端操作。不过,这将是一次行动。我正在准备这个想法的PoC,将在这里更新。一些链接也可能有帮助:我将测试这些解决方案并选择最好的一个。但我想我们会带证书去。这可能是一个理想的解决方案,但它是Nginx商业产品的一部分,这可能不是您想要的。可以在URL中包含JWT作为查询参数。