凭证管理
Shield CLI 使用强加密保护所有本地存储的凭证信息。
机器指纹
每台机器都会生成唯一的指纹标识,用于:
- 生成加密密钥
- 标识连接器身份(格式:
shield_<12位指纹>)
指纹基于机器硬件信息派生,不同平台采用不同的采集方式,确保在重装系统前保持一致。
加密方案
| 项目 | 说明 |
|---|---|
| 算法 | AES-256-GCM |
| 密钥 | SHA256(机器指纹) |
| 用途 | 加密本地存储的凭证和应用配置 |
存储位置
| 平台 | 路径 |
|---|---|
| macOS / Linux | ~/.shield-cli/.credential |
| Windows | %LOCALAPPDATA%\ShieldCLI\.credential |
文件权限设置为 0600,仅当前用户可读写。
凭证内容
本地凭证文件存储以下信息(加密后):
- 连接器名称
- 连接器 Token
- 分配的服务端口
- 服务器地址
这些信息在首次连接时自动生成,后续连接复用。
密码安全
- 交互式输入时,密码字符不会显示在终端
- 日志输出中,密码内容全部脱敏(显示为
***) - 密码不会存储在本地,仅在连接建立时使用
清除凭证
如需重置凭证(例如更换账号):
bash
shield clean这会清除本地缓存的凭证文件,下次连接时会重新生成。
详见 清除缓存。