# 验证、权限与安全凭证

标准 URL： https://sosoapi.ai/zh-hans/docs/authentication

agent 使用 OAuth 登录，服务器使用个人访问令牌，并选择各调用方所需的权限。

## 为调用方选择凭证

agent 使用浏览器 OAuth：用户登录并选择访问权限，CLI 会存储并刷新凭证。后端脚本或 CI 任务通过 VICKY_API_KEY 提供个人访问令牌。不要让凭证出现在浏览器代码、公开仓库、提示、截图或共享日志中。

HTTP 示例将 SOSOAPI_ACCESS_TOKEN 作为服务器端环境变数，用于 Bearer 值。这是示例变数，不是 CLI 设置。请检查各操作列出的凭证；个人访问令牌无法管理 API keys。

```
npx sosoapi auth login
```

```
npx sosoapi auth status
```

```
npx sosoapi auth logout
```

- [完整 API 参考](https://sosoapi.ai/zh-hans/docs/api)

## 范围与能力

每个请求都会检查工作区成员资格及该操作所需角色。委派 OAuth 还将访问限制在用户所选工作区和能力内。agent:operate 涵盖读取和准备，agent:publish 涵盖排程和发布，agent:engage 涵盖社区写入。管理 API keys 需要独立授权。

个人访问令牌受其所有者角色及已存储的能力或工作区限制约束。仅选择集成所需的访问权限；省略可选限制可能导致 key 具有广泛访问权限。core 和 full 配置改变的是可见工具列表，而非权限。发布权限在已授予范围内持续生效，不会为每篇帖子要求新的浏览器批准。

## 凭证存储与撤销

CLI 在可用时将凭证存储于操作系统钥匙串，否则存储于仅所有者可读的本地文件。OAuth 访问令牌有效期为一小时，由登录流程刷新。使用 auth status 诊断连接，不要复制凭证文件。

在「设置 → agent 与 API 访问权限」撤销设备或授权，或执行 auth logout 退出登录当前本地设备。这会停止未来访问，不会复原已发布帖子或取消 SosoAPI 已接受的排程；请另行检查与管理。

## 验证启动端点

四个 agent-auth 端点记录登录协议。请使用支持的 CLI 或远端 OAuth 客户端登录；这些端点无法通过 api post 使用。Config、request、session 与 revoke-current 接受不同凭证及字段。请遵循各端点的schema，避免在输出与日志中暴露工作阶段凭证。

- [身份验证端点参考](https://sosoapi.ai/zh-hans/docs/api)
