cnb-rs auth status
cnb-rs auth status显示当前认证状态。
按优先级查找 Token 及其来源,然后调用 GET /user API 验证 Token 有效性并获取用户名, 最终显示域名、用户名、Token(脱敏)及来源信息。
如果本地保存了账号元数据,但系统凭证存储中的 token 无法读取,也会显示对应错误信息。 如果未找到 Token,输出未登录提示并建议使用 cnb-rs auth login 或设置环境变量。
TIP
Token 脱敏规则:长度大于 12 时保留前 4 位和后 4 位,中间用 **** 替代; 否则整体显示为 ****。
选项
无子命令特有选项。
继承的全局选项:
--domain <DOMAIN>: 检查指定域名的认证状态(默认:cnb.cool)
Token 来源优先级
cnb-rs 按以下顺序查找 Token:
- 域名特定环境变量 —
CNB_TOKEN_{DOMAIN}(域名去掉.和-,如CNB_TOKEN_cnbcool) - 通用环境变量 —
CNB_TOKEN - 系统凭证存储 — 当前激活账号在系统 keyring 中的 token
- 配置文件 — 当前激活账号在
~/.cnb/config.toml中的明文 token
示例
bash
# 已登录状态(Token 来自系统凭证存储)
$ cnb-rs auth status
域名: cnb.cool
用户: octocat
Token: cnb_****xxxx(来源:系统凭证存储)
# 使用环境变量认证
$ CNB_TOKEN=cnb_xxxxxxxxxxxx cnb-rs auth status
域名: cnb.cool
用户: octocat
Token: cnb_****xxxx(来源:环境变量 CNB_TOKEN)
# 使用域名特定环境变量
$ CNB_TOKEN_cnbcool=cnb_xxxxxxxxxxxx cnb-rs auth status
域名: cnb.cool
用户: octocat
Token: cnb_****xxxx(来源:环境变量 CNB_TOKEN_cnbcool)
# Token 无效
$ cnb-rs auth status
域名: cnb.cool
用户: octocat
Token: cnb_****xxxx(来源:系统凭证存储)
状态: Token 无效或无法校验
# 系统凭证存储中的 Token 无法读取
$ cnb-rs auth status
域名: cnb.cool
用户: octocat
Token: 无法读取(来源:系统凭证存储)
状态: 访问系统凭证存储超时
# 未登录
$ cnb-rs auth status
未登录 (cnb.cool)
使用 `cnb-rs auth login` 登录,或设置环境变量 CNB_TOKEN
# 检查指定域名
$ cnb-rs --domain example.com auth status
未登录 (example.com)
使用 `cnb-rs auth login` 登录,或设置环境变量 CNB_TOKENAPI
| 步骤 | API | 方法 | 说明 |
|---|---|---|---|
| 获取用户名 | ${CNB_API_ENDPOINT}/user | GET | 验证 Token 并获取用户名 |
API 详情同 cnb-rs auth login — API 章节。