SuperAPI AI 工具集

configuring-tauri-http-headers

安全与审计

查看项目

更新于 10-15 20:06

技能介绍

用途:指导开发者为 Tauri v2.1.0 及以上应用的 webview 响应配置 HTTP 头,用于安全加固、跨源策略与 CORS 控制。

主要能力:Tauri 仅允许配置白名单内的头,包括 CORS 类(Access-Control-Allow-Credentials、Allow-Headers、Allow-Methods、Expose-Headers、Max-Age)、跨源策略类(Cross-Origin-Embedder-Policy、Cross-Origin-Opener-Policy、Cross-Origin-Resource-Policy)以及 X-Content-Type-Options、Permissions-Policy、Timing-Allow-Origin、Service-Worker-Allowed;Tauri-Custom-Header 仅供测试,不应在生产使用。同时启用 COOP same-origin 与 COEP require-corp 可满足 SharedArrayBuffer 所需的跨源隔离条件。

使用方式:在 src-tauri/tauri.conf.json 的 app.security.headers 中配置。值可为字符串(直接赋值)、数组(逗号连接)、对象(格式化为 key value 并以分号连接)、null(忽略该头)。这些头仅对生产构建生效,不影响 IPC 消息和错误响应。开发环境需在框架 dev server 单独配置,如 Vite 的 server.headers、Nuxt 的 vite.server.headers、Next.js 的 headers()、Trunk.toml 的 [serve] headers 等。CSP 需在 app.security.csp 中单独配置,不放在 headers 段。

适用场景与限制:适合需要跨源隔离、SharedArrayBuffer、严格 MIME 与权限控制的 Tauri 桌面应用;需 Tauri v2.1.0+,早期版本不支持。排查要点包括:SharedArrayBuffer 不可用需同时设置 COOP/COEP;开发环境头不生效需检查 dev server 配置;CORS 报错需补充对应 Allow 头;自定义头不可见需通过 Expose-Headers 暴露。建议同时配置开发与生产、从限制性策略起步并测试跨源场景。官方未提供具体收费与平台信息。