Cookie 跨域策略
巴克励步
Cookie 设置位于 应用设置 → 域名管理 → 域名配置,用于调整该域名下会话 Cookie 的 SameSite 等属性。当 Baklib 站点被 嵌入其他网站(iframe、企业门户内嵌帮助中心等)时,浏览器跨站策略常导致 无法保持登录态;在此按场景放宽或收紧 Cookie 策略,是与 内容安全策略(CSP) 并列的域名级能力。
是什么
现代浏览器默认对第三方上下文中的 Cookie 施加严格限制(Chrome 逐步淘汰第三方 Cookie)。Baklib 前台登录、授权访问(见 访问控制与授权)依赖 Cookie 传递会话时,若父页面与 Baklib 域名不同源,可能出现:
- 嵌入页内始终未登录;
- SSO 回调成功但 iframe 内仍无身份;
- 仅顶级窗口访问正常、嵌入访问异常。
域名配置中的 Cookie 设置(如
same_site: 字段)允许站点管理员在合规前提下调整 SameSite 策略。v3.5.5 起,供应商域名还可 自动配置跨域与 Cookie(发版日志),减少手工试错。与 CSP 的分工:
| 能力 | 解决的问题 |
|---|---|
CSP(尤其 frame-ancestors) |
是否允许被某父站嵌入、加载哪些资源 |
| Cookie 策略 | 嵌入上下文中会话 Cookie 是否发送 |
边界与限制
- 调整 Cookie 会 扩大或缩小 跨站携带会话的范围,需与安全团队评估;不当配置可能增加 CSRF 或会话固定风险。
- 浏览器厂商政策持续收紧,无法保证 所有旧版浏览器在 iframe 内长期保持完整登录体验;复杂 SSO 建议优先 顶级窗口跳转登录 或反向代理同域部署(见 域名部署与解析模式)。
- Cookie 策略 按域名生效;多域名、多站点聚合时须分别检查入口域名。
- 该设置 不替代 应用级「公开 / 授权访问」;仅影响已允许访问时的身份保持。
- 帮助中心 FAQ 对具体 SameSite 取值有短答,以界面与 FAQ 当前说明为准。
典型场景
- 内网门户 iframe 内嵌 Wiki:父站
portal.company.com嵌入docs.company.com,需 Cookie 与 CSP 同步放行。 - SaaS 客户后台嵌入 Baklib 帮助:试用子域被嵌入厂商控制台,登录按钮无响应时优先排查 Cookie + CSP。
- 同域反向代理:用户访问
doc.company.com/help/实际回源 Baklib,Cookie 视为第一方,通常无需放宽 SameSite——这也是企业客户选用反向代理的原因之一。
相关操作
- 域名管理 — Cookie 设置模块
- iframe 代码嵌入
- 内容安全策略(CSP)
- 访问控制与授权
- 如何将站点嵌入第三方平台?