跳转到内容
Tauri

使用插件权限

本实验的目标是更好地了解如何启用或禁用插件权限、在哪里描述它们以及如何使用插件的默认权限。

最后,你将能够查找和使用任意插件的权限,并了解如何自定义现有权限。 你将获得一个 Tauri 示例应用程序,其中使用了一个插件和插件特定的权限。

  1. 创建你的 Tauri 应用程序。 在我们的示例中,我们将使用 create-tauri-app

    sh <(curl https://create.tauri.app/sh)

    我们将使用 pnpm 进行逐步解释,但你可以选择其他包管理器并在命令中相应地替换它。

  2. 要搜索现有的插件,你可以使用多个资源。

    最直接的方法是检查你的插件是否已在文档的 插件 部分中, 此处是 Tauri 维护的插件集的一部分。 文件系统插件是 Tauri 插件工作区的一部分,你可以按照 设置 将其添加到你的项目中。

    如果该插件是社区努力的一部分,那么你最有可能在 crates.io 上搜索 tauri-plugin-<your plugin name> 时找到它。

  3. 每个插件都有一组 default 权限集,其中包含使用插件所需的所有权限和范围, 以及使用插件的合理的最小功能集。

    对于官方维护的插件,你可以在文档中找到相关描述 (例如 fs default )。

    In case you are figuring this out for a community plugin you need to check out the source code of the plugin. This should be defined in your-plugin/permissions/default.toml. 如果你要查看社区插件的默认权限集,则需要查看该插件的源代码。 这应该在 your-plugin/permissions/default.toml 中定义。

  4. 此步骤是关于找到你需要的权限,以便以最少的系统访问权限将实现你的命令并公开到前端。

    fs 插件具有自动生成的权限,可以禁用或启用单个命令并允许或禁用全局范围。

    这些可以在 文档 中找到, 也可以在插件源代码中找到(fs/permissions/autogenerated)。

    假设我们想要启用写入位于用户的 $HOME 文件夹中的文本文件 test.txt

    为此,我们将在自动生成的权限中搜索允许写入文本文件的权限, 例如 allow-write-text-file ,然后是允许我们访问 $HOME/test.txt 范围内的文件。

    我们需要将这些添加到我们的 capabilities 部分,在 src-tauri/tauri.conf.json 文件中或 src-tauri/capabilities/ 文件夹中的某个文件。 默认情况下, src-tauri/capabilities/default.json 中已包含我们可以修改的权限。

    由于 fs 插件中只有自动生成的范围可以访问完整的 $HOME 文件夹, 因此我们需要配置自己的范围。此范围应仅对 write-text-file 命令启用, 并且应仅包含我们的 test.txt 文件。

  5. 添加必要的权限后,我们要确认我们的应用程序可以访问该文件并写入其内容。


© 2025 Tauri Contributors. CC-BY / MIT