Express 如何为多租户应用程序配置会话cookie?
我在申请过程中遇到了一些问题。在上下文中,它是一个多租户应用程序,它有两个部分(实际上是两个应用程序),一个是为前端应用程序服务的ReactJS。另一个是使用express构建的RESTAPI。目前,我正在使用带有Redis存储的express会话和passportJS来处理身份验证。我的会话配置是Express 如何为多租户应用程序配置会话cookie?,express,authentication,session-cookies,express-session,Express,Authentication,Session Cookies,Express Session,我在申请过程中遇到了一些问题。在上下文中,它是一个多租户应用程序,它有两个部分(实际上是两个应用程序),一个是为前端应用程序服务的ReactJS。另一个是使用express构建的RESTAPI。目前,我正在使用带有Redis存储的express会话和passportJS来处理身份验证。我的会话配置是 app.set('trust proxy', 1); app.use(session({ secret: SESSION_SECRET, resave: false, sav
app.set('trust proxy', 1);
app.use(session({
secret: SESSION_SECRET,
resave: false,
saveUninitialized: true,
store: new RedisStore({ client: redisClient }),
name: 'sess',
cookie: { secure: true, httpOnly: true, sameSite: true }
}));
我面临的问题如下:
在同一浏览器上,用户输入client-a.our-domain.com
,登录并使用应用程序等。
然后他进入client-B.our-domain.com
,这里是问题发生的地方,我的后端(api.our-domain.com
)正在从另一个应用程序(client-A
)接收身份验证cookie,由于cookie中的用户不存在,我的后端返回一个错误,用户无法使用该应用程序。我不确定我如何才能看到这一点,或者这是否可能与我正在使用的身份验证方法有关。
Obs:此身份验证需要提供从client-A.our-domain.com
、client-B.our-domain.com
和client-own-domain.com
访问的浏览器