微服务架构权限验证系统除了 oauth2 外还有哪些解决方案?

2020-11-16 16:16:26 +08:00
 ReinerShir
如果做统一鉴权,每个请求都要去调一下鉴权接口,感觉效率很慢,有没有更加简单高效率一点的解决方案?

最近在想,是不是可以每个服务自己验证权限,但转念一想,每个服务自己鉴权也就意味着每个服务都可以修改权限,这样可能会不大安全。
3450 次点击
所在节点    程序员
22 条回复
neetrorschach
2020-11-16 23:27:14 +08:00
用过一次 oauth2,拿来认证用户合法可以,决定用户是否有权限不好做。当这个权限服务是某个区域内的公共服务时往往只能做到登录认证,至于用户是否有权限操作某些资源基本上还是在各自的子系统内实现的。需要子系统开发人员按照你的开发标准接入,对系统侵入比较大。
我第一次开发接入 oauth2 的系统时,完全按照对方公司给的开发手册做的,每次请求都去 oauth2 系统验证 token 是否有效。系统上线半年后对方跟我说系统花了太多钱了,因为这个认证系统是 global 的,子公司使用按使用量计费。按照这个用法,每年要交给总部十几万。然后就改成认证一次,把 token 保留一星期,token 过期后用 refresh token 刷个新的。
KuroNekoFan
2020-11-17 10:02:40 +08:00
感觉认证和鉴权是两回事

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/725841

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX