【发布时间】:2021-02-16 05:13:09
【问题描述】:
我将在 PHP 中使用 laravel 开发微服务架构,但我没有找到任何有关如何保护网关和微服务之间连接的信息。
例如,我将有 2 个微服务:
- 用户
- 贸易
这样,我将拥有一个 api 网关,它将检查具有访问权限的用户的 jwt ...并将请求转发给正确的服务。
这是正确的做法吗? 以及如何安全防止用户直接请求微服务?
提前致谢
【问题讨论】:
标签: php laravel microservices api-gateway
我将在 PHP 中使用 laravel 开发微服务架构,但我没有找到任何有关如何保护网关和微服务之间连接的信息。
例如,我将有 2 个微服务:
这样,我将拥有一个 api 网关,它将检查具有访问权限的用户的 jwt ...并将请求转发给正确的服务。
这是正确的做法吗? 以及如何安全防止用户直接请求微服务?
提前致谢
【问题讨论】:
标签: php laravel microservices api-gateway
带有 oAuth 的 Api 非常适合您的用例。
您可以为每个微服务创建一个 api,并将 oAuth 放在其前面,以验证谁可以访问什么。
oAuth 提供不同类型的授权,如果您想对服务或用户进行身份验证,您应该选择适合您的正确授权。
oAuth 还提供范围,因此您可以让一些用户/服务比其他用户/服务拥有更多的访问权限等。
在 Laravel 中有 Passport 为您利用所有 oAuth 的东西
请查看上面有关授权和范围的文档
【讨论】: