服务对象与地域限制
PuppyIP 仅面向海外合规企业及其授权人员提供服务,不面向中国大陆地区开放或提供代理服务。本服务仅限用于中国大陆境外的合法业务活动,严禁在中国大陆境内使用本服务。
代理 IP 或服务器位于境外,不改变上述限制。不得通过中转、转接、共享或转售向中国大陆境内的最终使用者提供本服务。使用前请阅读用户服务协议。
本文要点
- GitHub 密钥扫描可报告公开仓库中的 Cloudflare Access 服务令牌;Access 会停用受影响令牌并向账号管理员发送邮件。
- 2026 年 8 月 26 日起创建的新 Client Secret 使用 cfast_ 前缀、40 位字母或数字和 8 位十六进制校验和。
- 官方检测规则为 cfast_[A-Za-z0-9]{40}[a-f0-9]{8}。匹配只表示格式相似,不能验证校验和或令牌是否有效。
- 规则不适用于旧版 64 位十六进制密钥;旧格式仍可使用,不会只因格式旧而要求轮换。
- 已报告泄露的令牌必须先轮换,旧密钥立即失效且没有宽限期;更新所有调用器后再重新启用。
发生了什么,哪些任务会受影响?
Cloudflare 2026 年 11 月 11 日的公告说明,GitHub 密钥扫描会自动检测公开仓库中暴露的 Cloudflare Access 服务令牌密钥并报告给 Cloudflare。Access 随后会停用受影响的令牌,并向账号管理员发送邮件。
其他密钥扫描工具也可以按 Client Secret 的固定格式编写自定义检测规则。共享该令牌的 CI、定时任务、监控和后端服务都可能受影响;不能仅凭这则公告把普通用户登录故障归因于服务令牌。
官方资料没有说明新增套餐资格、费用、国家限制或每个账号的具体处理时刻。操作前应由有权限的管理员核对告警和实际令牌状态;本文没有访问读者账号、执行扫描或恢复。
识别新版 Client Secret:查找候选值,不判断凭据状态
自 2026 年 8 月 26 日起创建的新服务令牌 Client Secret 使用 cfast_ 前缀,后接 40 个字母或数字,再接 8 个十六进制校验和字符。Cloudflare 公布的自定义检测正则是:cfast_[A-Za-z0-9]{40}[a-f0-9]{8}。
该正则可以帮助扫描工具定位可能暴露的新版密钥。按规则匹配不等于校验和正确,也不能证明密钥当前有效、已启用或确实发生泄露;还需按正式告警和账号记录核对。
旧版 Client Secret 是 64 位十六进制格式,仍可使用且不会仅因格式旧而需要轮换。新旧格式使用相同的 Client ID 和认证请求头。
先确认令牌和调用器,再开始轮换
根据泄露告警确认所属账号、令牌名称和受影响应用,再列出使用该令牌的服务及凭据配置位置。交接时只记录配置名称、负责人和时间,不要把真实密钥复制到工单、截图或日志。
恢复操作会清除令牌的泄露元数据。可先保存必要且已脱敏的报告信息,再通过管理员活动日志核对审计历史;轮换后看不到原元数据,并不代表泄露没有发生。
第一步:轮换密钥,立即废弃旧值
在 Cloudflare dashboard 的 Zero Trust → Access controls → Service credentials → Service Tokens 中找到对应令牌,选择 Rotate secret。对于已报告泄露的令牌,旧密钥会立即撤销,不能用轮换宽限期维持它继续工作。
如果获授权的管理程序调用轮换 API,请省略 previous_client_secret_expires_at。为泄露令牌请求旧密钥在未来到期会返回 400;普通轮换可用的宽限期不适用于泄露恢复。
轮换后 Client ID 保持不变,Client Secret 则换成新值。旧密钥已立即失效,不能靠延长到期时间恢复;安排调用器切换时应考虑服务可能暂时不可用,不要承诺无中断。
第二步:更新调用器,再明确重新启用
把新 Client Secret 写入已盘点服务原有的凭据配置,保留 Client ID、目标应用和现有访问策略。没有证据表明更换网络出口能解决这种凭据状态问题。
需要恢复的调用器准备好后,再对该令牌执行 Enable token。轮换不会自动重新启用已停用的令牌;在轮换之前尝试启用,API 会返回 409。
例如,一个令牌同时供 CI 和夜间同步任务使用:只更新 CI,不能证明夜间任务也已恢复。这个例子用于说明恢复范围,并非本文执行过的测试;应逐项确认每个调用器都加载了新配置。
第三步:移除暴露值,核对实际请求
从告警指出的位置移除暴露的密钥。删除文件或提交中的明文不能代替轮换,因为密钥可能已经被复制;也不要为恢复运行重新放回旧值。
令牌重新启用后,按原有授权范围检查一条没有写入副作用、预期结果明确的请求,并查看首个响应与实际内容。按钮操作完成、配置保存成功或看到 HTTP 200,都不能单独证明整个业务任务已经恢复。
如果受保护应用仍返回 401 或 403,再核对服务令牌请求头、目标路径与 Service Auth 策略。不要把轮换 API 的 400、启用 API 的 409 与受保护应用本身的响应混为同一种故障。
交接时记录哪些结果?
记录告警时间、实际轮换和重新启用时间、已更新的调用器及验证结果,并列出尚未核对的任务。仅保留脱敏后的状态与证据,不要保存或分享真实 Client Secret。
某个调用器尚未恢复时,应明确标为待处理;一次读取成功不代表全部重试、分页或后续批处理都正常。官方资料没有给出恢复耗时保证,也没有说明这次变化会改变应用的授权策略。
资料来源
常见问题
默认哪些人会收到泄露令牌邮件?
当前 Cloudflare 文档说明,平台会自动创建泄露服务令牌告警,默认通知账号 Super Administrators,以及邮箱可用时的令牌创建者。管理员可以编辑告警收件人;本文没有检查任何账号的实际告警配置。
所有旧格式服务令牌都必须更换吗?
不需要仅因格式旧而更换。当前文档说明,既有 64 位十六进制 Client Secret 继续有效。这里的先轮换再启用顺序针对被报告泄露的令牌,不能据此推断所有服务令牌都已停用。
正则匹配能证明密钥有效或已泄露吗?
不能。正则只按格式筛出候选值,不验证八位校验和,也不能确认密钥是否有效、启用或已被报告泄露;应核对 Cloudflare 的告警与账号记录。