CNode

eggjs做bff聚合层,鉴权的话应该怎么做

问答
Hhyx0217发布于6 年前最后回复6 年前10 回复5967 浏览0 收藏

思路在app.js里监听全局request事件,在每次请求前都验证一次,但是通过什么来鉴权jwt?还是cookie和session?目前后端那边有一个token验证了,还需要中间层来做吗

查看回复

回复 (10)

I
i5ting#1·6 年前
引用 hyx0217@i5ting 我看eggjs文档的passport,应该不适合bff用是吧

@hyx0217 和egg无关的。

鉴权可以做成通用服务。

I
i5ting#2·6 年前

看安全级别吧,必要的场景或者用着麻烦的可以加。

G
Gitforxuyang#3·6 年前

我们的bff层统一做鉴权。后面的服务就不再鉴权了。 然后因为有好几种鉴权。就写了一个不同的鉴权middleware。根据接口的需求不同使用不同的middleware就完事了。

H
hyx0217#4·6 年前
引用 Gitforxuyang我们的bff层统一做鉴权。后面的服务就不再鉴权了。 然后因为有好几种鉴权。就写了一个不同的鉴权middleware。根据接口的需求不同使用不同的middleware就完事了。

@Gitforxuyang 具体是用什么方式的鉴权呢,是在每次请求前使用中间件验证是吗?不知道有没有类似的demo可以学习下吗?自己写不知道从哪来写起,就很纠结

H
hyx0217#5·6 年前
引用 i5ting看安全级别吧,必要的场景或者用着麻烦的可以加。

@i5ting 我看eggjs文档的passport,应该不适合bff用是吧

A
atian25#6·6 年前

你指的是哪一层的鉴权? brower -- bff -- backend

G
Gitforxuyang#7·6 年前
引用 hyx0217@Gitforxuyang 具体是用什么方式的鉴权呢,是在每次请求前使用中间件验证是吗?不知道有没有类似的demo可以学习下吗?自己写不知道从哪来写起,就很纠结

@hyx0217 我们是起一个sso服务。 然后所有请求先经过bff。 bff统一请求sso服务鉴权。 通过的继续往后端分发。

W
waitingsong#8·6 年前

可以写个middleware中间件做鉴权,这样后面的服务就不用做了。

H
hyx0217#9·6 年前
引用 atian25你指的是哪一层的鉴权? brower bff backend

@atian25 就是浏览器请求bff,原先接口是直接brower请求backend,通过请求头带个token,现在加了bff那还需要在bff做个权限验证吗?我是想说如果在bff层统一加一个,那么backend就都不需要了

参与回复
登录后即可参与回复。登录