欢迎来到合肥浪讯网络科技有限公司官网
  咨询服务热线:400-099-8848

子账号获取API密钥的详细操作步骤

发布时间:2026-03-15 文章来源:本站  浏览次数:8
子账号 API 密钥是生产环境的推荐方案,遵循最小权限原则,可大幅降低密钥泄露风险。以下是完整、可直接执行的 5 步流程,适用于 2026 年最新腾讯云控制台界面Tencent Cloud

一、准备工作(主账号操作)

  1. 使用主账号登录腾讯云控制台(子账号无法创建其他子账号)
  2. 准备好子账号的基本信息(用户名、描述)
  3. 明确子账号需要的 CDN 权限范围(如仅查询缓存预热任务)
  4. 准备密码管理器用于保存即将生成的密钥

二、详细操作步骤(主账号视角,共 5 步)

步骤 1:创建子账号(核心基础)

  1. 访问腾讯云访问管理 (CAM) 控制台:https://console.cloud.tencent.com/cam
  2. 左侧导航栏选择用户用户列表 → 点击新建用户按钮(蓝色)
  3. 选择自定义创建(推荐,可精确配置权限)
  4. 填写基本信息:
    • 用户名:如cdn-operator(建议包含功能和角色)
    • 显示名称:如CDN缓存预热管理员
    • 描述:如用于查询和管理CDN缓存预热任务
  5. 访问方式设置:
    • 勾选编程访问(API 调用必需)
    • 可选控制台访问(如需要登录控制台操作),设置登录密码和有效期
  6. 点击下一步进入权限配置

步骤 2:为子账号配置 CDN 权限(最小权限原则)

  1. 权限配置页面选择直接关联策略
  2. 搜索并选择适合的 CDN 权限策略:
    表格
    权限策略 适用场景 权限范围
    QcloudCDNReadOnlyAccess 仅查询预热任务状态 只读,无法修改配置或提交预热任务
    QcloudCDNFullAccess 需要管理预热任务 完全控制 CDN 所有资源
    自定义策略 极致安全需求 仅允许调用特定 API(如 DescribeCdnRefreshTasks)
  3. 建议生产环境使用QcloudCDNReadOnlyAccess或自定义策略
  4. 点击下一步 → 确认信息 → 点击完成创建子账号腾讯云

步骤 3:为子账号创建 API 密钥(关键操作)

  1. 返回用户列表,找到刚创建的子账号,点击用户名进入详情页
  2. 切换到API 密钥标签页
  3. 点击新建密钥按钮(蓝色)
  4. 完成二次验证(主账号安全验证,如微信扫码或短信验证)
  5. 系统生成一对SecretIdSecretKey,弹出保存窗口:
    • SecretId:如AKIDz8krbsJ5yKBZQpn74WFkmLPx3*******(公开标识)
    • SecretKey:如Gu5t9xGARNpq86cd98joQYCN3*******(私有密钥,仅创建时可见)
  6. 立即保存
    • 点击复制按钮,将密钥保存到密码管理器
    • 点击下载 CSV 文件,备份到本地安全位置
  7. 确认保存成功后,点击确定关闭窗口Tencent Cloud
⚠️ 重要提醒:SecretKey 仅创建时可见,关闭弹窗后无法再次查看,必须立即保存

步骤 4:验证密钥可用性(推荐)

  1. 使用子账号密钥调用 CDN 预热任务查询 API:
    python
    运行
    import requests
    import time
    import hmac
    import hashlib
    import base64
    
    secret_id = "子账号SecretId"
    secret_key = "子账号SecretKey"
    timestamp = int(time.time())
    nonce = 123456
    
    # 构造请求参数
    params = {
        "Action": "DescribeCdnRefreshTasks",
        "SecretId": secret_id,
        "Timestamp": timestamp,
        "Nonce": nonce,
        "SignatureMethod": "HmacSHA256",
        "TaskType": "preload"  # 仅查询预热任务
    }
    
    # 生成签名(省略签名算法实现,可参考腾讯云API文档)
    # ...
    
    # 发送请求
    response = requests.get("https://cdn.api.qcloud.com/v2/index.php", params=params)
    print(response.json())
    
  2. 若返回任务列表,说明密钥和权限配置成功
  3. 若提示权限不足,返回子账号详情页检查并调整权限

步骤 5:管理子账号密钥(安全运维)

  1. 在子账号API 密钥标签页可查看密钥状态:启用 / 禁用
  2. 支持操作:
    • 禁用:临时禁止密钥使用(如怀疑泄露)
    • 删除:永久删除密钥(需先禁用)
    • 新建:最多可创建 2 个密钥(轮换使用)Tencent Cloud

三、子账号密钥特殊限制与安全管理

1. 数量限制

  • 每个子账号最多创建2 个 API 密钥
  • 如需更多密钥,建议创建多个功能专一的子账号

2. 安全最佳实践(生产环境必严格执行)

表格
安全措施 操作方法 风险说明
最小权限 仅授权必要的 CDN 查询权限,禁止使用 FullAccess 限制密钥泄露后的影响范围
密钥轮换 每 90 天新建密钥,禁用并删除旧密钥 降低长期密钥泄露风险
操作审计 开启 CAM 操作日志,监控子账号 API 调用记录 及时发现异常访问行为
密钥禁用 人员离职或权限变更时,立即禁用相关密钥 防止未授权访问
禁止共享 每个子账号对应唯一使用者,不共享密钥 责任可追溯,避免权限滥用

3. 子账号密钥创建权限说明

  • 子账号默认无法自行创建 API 密钥,需主账号授权
  • 如需让子账号管理自身密钥,主账号需为其添加QcloudCamSubAccountAccessKeyFullAccess权限Tencent Cloud

四、常见问题与解决方案

1. 子账号无法创建 API 密钥

  • 原因 1:主账号未授权子账号创建密钥权限
    解决:主账号为子账号添加QcloudCamSubAccountAccessKeyFullAccess权限
  • 原因 2:子账号已达到 2 个密钥上限
    解决:禁用并删除一个旧密钥后重试Tencent Cloud

2. API 调用提示权限不足

  • 原因:子账号权限策略不包含所需 CDN 操作
    解决:
    1. 进入子账号详情页 → 权限标签
    2. 点击添加权限 → 选择合适的 CDN 权限策略
    3. 确认权限添加后重试 API 调用腾讯云

3. SecretKey 丢失或忘记保存

  • 解决:无法找回已创建的 SecretKey,只能:
    1. 为子账号新建一个密钥
    2. 更新所有使用旧密钥的应用配置
    3. 禁用并删除旧密钥,避免安全风险Tencent Cloud

4. 子账号创建失败

  • 可能原因:
    • 主账号未完成实名认证
    • 子账号用户名重复
    • 网络问题
  • 解决:
    1. 完成主账号实名认证
    2. 更换唯一用户名
    3. 刷新页面或更换浏览器重试Tencent Cloud

五、快速操作清单(一键核对)

✅ 主账号登录 → 访问 CAM 控制台 → 新建用户(勾选编程访问)
✅ 为用户添加 QcloudCDNReadOnlyAccess 权限 → 完成创建
✅ 进入子用户详情页 → API 密钥标签 → 新建密钥
✅ 复制 SecretId 和 SecretKey 到密码管理器 → 下载 CSV 备份
✅ 测试 API 调用 → 验证权限和密钥有效性
✅ 配置密钥轮换计划(每 90 天)

下一条:如何获取腾讯云API密钥...