SuperAPI AI 工具集

tauri-app-stronghold

安全与审计

查看项目

更新于 10-16 07:53

技能介绍

用途

本技能用于在 Tauri v2 应用中使用 stronghold 插件,把密钥、凭证、API key 等敏感数据存入加密保险库(vault),并进行快照管理。资料给出的触发场景包括:加密存储密钥、凭证或 API key;Stronghold 快照或保险库管理;在磁盘上保护敏感数据。触发词包括 stronghold、encrypted storage、secrets、vault、secure storage、credentials。

主要能力

  • 安装并注册 tauri-plugin-stronghold。
  • 通过密码哈希参与保险库加密。
  • 在 capabilities 中配置 stronghold:default 权限。
  • 在前端加载保险库、加载客户端、取得 store,并插入或读取密钥。
  • 保存快照,将加密保险库持久化到磁盘。
  • 可与生物识别插件配合,使用 TouchID/FaceID 解锁保险库,替代密码输入。

使用方式

安装插件:

cargo add tauri-plugin-stronghold

在 Tauri builder 中注册插件:

tauri::Builder::default()
    .plugin(tauri_plugin_stronghold::Builder::new(|password| {
        // Hash the password for vault encryption
        argon2::hash_raw(password.as_bytes(), b"salt", &argon2::Config::default()).unwrap()
    }).build())

在 src-tauri/capabilities/default.json 中配置 capabilities:

{ "permissions": ["stronghold:default"] }

在前端存储和读取密钥:

import { Stronghold } from '@tauri-apps/plugin-stronghold';
const stronghold = await Stronghold.load('vault.hold', 'user-password');
const client = await stronghold.loadClient('main');
const store = client.getStore();
await store.insert('api-key', Array.from(new TextEncoder().encode('sk-12345')));
const value = await store.get('api-key');

保存快照以将加密保险库持久化到磁盘;并可与生物识别插件配合,用 TouchID/FaceID 解锁保险库。

适用场景

适合在 Tauri v2 桌面应用中处理 API key、token、凭证等敏感数据的本地加密保存,并需要快照持久化或生物识别解锁的场合。

限制

资料未说明支持的平台范围、版本兼容细节、性能或安全边界等限制信息,暂未提供。