名称: dashlane
描述: 从 Dashlane 保险库访问密码、安全笔记、机密信息和 OTP 代码。
主页: https://cli.dashlane.com
元数据: {"clawdbot":{"emoji":"🔐","requires":{"bins":["dcli"]}}}
通过命令行访问您的 Dashlane 保险库。提供对密码、安全笔记、机密信息和 OTP 代码的只读访问。
brew install dashlane/tap/dashlane-cli
首次同步以触发认证流程:
dcli sync
步骤:
1. 输入您的 Dashlane 邮箱
2. ⚠️ 重要:在浏览器中打开显示的 URL(设备注册)
3. 输入通过邮件收到的验证码
4. 输入您的主密码
查看当前账户:
dcli accounts whoami
# 通过 URL 或标题搜索(默认将密码复制到剪贴板)
dcli p mywebsite
dcli password mywebsite
# 获取特定字段
dcli p mywebsite -f login # 用户名/登录名
dcli p mywebsite -f email # 邮箱
dcli p mywebsite -f otp # TOTP 双因素认证代码
dcli p mywebsite -f password # 密码(默认)
# 输出格式
dcli p mywebsite -o clipboard # 复制到剪贴板(默认)
dcli p mywebsite -o console # 打印到标准输出
dcli p mywebsite -o json # 完整的 JSON 输出(所有匹配项)
# 通过特定字段搜索
dcli p url=example.com
dcli p title=MyBank
dcli p id=xxxxxx # 通过保险库 ID
dcli p url=site1 title=site2 # 多条件筛选(OR 逻辑)
dcli note [筛选条件]
dcli n [筛选条件] # 简写
# 按标题筛选(默认)
dcli n my-note
dcli n title=api-keys
# 输出格式:text(默认), json
dcli n my-note -o json
Dashlane 机密信息是一种专用于敏感数据的内容类型。
dcli secret [筛选条件]
# 按标题筛选(默认)
dcli secret api_keys
dcli secret title=api_keys -o json
# 手动同步保险库(默认每小时自动同步)
dcli sync
# 锁定保险库(需要主密码解锁)
dcli lock
# 完全登出
dcli logout
# 备份保险库到当前目录
dcli backup
dcli backup --directory /path/to/backup
# 将主密码保存在操作系统钥匙串中(默认:true)
dcli configure save-master-password true
# 禁用自动同步
dcli configure disable-auto-sync true
# 启用生物识别解锁(仅限 macOS)
dcli configure user-presence --method biometrics
# 禁用用户存在性检查
dcli configure user-presence --method none
主密码默认存储在 钥匙串 中。重启后依然有效。
dcli configure save-master-password true
无原生钥匙串。可选方案:
1. 环境变量(安全性较低,但简单):
bash
export DASHLANE_MASTER_PASSWORD="..."
2. 本地加密文件:save-master-password true 会将其存储在 ~/.local/share/dcli/
3. 外部密钥管理器(如 Vault、AWS Secrets 等)注入变量
使用传递给容器的 DASHLANE_MASTER_PASSWORD 环境变量。
docker run -e DASHLANE_MASTER_PASSWORD="..." myimage
dcli 暂不支持 —— 需要经典的主密码。
# 将机密信息注入环境变量
dcli exec -- mycommand
# 注入到模板文件中
dcli inject < template.txt > output.txt
# 通过路径读取机密信息
dcli read "dl://vault/secret-id"
dcli p github -f otp
# 返回:123456 (剩余 25 秒)
将私钥存储在安全笔记中,然后执行:
dcli n SSH_KEY | ssh-add -
# 为脚本获取密码
PASSWORD=$(dcli p myservice -o console)
# 获取 JSON 并用 jq 解析
dcli p myservice -o json | jq -r '.[0].password'
dcli sync 解锁dcli --debug <命令>文档:https://cli.dashlane.com