跳到内容
Tauri

使用插件权限

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

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

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

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

    我们将在此逐步说明中使用 pnpm,但您可以选择其他包管理器并在命令中相应地替换它。

  2. 要搜索现有插件,您可以使用多种资源。

    最直接的方法是查看您的插件是否已在文档的 插件 部分,因此是 Tauri 维护的插件集的一部分。文件系统插件是 Tauri 插件工作区的一部分,您可以通过遵循说明将其添加到您的项目中。

    如果该插件是社区工作的一部分,您很可能在 crates.io 上搜索 tauri-plugin-<您的插件名称> 时找到它。

  3. 每个插件都有一个 default 权限集,其中包含所有权限和范围,以便开箱即用该插件,并具有合理的最小功能集。

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

    如果您正在为社区插件查找此信息,您需要查看插件的源代码。这应该在 your-plugin/permissions/default.toml 中定义。

  4. 此步骤旨在找到您需要为您的命令提供给前端的权限,并最大限度地减少对您系统的访问。

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

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

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

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

    我们需要将这些添加到我们的 src-tauri/tauri.conf.json 中的 capabilities 部分,或添加到 src-tauri/capabilities/ 文件夹中的文件中。默认情况下,src-tauri/capabilities/default.json 中已经有一个我们可以修改的功能。

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

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


© 2025 Tauri 贡献者。CC-BY / MIT