现在项目代码耦合在一起,现在打算进行重构,目的是用不同语言来对功能模块进行重构。
现在是 nginx+lua 作为一个简单的网关,进行消息转发。
现在比较困惑的就是,认证与鉴权是直接在网关层做,
还是说在后端起一个鉴权服务来进行处理。
这两者之间比较困惑, 所以想知道下主流的技术方案。
|      1rocbyte      2022-08-25 10:11:05 +08:00 我觉得在网关层比较好,后面一马平川,像有些接口服务之间调用比较多的话,频繁的鉴权也影响效率 | 
|  |      2helone      2022-08-25 10:12:07 +08:00 网关层 | 
|      3zzzzz001      2022-08-25 10:13:08 +08:00 我的理解,网关 调用 鉴权服务。 | 
|  |      4iamtsm      2022-08-25 10:17:52 +08:00 楼主用 nginx+lua 这块,像网关鉴权的话,市面上也比较多的一些优秀开源框架,kong,  apisix, orange 都有类似鉴权插件的。或者自己写一个也行。 | 
|      5coderxy      2022-08-25 10:27:59 +08:00 lua 里面去调用鉴权服务进行鉴权。 | 
|      6awanganddong OP 明白大家的意思了,自己用 nginx+lua 写的话,比较可控。 | 
|  |      7wetalk      2022-08-25 10:40:24 +08:00 当然 api 层,否则 req 进入到集群内部,不可能每个服务都做一次鉴权 | 
|  |      8morty0      2022-08-25 10:45:56 +08:00  2 网关做通用鉴权, 鉴权服务做特殊业务的鉴权 | 
|  |      10qfdk PRO 来你可以来抄作业了…… 鉴权在 gateway 做, 每个请求都知道是否鉴权了. 就算是前端的请求来了也知道是不是登录了. 虽然可以向 openid 获取 /user 来获取用户. 这样会先一步知道有没有登陆. 每个用户鉴权成功会有 session 在 gateway 产生,具体就是会有个 cookie 存在客户端,每个请求都带有他. 鉴权是单独做的 openid 服务器.  gateway 也管着 token 续命. | 
|  |      11adoal      2022-08-25 13:38:47 +08:00 认证在网关,鉴权看情况 | 
|  |      12Aliberter      2022-08-25 13:42:13 +08:00 最近刚做了这块,单独起的 auth 服务,然后在网关全局过滤器里通过 feign 调用 auth 服务进行鉴权 | 
|      13runningman      2022-08-25 13:54:04 +08:00 nginx + lua 复杂吗 | 
|  |      14xuanbg      2022-08-25 15:57:47 +08:00 网关!合适做身份认证和鉴权的只有网关。 | 
|  |      15mmdsun      2022-08-25 18:55:37 +08:00 via iPhone | 
|  |      16saberscarlet      2022-08-26 00:38:49 +08:00 网关做认证,鉴权,调用单独的 auth 服务,接口权限根据业务判断了,注意 token 的传递 |