账号和权限配置

最近更新时间:2021-04-13 17:46:54

使用前提

Serverless Framework 帮助您将项目快速部署到腾讯云 Serverless 应用中心,因此在部署前,请确认您已经 注册腾讯云账号 并完成 实名认证

授权方式

扫码一键授权

通过 sls deploy 进行部署时,您可以通过扫描二维码,一键授权并快速部署,扫码授权后,会生成临时密钥信息(过期时间60分钟)写入当前目录下的 .env 文件中:

TENCENT_APP_ID=xxxxxx     #授权账号的 AppId
TENCENT_SECRET_ID=xxxxxx  #授权账号的 SecretId
TENCENT_SECRET_KEY=xxxxxx #授权账号的 SecretKey
TENCENT_TOKEN=xxxxx       #临时 token

一键授权时获取的权限详情请查看 SLS_QcsRole 角色权限列表

说明:

如果您的账号为腾讯云子账号,扫码部署前需要主账号先进行策略授权配置。配置详情参考 子账号权限配置

密钥授权

为了避免扫码授权过期进行重复授权,您可以采用密钥授权方式。在部署的根目录下创建 .env 文件,并配置腾讯云的 SecretId 和 SecretKey 信息:

# .env
TENCENT_SECRET_ID=xxxxxxxxxx #您账号的 SecretId
TENCENT_SECRET_KEY=xxxxxxxx #您账号的 SecretKey

SecretId 和 SecretKey可以在 API 密钥管理 中获取 。

说明:

为了账号安全性,密钥授权时建议使用子账号密钥。子账号必须先被授予相关权限才能进行部署。配置详情参考 子账号权限配置

子账号权限配置

配置步骤

如果您的操作账号为腾讯云子账号,没有默认操作权限,则需要主账号(或拥有授权操作的子账号)进行如下授权操作:

  1. CAM 用户列表 页,选取对应子账号,单击【授权】。

  2. 在弹出的窗口内,搜索并选中 QcloudSLSFullAccess,单击【确定】,完成授予子账号 Serverless Framework 所有资源的操作权限。

  3. CAM 用户列表 页,选取对应子账号,单击用户名称,进入用户详情页。

  4. 单击【关联策略】,在添加策略页面单击【从策略列表中选取策略关联】>【新建自定义策略】。
    关联策略页面:

    新建策略页面:

  5. 选择【按策略语法创建】>【空白模版】,填入如下内容,注意角色参数替换为您的主账号 UIN:

    {
    "version": "2.0",
    "statement": [
     {
         "action": [
             "cam:PassRole"
         ],
         "resource": [
             "qcs::cam::uin/${填入账号的uin}:roleName/SLS_QcsRole"
         ],
         "effect": "allow"
     },
     {
         "resource": [
             "*"
         ],
         "action": [
             "name/sts:AssumeRole"
         ],
         "effect": "allow"
     }
    ]
    }
  6. 完成自定义策略配置后,回到第4步的授权页面,搜索刚刚创建的自定义策略,点击【下一步】> 【确定】,即可授予子账号 SLS_QcsRole 的操作权限,此时,您的子账号应该拥有一个自定义策略和一个 QcloudSLSFullAccess 的预设策略,可以完成 Serverless Framework 的正常使用。

说明:

除了授权调用默认角色 SLS_QcsRole 外,也可给子账号授权调用自定义角色。通过自定义角色中的细粒度权限策略,达到权限收缩的目的。查看 指定操作角色配置 详情。

SLS_QcsRole 角色权限列表

策略 描述
QcloudCOSFullAccess COS(对象存储)全读写访问权限
QcloudSCFFullAccess SCF(云函数)全读写权限
QcloudSSLFullAccess SSL 证书(SSL)全读写访问权限
QcloudTCBFullAccess TCB(云开发)全读写权限
QcloudAPIGWFullAccess APIGW(API 网关)全读写权限
QcloudVPCFullAccess VPC(私有网络)全读写权限
QcloudMonitorFullAccess Monitor(云监控)全读写权限
QcloudSLSFullAccess SLS(Serverless Framework)全读写权限
QcloudCDNFullAccess CDN(内容分发网络)全读写权限
QcloudCKafkaFullAccess CKafka(消息队列 CKafka)全读写权限
QcloudCodingFullAccess CODING DevOps 全读写访问权限
QcloudPostgreSQLFullAccess 云数据库 PostgreSQL 全读写访问权限
QcloudCynosDBFullAccess 云数据库 CynosDB 全读写访问权限
QcloudCLSFullAccess 日志服务(CLS)全读写访问权限
QcloudAccessForSLSRole 该策略供 Serverless Framework(SLS)服务角色(SLS_QCSRole)进行关联,用于 SLS 一键体验功能访问其他云服务资源。包含访问管理(CAM)相关操作权限
目录