问题描述
子账号在操作 CDN 时收到了类似以下的错误:
请求失败,您没有权限执行操作
例如,子账号收到的实际错误如下:
问题原因
出现该问题的原因是子账号没有该资源的操作权限。子账号可以遵照以下步骤在访问控制中查看并确认其是否有该资源的操作权限。
说明
如果子账号无权限在访问控制页面中操作以下步骤,则需要主账号来操作。
打开 访问控制下的用户管理。
找到子账号的用户名,然后在 操作 列点击 管理。
在 用户详情 页面,点击 权限,然后点击 项目权限。
检查该子用户是否被授予了资源的相关策略。如果已授予,点击该策略的作用范围,也就是项目。
在 项目详情 页面,查看您尝试操作的资源是否包含在该项目中。
解决方法
如果子用户未被授予资源的相关策略,参考 系统预设策略 对子用户添加相应的策略。
如果相关策略已被授予,但是子用户尝试操作的资源未包含在该项目中,您需要将需要操作的资源移入该项目,或者在该策略的作用范围中添加包含该资源的项目。
如果您尝试操作的资源已包含在该项目中,请 提交工单。
问题描述
子账号在操作 CDN 时收到了类似以下的错误:
请求失败,您没有权限执行操作
如果您在子账户下操作时,遇到报错:请求失败,您没有权限执行操作,例如:
问题原因
出现该问题的原因是主账号未授予 CDN 访问其他火山引擎云服务的权限,例如证书中心,对象存储等。在火山引擎中,云服务间的访问授权是通过角色来实现的。您可以使用主账号检查权限是否被授予了。
打开 访问控制下的角色管理。
角色页面的列表中出现的是当前 CDN 拥有的角色。您需要检查相应的角色是否在列表中。
ServiceRoleForCDN:授权 CDN 访问对象存储,日志服务,证书中心,边缘函数。
CDNAccessSSLRole:授权 CDN 访问证书中心。
CDNAccessSparrowRole:授权 CDN 访问边缘函数。
解决方法
要解决该问题,根据您的场景使用主账号授权 CDN 访问相关服务。
场景一:授予 CDN 访问所有服务。这些服务包括对象存储,日志服务,证书中心,边缘函数。
打开 访问控制下的角色管理。
点击 新建角色。
在 新建角色 页面,做以下配置:
在 选择信任身份类型 下方,选择 服务。
在 选择服务 列表中,选择 内容分发网络。
勾选 创建为服务关联角色(ServiceLinkedRole)。
点击两次 下一步,然后点击 提交。
场景二:授权 CDN 访问单个服务。当前,您仅可授权 CDN 访问证书中心或边缘函数。
打开 访问控制下的角色管理。
点击 新建角色。
在 新建角色 页面,做以下配置,然后点击 下一步:
在 选择信任身份类型 下方,选择 服务。
在 选择服务 列表中,选择 内容分发网络。
不勾选 创建为服务关联角色(ServiceLinkedRole)。
输入一个角色名称,然后点击 下一步。
如果您要授权 CDN 访问证书中心,在策略搜索框,输入 CDNAccessSSLRole
,然后勾选该策略。 如果您要授权 CDN 访问边缘函数,在策略搜索框,输入 CDNAccessSparrowRolePolicy
,然后勾选该策略。
点击 提交。
可以。您可以遵循以下步骤将一个加速域名从项目 A 移动到项目 B 下。
打开 访问控制下的项目管理。
在项目列表中,点击项目 A。
在项目 A 中勾选需要移出的加速域名,然后点击 移出。
在 移出资源 页面,选择项目 B 作为目标项目,然后点击 确认。