腾讯云 EdgeOne 与 CDN 接入 CertbotX:SecretId 和 CAM 权限怎么配
腾讯云 EdgeOne 和传统 CDN 是两套产品权限。本文给出专用 CAM 子用户、最小 API 动作、SecretId/SecretKey 和 CertbotX 配置步骤。
本文目录
腾讯云 EdgeOne 和腾讯云传统 CDN 都能托管 HTTPS 证书,但它们不是同一套 API。EdgeOne 使用 TEO 服务,传统 CDN 使用 CDN 服务;两者上传证书时还要调用 SSL 服务。只给其中一套权限,常见结果就是“连接验证通过,部署时权限不足”。
先确认你要部署到哪里
- 域名在 EdgeOne 的“站点/加速域名”中管理:选择腾讯云 EdgeOne。
- 域名在传统“内容分发网络 CDN”中管理:选择腾讯云 CDN。
- 两边都在用:可以共用一个腾讯云连接,但要创建两个不同部署目标,权限策略取两组动作的并集。
CertbotX 不会根据账号名称猜产品。选择什么目标,就调用什么产品 API。
创建 CAM 子用户和 API 密钥
- 打开 腾讯云访问管理 CAM。
- 在“用户 > 用户列表”创建专用子用户,例如
certbotx-deployer。 - 只开启编程访问,不要授予 AdministratorAccess,也不要复用主账号密钥。
- 在该子用户的 API 密钥管理中创建
SecretId和SecretKey。 - SecretKey 只显示一次,立即存入密码管理器。
如果腾讯云账号启用了更严格的密钥策略,按企业要求使用角色、来源 IP 或定期轮换进一步收窄。CertbotX 当前表单接收长期 SecretId/SecretKey,因此轮换时需要在“接入点 > 云厂商”中点击“更新凭据”,旧密钥确认不再使用后再禁用。
EdgeOne 最小权限

EdgeOne 连接和部署当前需要四个动作:
teo:DescribeZones:验证连接并找到域名所属站点 Zone ID。teo:DescribeHostsSetting:查询加速域名当前 HTTPS/证书设置。teo:ModifyHostsCertificate:把新证书绑定到指定加速域名,或恢复旧绑定。ssl:UploadCertificate:把证书上传到腾讯云 SSL 证书服务。
可以在 CAM 中创建自定义策略:
{
"version": "2.0",
"statement": [
{
"effect": "allow",
"action": [
"teo:DescribeZones",
"teo:DescribeHostsSetting",
"teo:ModifyHostsCertificate",
"ssl:UploadCertificate"
],
"resource": ["*"]
}
]
}传统 CDN 最小权限
传统 CDN 使用另一组动作:
cdn:DescribeDomains:保存连接时执行只读验证。cdn:DescribeDomainsConfig:查找目标域名和当前证书绑定。cdn:UpdateDomainConfig:开启 HTTPS 并绑定新证书,或恢复旧证书 ID。ssl:UploadCertificate:上传证书到腾讯云 SSL 服务。
对应策略如下:
{
"version": "2.0",
"statement": [
{
"effect": "allow",
"action": [
"cdn:DescribeDomains",
"cdn:DescribeDomainsConfig",
"cdn:UpdateDomainConfig",
"ssl:UploadCertificate"
],
"resource": ["*"]
}
]
}
腾讯云部分 API 是否支持资源级授权会随产品变化。先用最小 Action 集合打通,再按 CAM 自定义策略语法 和权限检测结果收窄资源范围。不要因为 resource 暂时使用 *,就把动作也放大成整套管理员权限。
在 CertbotX 中配置
- 登录 CertbotX 客户控制台,进入“接入点 > 云厂商”。
- 点击“添加云厂商账号”,选择“腾讯云 EdgeOne”或“腾讯云 CDN”。两者都会创建腾讯云连接。
- 填写连接名称、
SecretId和SecretKey,点击“保存并验证”。 - 连接通过验证后,回到域名部署向导,选择实际产品类型。
- EdgeOne 目标填写已经接入 EdgeOne 站点的完整加速域名;平台会自动查询 Zone ID。
- 传统 CDN 目标填写已经存在于 CDN 控制台的加速域名。
保存云连接时只做只读验证,不修改云资源。凭据使用 AES-GCM 加密保存,SecretKey 不会在连接列表再次显示。
为什么 EdgeOne 会卡在验证中
EdgeOne 控制面接受证书后,边缘节点还需要传播。CertbotX 会先确认云厂商已经绑定本次证书,再从公网读取实际 SNI 证书。只要公网还返回旧指纹,状态就会继续等待;超过上限或遇到不可重试错误时,平台会尝试使用加密快照恢复旧绑定。
排查顺序建议保持简单:
- 确认目标类型没有把 EdgeOne 选成传统 CDN,或反过来。
- 确认加速域名已经在对应产品中存在且属于这个账号。
- 查看错误是否指向 TEO、CDN 还是 SSL 权限。
- 在腾讯云控制台确认新证书 ID 是否已绑定。
- 用 CertbotX SSL 检测 和不同网络查看公网证书。
HTTP 强制跳转 HTTPS 一般不会影响 DNS-01 的证书重新申请,因为验证走 DNS CNAME/TXT,不走网站的 HTTP 页面。不过跳转规则、回源健康和证书部署是三件事,改 EdgeOne 规则后仍应单独访问业务页面确认。