And*_*rtu 7 oauth oauth-2.0 laravel microservices
我在架构方面遇到了困难,并想知道是否有人有一些见解.
计划
流程:
问题:
微服务架构中的常见方法是使用单个身份验证"网关",通常它是API网关的一部分.
所以除了你的passport.ms.com之外,你还有一些代理会从头部检查访问令牌,如果它无效 - 给出错误.如果令牌有效 - 将请求代理到相应的微服务.
这样您就不必重复自己 - 您不必为每个微服务实现N次身份验证.
然后,如果您需要更精细的控制 - 用户可以访问的内容(通常称为授权),那么您通常会在每个特定的微服务上实现它.
简而言之,您的微服务不应该关心传入的请求是否经过身份验证 - 它已经为它们进行了预过滤.微服务仅决定用户X是否可以执行操作Y.
PS.您可以将API网关与Passport/Oauth工具结合使用,也可以单独运行它们 - 这取决于您.AWS已经提供API网关作为服务(证明时尚微服务正在变得如何),但我找不到任何好的开源类似物.
归档时间: |
|
查看次数: |
2634 次 |
最近记录: |