如何确保 Laravel 和 Lumen 之间的通信安全?

How to secure communication between Laravel and Lumen?

Laravel 后端将使用 Guzzle 通过 API 访问 Lumen。

我不需要 Lumen 中的数据库,那么如何在 Laravel 和 Lumen 之间添加安全性?据我所知,如果我需要通行证,我会在 Lumen 中访问数据库。

Lumen 供内部使用,不供 public 访问。

我会这样做:

  • 在 laravel 安装的 .env 中存储一个密钥,将其命名为 LUMEN_API_TOKEN
  • 在流明方面做同样的事情
  • 在 Lumen 端创建 API 端点,如其文档中所述
  • 使用令牌身份验证,对连接到 Lumen 端点的任何客户端进行身份验证。连接器提供的密钥需要等于 LUMEN_API_TOKEN
  • 对于令牌身份验证,您可以使用 header 密钥,或者只是 GET-Parameter...类似 http://your_Lumen_site/endpoint?token=12345
  • 在 Laravel 上使用 Guzzle 连接到 Lumen

您可以在 Laravel 应用程序上创建 JWT 密钥并在 Lumen 应用程序上对其进行身份验证。 Lumen 应用程序只需要密钥来解密和验证令牌。不需要数据库。

我会推荐这个 JWT Library,它与 Laravel 和 Lumen

配合得很好