You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Tauri2.0项目中正确配置对话框插件文件选择器的目录访问权限

Tauri 2.0 目录权限限制未生效的排查与解决

问题定位

你配置的dialog:allow-open和fs:allow-read-text-file权限规则未正确限制目录访问,但dialog:deny-open能正常生效,说明权限系统本身运行正常,问题出在规则写法或权限匹配逻辑上。

修正方案

1. 调整路径匹配规则

Tauri 2.0的路径匹配采用glob模式,原配置中的*仅匹配当前目录下的文件,无法覆盖子目录及深层文件,需修改为**/*:

{
  "$schema": "../gen/schemas/desktop-schema.json",
  "identifier": "default",
  "description": "enables the default permissions",
  "windows": [
    "main"
  ],
  "permissions": [
    "core:default",
    {
      "identifier": "dialog:allow-open",
      "allow": [{ "path": "C:/Users/Administrator/Downloads/**/*" }]
    },
    {
      "identifier": "fs:allow-read-text-file",
      "allow": [{ "path": "C:/Users/Administrator/Downloads/**/*" }]
    }
  ]
}
  • **/*表示匹配目标目录下所有层级的文件和子目录,能实现完整的目录范围限制。

2. 补充目录访问权限

如果需要限制目录本身的读取操作(而非仅文件),需额外添加fs:allow-read-dir权限:

{
  "identifier": "fs:allow-read-dir",
  "allow": [{ "path": "C:/Users/Administrator/Downloads/**/*" }]
}

3. 验证生效前提

  • 修改配置后必须重新构建并运行应用:Tauri权限配置不支持热重载,需重新编译才能生效。
  • 确认代码使用Tauri官方API:读取文件时必须调用fs.readTextFile(),不能使用浏览器原生文件读取API(原生API不受Tauri权限规则约束)。

4. 逐步验证规则有效性

先通过dialog:deny-open确认权限系统正常,再逐步切换为allow规则,逐一验证目录限制是否生效,排除规则冲突。


内容的提问来源于stack exchange,提问作者fuyu2022

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 16:34:55