用途
本技能用于在 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、凭证等敏感数据的本地加密保存,并需要快照持久化或生物识别解锁的场合。
限制
资料未说明支持的平台范围、版本兼容细节、性能或安全边界等限制信息,暂未提供。