核心用法
Ravi Passwords 是一款专注于网站凭据管理的密码管理工具,采用服务端透明加密架构,用户始终以明文形式与系统交互。核心功能围绕 CRUD 操作展开:
- 创建条目:
ravi passwords create <domain>,支持--username、--password、--notes可选字段。若省略密码,系统自动生成强密码并返回。 - 检索管理:通过
list查看全部条目,get <uuid>获取特定凭据,update/delete完成生命周期管理。 - 密码生成:独立
generate命令支持临时强密码生成。
关键设计特性:
- 服务端自动规范化域名(
app.example.com→example.com) - 透明加密:加密/解密由服务端处理,用户无感知
- JSON 结构化输出,便于 shell 脚本集成(常见模式展示 jq 管道处理)
显著优点
1. 零摩擦体验:无需理解加密机制,明文交互降低使用门槛
2. 自动化能力:密码自动生成 + shell 友好输出,适合 DevOps 工作流
3. 域名规范化:自动处理子域名变体,避免重复条目
4. 生态集成:与 ravi-secrets(API 密钥)、ravi-login(完整登录流)、ravi-identity(邮箱获取)形成工具链
潜在局限
- 信任模型依赖:服务端透明加密意味着用户必须完全信任 Ravi 服务端不会泄露密钥或遭受入侵
- 无本地缓存:每次检索需网络请求,离线不可用
- 无浏览器集成:缺乏传统密码管理器的自动填充、捕获功能
- UUID 检索设计:需要额外步骤(list + jq 过滤)才能按域名获取,交互成本高于直接域名查询
适合人群
- 命令行优先的开发者/运维人员
- 需要脚本化凭据管理的工作流自动化场景
- 已深度使用 Ravi 生态(identity/login/secrets)的用户
- 接受服务端托管加密密钥模型的用户
常规风险
| 风险类型 | 说明 |
|---------|------|
| 服务端妥协 | 加密密钥与密文同服务器存储,入侵可能导致批量泄露 |
| 传输层安全 | 依赖 HTTPS,需确保证书链可信 |
| 账户接管 | 主身份(ravi-identity)泄露则所有凭据暴露 |
| 误操作删除 | UUID 操作无二次确认,脚本需自行实现防护 |
| 边界混淆 | 需严格区分 passwords(网站凭据)vs secrets(API 密钥),误用可能导致管理混乱 |