chiyt27 2019-10-28 03:23 采纳率: 0%
浏览 1358

网关(gateway)集成security认证的观念问题

最近学着用spring全家桶建构微服务,
照着大牛们的文章架了auth server, gateway server和两个小服务user-service, cart-service。 user-service取得token后再去cart-service拿清单也完成了。

问题1:
但要将cart -service的security流程移到网关上我就不明白了,
如果在gateway上设了global-filter,cart-service上处理认证的部分还要留吗?
留了感觉做两次认证
如果只留网关的,那cart-service本身是不是有点危险呀。

问题2:
如果以后service中有的action需要认证,有的则不需要,
这样在网关处理是要设不同route吗
还是服务就必须再被切分呢?

谢谢

  • 写回答

1条回答 默认 最新

  • 明初啥都能学会 2024-04-14 15:38
    关注

    问题1:
    将认证流程移到网关上是一种常见的做法,可以集中管理认证和授权逻辑,提高了系统的安全性和可维护性。在这种情况下,如果在网关上设置了全局过滤器来处理认证,那么在服务本身的认证部分就可以省略,因为请求已经在网关上进行了认证,服务只需关注业务逻辑即可。不需要在服务上再进行认证,避免了重复认证的问题。但是要确保网关对请求进行了合法性验证,并且只有经过认证的请求才能到达服务,这样才能保证系统的安全性。

    问题2:
    如果服务中的某些操作需要认证,而另一些操作不需要认证,可以在网关上设置不同的路由来处理。可以为需要认证的操作配置一个认证过滤器,只有通过认证的请求才能到达相应的服务,而不需要认证的操作则可以直接通过网关。这样可以根据业务需求灵活地配置路由,实现细粒度的权限控制。另外,如果某个服务中的不同模块需要不同的权限控制,也可以考虑将服务进一步切分为多个子服务,每个子服务负责不同的功能,并在网关上进行不同的配置和管理。

    评论

报告相同问题?

悬赏问题

  • ¥15 一道python难题2
  • ¥15 一道python难题
  • ¥15 用matlab 设计一个不动点迭代法求解非线性方程组的代码
  • ¥15 牛顿斯科特系数表表示
  • ¥15 arduino 步进电机
  • ¥20 程序进入HardFault_Handler
  • ¥15 oracle集群安装出bug
  • ¥15 关于#python#的问题:自动化测试
  • ¥20 问题请教!vue项目关于Nginx配置nonce安全策略的问题
  • ¥15 教务系统账号被盗号如何追溯设备