Zoom 新的 OBF Token 要求:对 Meeting BaaS 用户意味着什么
从 2026 年 3 月 2 日起,Zoom 要求加入外部会议的 Meeting SDK 应用使用 OBF token。我们详细说明这一变化的含义及如何做好准备。

Zoom 宣布了 Meeting SDK 应用加入会议方式的重大变更。从 2026 年 3 月 2 日起,加入非自己创建的会议的 bot 需要提供 On Behalf Of(OBF)token。
我们已在 Meeting BaaS 中完整支持 OBF。本文将介绍此变更的含义,以及如何更新你的集成。
阅读 Zoom 官方公告 了解完整技术细节。
简要说明
| 2026 年 3 月 2 日之前 | 2026 年 3 月 2 日之后 |
|---|---|
| Bot 使用 SDK 凭据加入任意 Zoom 会议 | Bot 加入外部会议需要 OBF token |
| 无需用户授权 | Zoom 用户必须通过 OAuth 授权该 bot |
| Bot 独立运行 | 授权用户必须在会议中在场 |
「外部会议」是指非你 Zoom 组织内账户创建的会议。对大多数 Meeting BaaS 客户而言,这意味着大部分会议都属于外部会议。
什么是 OBF Token?
OBF 代表「On Behalf Of」(代表某人)。它是一个代表特定 Zoom 用户授权的 token。当你的 bot 出示 OBF token 时,即证明某位用户表示「这个 bot 可以代表我加入会议」。
这带来两项重要限制:
- 用户必须通过 OAuth 授权你的应用(一次性同意流程)
- Bot 活动期间,该用户必须在场于会议中
如果授权用户离开会议,Zoom 将终止 SDK 会话,bot 随即断开连接。这是 Zoom 平台的要求。
谁需要采取行动?
你需要 OBF token
你的 bot 加入的是你 Zoom 组织外的人创建的会议。这包括大多数会议记录、转写和录制的使用场景。
你可能不需要 OBF token
你的 bot 只加入自己 Zoom 账户内的会议。使用自己的 SDK 凭据会使这些会议被视为「内部」会议。
快速决策指南
| 使用场景 | 所需内容 |
|---|---|
| 为自己团队录制会议 | SDK 凭据(无需 OBF) |
| 为外部客户构建产品 | 需要 OBF token |
| 加入他人主持的会议 | 需要 OBF token |
| 仅使用 Google Meet 或 Teams | 无需任何变更 |
使用 SDK 凭据
如果你的 bot 只加入 Zoom 组织内的会议,可以使用自己的 SDK 凭据来完全避免 OBF。
当你向 Meeting BaaS 传入 zoom_sdk_id 和 zoom_sdk_pwd 时,bot 将通过你的 Zoom 应用进行身份验证。以此方式加入的会议将被视为账户的「内部」会议。
{
"meeting_url": "https://zoom.us/j/123456789",
"bot_name": "Team Recorder",
"zoom_sdk_id": "YOUR_SDK_KEY",
"zoom_sdk_pwd": "YOUR_SDK_SECRET"
}这种方式非常适合需要录制自己团队会议的场景。无需 OAuth 流程、无需用户授权、无需 OBF token。
请参阅 Zoom 应用设置指南,了解如何创建 Zoom 应用并获取这些凭据。
实现 OBF Token
对于外部会议,你需要 OBF token。Meeting BaaS 支持三种提供方式:
| 选项 | 工作方式 | 适用场景 |
|---|---|---|
| 直接传入 Token | 你自行获取 token 并传递给我们 | 测试、已有 OAuth 基础设施 |
| Token URL | 你托管一个返回 token 的 endpoint | 将凭据保留在你的服务器上 |
| 托管 OAuth | 我们存储凭据并自动处理刷新 | 大多数客户 |
选项 1:直接传入 Token
自行从 Zoom 获取 OBF token,并在创建 bot 时传入:
{
"meeting_url": "https://zoom.us/j/123456789",
"bot_name": "Recording Bot",
"zoom_obf_token": "eyJ0eXAiOiJKV1Qi..."
}选项 2:Token URL
托管一个返回 OBF token 的 endpoint,bot 在加入时调用它:
{
"meeting_url": "https://zoom.us/j/123456789",
"bot_name": "Recording Bot",
"zoom_obf_token_url": "https://your-api.com/zoom/obf-token"
}选项 3:托管 OAuth(推荐)
将 OAuth 授权码发送给我们,我们存储 token 并自动处理刷新:
{
"meeting_url": "https://zoom.us/j/123456789",
"bot_name": "Recording Bot",
"zoom_obf_token_user_id": "SeJwoMGwTCu52501SbDC0Q"
}大多数客户应使用选项 3。你构建一个「连接 Zoom」按钮,用户授权一次,Meeting BaaS 处理其余所有事项。
v2 API:改进的 Zoom 凭据管理
如果你使用的是 Meeting BaaS v2,可以获得额外的 Zoom 凭据管理功能:
| 功能 | 说明 |
|---|---|
| Credentials API | 使用 /v2/zoom-credentials 一次性存储 SDK 和 OAuth 凭据 |
| 统一配置 | 使用单一 zoom_config 对象替代多个参数 |
| 凭据类型 | 分别支持「app」(仅 SDK)和「user」(带 OBF 的 OAuth)凭据 |
| 状态跟踪 | 通过 active/invalid 状态监控凭据健康状况 |
| 错误跟踪 | last_error_message 和 last_error_at 用于 debug |
| AES-256-GCM 加密 | 所有密钥和 token 均加密存储 |
无需在每次 request 时传入凭据,只需存储一次并通过 ID 引用:
{
"meeting_url": "https://zoom.us/j/123456789",
"bot_name": "Recording Bot",
"zoom_config": {
"credential_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
}
}详情请参阅 v2 Zoom 集成指南。
授权用户限制
这是最容易让人困惑的部分:授权你应用的 Zoom 用户必须在 bot 录制期间在场于会议中。
对于录制自己团队会议的场景,这通常自然满足。设置集成的人很可能就是会议的主持人。
对于客户请求录制的平台,你需要将此告知用户。连接了 Zoom 账户的人需要先加入会议,bot 才能进入。
如果他们不在场会怎样?
Bot 会等待,每隔几秒重试加入,直到用户出现或超时(可通过 waiting_room_timeout 配置)。
如果他们在会议中途离开会怎样?
Bot 断开连接,Zoom 终止 SDK 会话。截至该时刻的所有录制内容仍会被保存和处理。
持续录制怎么办?
OBF token 是为有用户出席的会议设计的。如果你需要不受与会者情况影响的持续录制,Zoom 正在开发实时媒体流(RTMS)功能。
我们正在开发 RTMS 支持。但 RTMS 有不同的取舍:它以应用形式运行于会议内部(而非可见的 bot 参与者),且目前尚不支持双向音频流。
对大多数使用场景而言,带出席要求的 OBF 方案完全可用。
时间线
| 日期 | 事项 |
|---|---|
| 现在 | OBF 支持已在 Meeting BaaS 上线 |
| 2026 年 2 月 | 开始测试你的集成 |
| 2026 年 3 月 2 日 | Zoom 对外部会议强制执行 OBF |
你还有大约三周时间。我们建议现在就开始。
开始使用
确定你的路径
你的 bot 是否加入外部账户创建的会议?如果是,你需要 OBF token。如果否,SDK 凭据可能就足够了。
设置你的 Zoom 应用
创建一个启用了 Meeting SDK 的 Zoom General App。如果你使用 OBF,请添加 user:read:token 权限范围(托管 OAuth 选项还需添加 user:read:user)。
在 3 月 2 日前进行测试
使用真实的 Zoom 会议进行完整测试,验证一切运行正常。
资源
Meeting BaaS 文档:
Zoom 官方资源:
有问题?
如果你需要帮助选择合适的方案,或对迁移有任何疑问,欢迎联系我们。我们正与客户一起应对这一过渡。