OpenClaw学习总结_IV_认证与安全_1:OAuth与认证详解

IV. 认证与安全 - 1. OAuth 与认证

📍 课程位置

阶段 :IV. 认证与安全
课序 :第 1 课
前置知识 :I. 核心架构(Gateway/Agent/Session)
后续课程:IV-2. Authentication


🎯 本课核心问题(你不懂我就这样教你)

你在使用 OpenClaw 时,迟早会遇到这些问题:

  1. 我在哪里填模型 API Key?填错了会怎样?
  2. Setup-token / API key / OAuth 到底有什么区别?
  3. 为什么配置错了 Gateway 可能直接起不来?
  4. 多 Agent / 多账号时,凭证怎么隔离,才不会串用?

一句话:

认证(Auth)就是"让 OpenClaw 有权限调用外部服务"的一套机制;OAuth 是其中一种更标准、更安全的方式。


🧠 心智模型:认证 = 门禁卡,OAuth = 可回收的临时门禁卡

类比:

  • API Key:像一张"万能门禁卡",丢了就麻烦
  • Setup-token:像"办卡时的一次性验证码",用来换到真正门禁
  • OAuth:像"你授权我一段时间进门",可撤销、可续期、更可控

你要的目标是:

  • 能用(可用性)
  • 可控(安全)
  • 可隔离(多 Agent/多账号)

✅ 验收标准

  • 知道三种认证方式(API Key / Setup-token / OAuth)的用途
  • 知道凭证存储在哪里
  • 知道如何做多 Agent 的凭证隔离
  • 知道"认证问题"怎么排查

1) API Key(最常见)

什么时候用

  • 你有一个提供商的 key(OpenAI/Anthropic)
  • 直接填进去就能用

风险

  • key 一旦泄露,可能被刷爆
  • 难以精细授权

建议

  • key 只放在 OpenClaw 的 credentials 系统里
  • 不要到处复制粘贴
  • 定期轮换

2) Setup-token(一次性换取真正凭证)

什么时候用

  • 某些提供商会给你一个一次性 setup-token
  • 你用它换取可长期使用的 key/refresh token

关键点

  • setup-token 不是长期凭证
  • 用完就应该丢弃

3) OAuth(推荐:可控、可撤销)

什么时候用

  • 需要更标准的授权流程
  • 希望能撤销授权、自动刷新
  • 多账号场景更清晰

为什么更安全

  • 你不用把长期 key 暴露给每个地方
  • 授权可以撤销
  • token 可以自动刷新

📁 凭证存储在哪里?(你必须知道)

OpenClaw 通常会把凭证放在类似这些位置(不同版本可能略有差异,但思想一致):

  • ~/.openclaw/credentials/:全局/通用凭证
  • ~/.openclaw/agents/<agentId>/agent/auth-profiles.json:某个 agent 的认证配置

原则:

  • 凭证应该尽量 per-agent 隔离
  • 不同 agent 用不同 key/不同 oauth profile

🔐 多 Agent / 多账号:最重要的隔离策略

你要避免这种事故:

  • work agent 用了 home 的 key
  • 某个 key 被限流导致所有 agent 全挂

推荐做法:

  1. 多 Agent:work/home 分开 workspace
  2. 每个 Agent 单独一套 auth profile
  3. 至少一个跨提供者 failover(上一阶段已讲)

🧪 排障:怎么判断是认证问题?

常见症状:

  • 401 / 403
  • provider 报 invalid_api_key
  • setup-token 过期
  • OAuth refresh 失败

排障顺序:

  1. 看 gateway/agent 日志里 provider 错误
  2. 检查当前 agent 的 auth profile
  3. 检查 key 是否被撤销/过期
  4. 必要时重新授权/轮换 key

⚠️ 常见陷阱

陷阱 表现 原因 解决
把 setup-token 当长期 key 用一阵就失效 setup-token 一次性 用 setup-token 换长期凭证
多 agent 共用一个 key 一处限流全挂 缺少隔离 per-agent auth profiles
key 泄露 费用暴涨 放进仓库/聊天记录 只放 credentials,立即轮换
OAuth 不刷新 过期后全部失败 refresh 流程断 重新授权/检查回调配置

📝 学习心得

认证这章的核心不是"怎么填 key",而是"怎么不翻车":

  • 凭证一定要隔离(per-agent)
  • setup-token 只是入场券,不是门票
  • OAuth 更可控,适合多账号
  • 任何认证问题都要能快速定位和回滚

✅ 本课总结(记住 5 句话)

  1. API Key 最常见,但泄露风险高,要轮换。
  2. setup-token 是一次性换取真正凭证的"验证码"。
  3. OAuth 更标准、更可控,可撤销、可刷新。
  4. 多 Agent 一定要做 per-agent 凭证隔离。
  5. 认证问题排查:先看日志,再看 auth profile,再轮换/重授。

🔗 相关资源

相关推荐
奕鼎竜瑆7 分钟前
MCP Connectors by Databox 新手部署与调用指南
服务器·人工智能
漫漫长远12 分钟前
低功耗UPF介绍(一)
笔记·嵌入式硬件·学习·fpga开发
斑马13914 分钟前
ARM学习笔记(七)——LCD液晶显示
arm开发·笔记·学习
码上上班26 分钟前
k3s学习
jvm·学习
闭包不眠30 分钟前
端侧AI能省多少服务器钱:把账换成字节算
运维·服务器·图像处理·人工智能·计算机视觉
꯭自꯭闭꯭33 分钟前
达梦守护集群手工切换及故障切换
linux·运维·服务器·数据库
哈__34 分钟前
日志散在多台服务器怎么查?用 Promtail + Loki + Grafana 搭一套集中检索平台
运维·服务器·grafana
Wx-bishekaifayuan38 分钟前
Springcloud中学在线学习平台58883-计算机课程设计、毕业设计
java·vue.js·spring boot·学习·spring·spring cloud·课程设计
深圳市尚想信息技术有限公司39 分钟前
设备凝露、高湿腐蚀?ROSAHL M-7J1R国产兼容电解除湿元件(SPEC-7),工业密闭箱体防潮除凝露
安全·防潮·结露·起雾·受潮·除湿
北京中科新远科技42 分钟前
AI集群交换网络容量怎么算:端口、收敛比与Leaf-Spine验收
服务器·网络·人工智能