华为云用户手册

  • 发展路径基本权益说明 软件伙伴发展路径/服务伙伴发展路径/数字化转型咨询与系统集成伙伴发展路径/学习与赋能伙伴发展路径权益具体说明如下: 1)工具包、技术文档、能力套件、最佳实践参考 是指伙伴在使用华为云服务、基于华为云构建服务能力、应用与软件解决方案与认证辅导课程时,华为云能够提供的工具软件、产品技术文档、开发套件,以及最佳实践参考等技术资源,具体内容可查看华为云开发者社区及华为云官网。 2)解决方案工作台 是华为云面向合作伙伴的统一解决方案在线构建平台,对解决方案构建过程和结果进行数字化,使能合作伙伴在线自助式完成解决方案的设计、部署、验证和管理,加速解决方案构建和发布。具体内容请查看华为云官网。当前仅支持中国站合作伙伴使用。 3)技术专家支持 是指华为云安排技术专家DTSE或PSA,帮助伙伴解决华为云服务相关的技术问题,或协助伙伴构建能力或解决方案架构或基于业务授权构建联合offering。该权益可联系伙伴PDM进行申请。 4)华为云测试券 用于生态伙伴方案与工具构建、测试、验证、迁移、培训、服务试用、培训赋能等目的。该权益在官网伙伴权益表格中的上限额度是针对伙伴主体发放的,伙伴可以使用多个服务解决方案/应用与软件解决方案申请该权益,但总额度不得超出权益规定上限。 5)华为云在线课程 是指华为云在线课程,拥有体系化的培训课程,帮助伙伴快速完成学习覆盖,轻松上云。具体内容请看华为云官网。 6)KooLabs云实验 是指华为云官方实验平台,帮助开发者在实验手册的帮助下、快速体验华为云服务,在云端实现云服务的实践、调测和验证。具体内容请查看华为云官网。 7)培训赋能 是指华为云组织的面向伙伴的认证培训、学习与赋能活动,伙伴可以向PDM申请参加该培训。 8)HCCDE、HCCDP考试券 是指伙伴参加华为云开发者认证所需的考试券。 9)华为云官网伙伴查找器搜索与展示 是指伙伴有机会进入华为云线上伙伴方案查找器,支持公开的搜索与展示。 10)伙伴证书 是指通过了角色认证、能力差异化认证的伙伴可以获得伙伴证书。 11)云软件证书/先进云软件证书 是指伙伴应用与软件解决方案完成“云软件认证”或“先进云软件认证”可以获得对应的认证证书。 12)受邀参加华为云营销活动 是指伙伴有机会受邀和华为云联合发布解决方案,并在华为全联接大会、生态伙伴大会、华为云城市峰会等华为自办展会或第三方展会中进行宣传。 13)市场发展基金(MDF) 是指华为云提供专项资金激励给在市场或行业中影响力大的伙伴、针对伙伴服务/应用与软件解决方案进行市场营销和宣传活动。 MDF用于支持伙伴营销活动,具体应用场景及适用活动类型、管理要求、申请及审批流程参考《华为云全球合作伙伴市场发展基金(MDF)管理规范》。在官网伙伴权益表格中的上限额度是针对伙伴主体发放的,伙伴可以使用多个服务解决方案/应用与软件解决方案申请该权益,但总额度不得超出权益规定的上限。用于申请该权益的服务解决方案/应用或软件解决方案需要完成基于华为云完成构建与发布(基线解决方案或者联营商品)。 数字化转型与系统集成伙伴MDF: MDF用于支持伙伴营销活动,该权益在上述表格中的上限额度是针对伙伴主体发放的,鼓励伙伴通过多种形式建立大客户与华为云的连接,包括但不限于:客户CXO走进华为,面向大客户的伙伴联合创新中心打造,面向客户CXO的联合华为云的专题宣讲,行业峰会/论坛面向客户联合发声等,在活动过程中有双方客户界面的联合服务客户的能力展示或基于某一特定主题的白皮书联合发布均可,伙伴可以在额度内多次申请。 学习与赋能伙伴MDF: 指华为云激励差异化伙伴针对已获得授权的生态培训业务或生态认证业务进行市场营销和宣传活动,扩大云及根技术开发者覆盖,加速华为云全球生态发展。 14)生态赋能发展业务授权或生态认证发展业务授权 指差异化伙伴可在满足对应认证要求后,获得华为云培训业务或考试业务授权,面向不同用户群体自主开展培训或认证业务;伙伴开展生态培训业务相关的课程需遵循《华为云学习与赋能伙伴生态培训服务管理规定》。 15)生态赋能发展或认证发展业务KooLabs云实验支持 指华为云可基于联合商业计划,为差异化伙伴提供生态培训或生态认证业务中所需要的KooLabs云实验支持。 父主题: 基本权益说明
  • 修改ext2/ext3/ext4文件系统的UUID 本示例以/dev/vdc1为例,您需要根据自己的设备名修改相关命令。 远程连接E CS 实例。具体操作,请参见通过VNC登录Linux ECS。 运行以下命令,查询磁盘UUID信息。 blkid 若查询结果如下所示,表示通过镜像新创建的磁盘UUID和原磁盘是一样的。 运行以下命令,为磁盘生成新的UUID。 uuidgen | xargs tune2fs /dev/vdc1 -U 运行以下命令,查看是否已经修改UUID。 blkid 若查询结果如下,表示已修改/dev/vdc1的UUID。 运行以下命令挂载(mount)磁盘。 mount /dev/vdc1 /mnt 配置/etc/fstab文件,开机自动挂载新磁盘。 具体操作请参见:设置开机自动挂载磁盘分区。
  • 修改xfs文件系统的UUID 本示例以/dev/vde1为例,您需要根据自己的设备名修改相关命令。 远程连接ECS实例。具体操作,请参见通过VNC登录Linux ECS。 运行以下命令查询磁盘的UUID。 blkid 若查询结果如下所示,表示通过镜像新创建的磁盘UUID和原磁盘是一样的。 运行以下命令为磁盘生成新的UUID。 xfs_admin -U generate /dev/vde1 运行以下命令查看是否已经修改UUID。 blkid 若查询结果如下,表示已修改/dev/vde1的UUID。 运行以下命令挂载(mount)磁盘。 mount /dev/vde1 /mnt 配置/etc/fstab文件,开机自动挂载新磁盘。
  • 操作背景 使用镜像创建磁盘后,新创建的磁盘的UUID和原磁盘是一样的。如果您将镜像创建的磁盘挂载到原Linux实例(原磁盘所挂载的实例),那么新创建磁盘的UUID会和原磁盘冲突。因此,您在使用镜像创建新磁盘并在控制台挂载到原Linux实例后,需要登录实例修改新磁盘的UUID,再执行挂载(mount)操作。关于如何修改磁盘的UUID,您可以先通过blkid命令查询文件系统类型,然后根据查询结果选择合适的操作,具体如下: 如果查询结果为:TYPE="ext4"、TYPE="ext3"或TYPE="ext2",具体操作,请参见修改ext2/ext3/ext4文件系统的UUID。 如果查询结果为:TYPE="xfs",具体操作,请参见修改xfs文件系统的UUID。
  • 步骤二:查看伸缩策略执行日志 超过策略执行时间后,单击伸缩带宽策略as-policy-001名称,进入伸缩带宽策略详情页面。 在策略执行日志下查看策略执行日志。可以看到每天20:00带宽策略as-policy-001都将带宽大小调整为10Mbit/s的记录。 图3 伸缩策略as-policy-001执行日志 按照与步骤 1、步骤 2类似的操作,可以查看伸缩带宽策略as-policy-002的执行日志,即每天22:00伸缩带宽策略as-policy-002都将带宽大小调整为5Mbit/s。 图4 伸缩策略as-policy-002执行日志
  • (可选)步骤四:立即执行伸缩带宽策略 在伸缩带宽页面,单击需要被立即执行的伸缩带宽策略操作列的“立即执行”。 图6 策略立即执行入口 随后可查看伸缩策略的执行情况,可参考步骤二:查看伸缩策略执行日志进行操作。 在您发现有突发的业务负载高峰到来时,您可以对伸缩带宽策略as-policy-001进行立即执行操作,增大带宽的值。在该高峰期结束后,对伸缩带宽策略as-policy-002进行立即执行操作,使带宽值回到5Mbit/s。您可以灵活的对带宽值的大小进行调节。
  • 步骤一:创建伸缩带宽策略 本步骤仅针对本示例进行参数设置及介绍,更多创建伸缩带宽策略详细内容请参见创建伸缩带宽策略。 登录AS控制台。 在左侧导航栏选择“伸缩带宽”。 单击“创建伸缩带宽策略”。 图1 创建伸缩带宽策略 设置伸缩带宽策略参数。 图2 设置伸缩带宽策略参数。 表1 带宽策略参数配置 参数 示例 说明 策略名称 as-policy-001 创建伸缩带宽策略的名称。 资源类型 弹性公网IP 需要进行管理的带宽的类型,可选择“弹性公网IP”或“共享带宽”。 弹性公网IP - 需要进行伸缩管理的公网IP。当资源类型选择“弹性公网IP”时需要配置该项。 策略类型 周期策略 在指定的时间段进行调整带宽。 重复周期 按天 重复周期包括:按天、按周、按月 时区 GMT+08:00 为默认值:GMT+08:00 代表格林尼治标准时间加8小时,即北京时间。 触发时间 20:00 设定伸缩策略触发时间。 说明: 周期策略的触发时间需包含在策略的生效时间内。 生效时间 自定义即可 选择伸缩策略触发的时间段。 执行动作 设置为10Mbit/s 设置伸缩活动的执行动作。 执行动作包括:增加、减少、设置为。 冷却时间 900 冷却时间是指冷却伸缩活动的时间,单位为秒。 参数配置确认完成后,单击“立即创建”。 重复步骤 3到步骤 5,创建伸缩带宽策略2。其中策略名称填“as-policy-002”,策略类型选择“周期策略”,重复周期选择“按天”,触发时间设置为“22:00”,执行动作选择调整到5Mbit/s。
  • 操作场景 当用户业务对带宽资源有强依赖且带宽值周期性变化时,您可以在应用系统中添加华为云提供的弹性伸缩,并创建伸缩带宽周期策略来自动调整带宽值。当满足伸缩带宽策略的条件时,系统会自动修改带宽值,降低应对业务高峰压力时人为反复调整资源的工作量,帮助您节约资源和人力成本。 例如:某 视频直播 网站,在每天20:00会播出全网收视率最高的影视作品,时长两个小时,在该高峰时间段原弹性公网IP带宽5Mbit/s无法满足客户的访问需求。需要在每天20:00将带宽值调整为10Mbit/s,每天22:00将带宽值调整为5Mbit/s,可参考如下操作指导。
  • 步骤二:创建弹性伸缩组 本步骤仅针对本示例进行参数设置及介绍,更多创建弹性伸缩组的详细内容请参见伸缩组。 单击“创建弹性伸缩组”,设置“弹性伸缩组”参数。 图3 “弹性伸缩组”参数设置 表2 “弹性伸缩组”参数设置说明 参数 示例 说明 区域 华北-北京四 请就近选择靠近您业务的区域,可减少网络时延,提高访问速度。 更多信息,请参见区域和可用区。 可用区 可用区1、可用区2、可用区3、可用区7 可用区之间内网互通,不同可用区之间物理隔离。 多可用区扩展策略 均衡分布 保证选择的可用区列表中各可用区下云服务器数量均衡。 名称 as-group-test1 伸缩组的名称。 最大实例数(台) 1 伸缩组中运行的最大云服务器的个数。 期望实例数(台) 0 伸缩组中期望运行的云服务器的个数。 最小实例数(台) 0 伸缩组中运行的最小云服务器的个数。 伸缩配置 as-config-3817 步骤一中创建的伸缩配置。 虚拟私有云 vpc-default-smb 使用系统默认创建的VPC和子网。 更多信息,请参见虚拟私有云和子网规划建议。 子网 subnet-default-smb 负载均衡 不使用 可选参数,更多信息,请参见创建伸缩组。 实例移除策略 根据较早创建的配置较早创建的实例 根据“较早创建的配置”较早创建的“实例”优先被移除伸缩组。 弹性公网IP 释放 当云服务器从伸缩组中移除时,会将云服务器上的弹性公网IP释放。 数据盘 删除 当云服务器从伸缩组中移除时,云服务器挂载的数据盘将被删除。 健康检查方式 云服务器健康检查 对云服务器的运行状态进行检查,如果未通过云服务器健康检查,则伸缩组会将该云服务器移出伸缩组。 健康检查间隔 5分钟 伸缩组执行健康检查的周期。 健康状况检查宽限期(秒) 600 伸缩组会等健康状况检查宽限期结束后才检查实例的运行状况。 企业项目 default 伸缩组归属的企业项目,由伸缩组创建的弹性云服务器将归属于此企业项目。 勾选《弹性伸缩免责声明》协议。 单击“立即创建”,完成弹性伸缩组的创建。 单击“返回弹性伸缩组列表”,查看已创建的伸缩组。 图4 查看伸缩组
  • 步骤一:创建伸缩配置 本步骤仅针对本示例进行参数设置及介绍,更多创建伸缩配置的详细内容请参见伸缩配置。 登录AS控制台。 单击“创建伸缩配置”,设置“伸缩配置”参数。 图1 “伸缩配置”参数设置 表1 “伸缩配置”参数设置说明 参数 示例 说明 计费模式 按需计费 按云服务的实际使用时长计费,可以随时开通或删除。更多信息,请参见弹性 云服务器ECS 计费说明。 区域 华北-北京四 请就近选择靠近您业务的区域,可减少网络时延,提高访问速度。 更多信息,请参见区域和可用区。 名称 as-config-3817 伸缩配置的名称。 配置模板 使用新模板 需要配置伸缩实例的规格、镜像、磁盘等参数。 CPU架构 x86计算 x86采用复杂指令集(CISC)。 规格 s7.xlarge.2 请根据业务需要选择合适的规格。更多信息,请参见弹性云服务器规格清单。 镜像 CentOS 8.2 64bit(40GiB) 华为云提供的Linux类型公共镜像,该镜像免费。 磁盘 通用型SSD 100GiB 伸缩实例自带系统盘,用于存储云服务器的操作系统。 安全组 default 使用系统默认创建的安全组。 弹性公网IP 不使用 如需访问外网,则可以为伸缩实例配置和绑定弹性公网IP。 登录方式 密钥对 选择“登录凭证”方式为“密钥对”。 密钥对 KeyPair-2325 使用已有的密钥对或新建密钥对,并确认已获取密钥对的私钥文件。 高级配置 暂不配置 - 单击“立即创建”,完成伸缩配置的创建。 单击“返回伸缩配置列表”,查看已创建的伸缩配置。 图2 查看伸缩配置
  • 步骤三:添加伸缩策略 在弹性伸缩组页面,单击“查看伸缩策略”,为伸缩组添加伸缩策略。 设置“添加伸缩策略”参数。 图5 设置“添加伸缩策略”参数 表3 告警策略参数配置 参数 示例 说明 策略名称 as-policy-e26c 创建伸缩策略的名称。 策略类型 告警策略 选择“告警策略”。 告警规则 现在创建 可选择“现在创建”和“使用已有”。 告警规则名称 as-alarm-43bd 创建告警规则名称。 监控类型 系统监控 支持“系统监控”和“自定义监控”。 触发条件 CPU使用率最大值大于90% - 监控周期 5分钟 - 连续出现次数 3 - 企业项目 default 默认项目为default。 告警策略类型 简单策略 - 执行动作 增加2个实例 设置伸缩活动执行动作及实例的个数或实例百分比。 执行动作包括:增加、减少、设置为。 冷却时间 300秒 为了避免告警策略频繁触发,必须设置冷却时间。 配置完参数后,单击“确定” 。
  • 操作场景 当业务需求变化频繁且无固定规律时,您可以在应用系统中添加华为云提供的弹性伸缩,并配置告警策略来实现动态扩缩容资源的目的。当满足伸缩策略的条件时,系统自动修改期望实例数,从而触发伸缩活动进行资源的扩张或收缩,降低应对业务变化和高峰压力时人为反复调整资源的工作量,帮助您节约资源和人力成本。 例如:某电商网站运行在华为云提供的一台弹性云服务器上,该电商计划在某日零点进行大型的折扣活动,但高峰期的业务需求无法满足时,可参考如下操作指导。
  • 步骤三:添加伸缩策略 在弹性伸缩组页面,单击“查看伸缩策略”,为伸缩组添加伸缩策略。 设置“添加伸缩策略”参数。 图5 设置“添加伸缩策略”参数 表3 定时策略参数配置 参数 示例 说明 策略名称 as-policy-61b8 创建伸缩策略的名称。 策略类型 定时策略 选择“定时策略”。 时区 GMT+08:00 为默认值:GMT+08:00 代表格林尼治标准时间加8小时,即北京时间。 触发时间 2025/12/03 23:30:00 设定伸缩策略触发时间。本示例中自行设定了触发时间,您需根据需要设置具体的时间。 执行动作 增加2个实例 设置伸缩活动执行动作及实例的个数或实例百分比。需要增加2个实例,执行动作设置为增加2个实例。 执行动作包括:增加、减少、设置为。 冷却时间 300秒 冷却时间是指冷却伸缩活动的时间,单位为秒。 配置完参数后,单击“确定” 。
  • 步骤二:创建弹性伸缩组 本步骤仅针对本示例进行参数设置及介绍,更多创建弹性伸缩组的详细内容请参见伸缩组。 单击“创建弹性伸缩组”,设置“弹性伸缩组”参数。 图3 “弹性伸缩组”参数设置 表2 “弹性伸缩组”参数设置说明 参数 示例 说明 区域 华北-北京四 请就近选择靠近您业务的区域,可减少网络时延,提高访问速度。 更多信息,请参见区域和可用区。 可用区 可用区1、可用区2、可用区3、可用区7 可用区之间内网互通,不同可用区之间物理隔离。 多可用区扩展策略 均衡分布 保证选择的可用区列表中各可用区下云服务器数量均衡。 名称 as-group-test1 伸缩组的名称。 最大实例数(台) 1 伸缩组中运行的最大云服务器的个数。 期望实例数(台) 0 伸缩组中期望运行的云服务器的个数。 最小实例数(台) 0 伸缩组中运行的最小云服务器的个数。 伸缩配置 as-config-3817 步骤一中创建的伸缩配置。 虚拟私有云 vpc-default-smb 使用系统默认创建的VPC和子网。 更多信息,请参见虚拟私有云和子网规划建议。 子网 subnet-default-smb 负载均衡 不使用 可选参数,更多信息,请参见创建伸缩组。 实例移除策略 根据较早创建的配置较早创建的实例 根据“较早创建的配置”较早创建的“实例”优先被移除伸缩组。 弹性公网IP 释放 当云服务器从伸缩组中移除时,会将云服务器上的弹性公网IP释放。 数据盘 删除 当云服务器从伸缩组中移除时,云服务器挂载的数据盘将被删除。 健康检查方式 云服务器健康检查 对云服务器的运行状态进行检查,如果未通过云服务器健康检查,则伸缩组会将该云服务器移出伸缩组。 健康检查间隔 5分钟 伸缩组执行健康检查的周期。 健康状况检查宽限期(秒) 600 伸缩组会等健康状况检查宽限期结束后才检查实例的运行状况。 企业项目 default 伸缩组归属的企业项目,由伸缩组创建的弹性云服务器将归属于此企业项目。 勾选《弹性伸缩免责声明》协议。 单击“立即创建”,完成弹性伸缩组的创建。 单击“返回弹性伸缩组列表”,查看已创建的伸缩组。 图4 查看伸缩组
  • 操作流程 操作步骤 说明 步骤一:创建伸缩配置 配置云服务器的规格、镜像、磁盘等参数。 步骤二:创建弹性伸缩组 配置最大、最小、期望实例数等参数。 步骤三:添加伸缩策略 通过创建伸缩策略调整客户业务资源。 (可选)步骤四:手动添加实例 伸缩组没有正在进行的伸缩活动,为启用状态,且当前实例数小于最大实例数时,才可以添加实例。 (可选)步骤五:查看实例数 伸缩活动触发后,查看伸缩组内当前实例数与期望实例数量是否符合预期设定。
  • 步骤一:创建伸缩配置 本步骤仅针对本示例进行参数设置及介绍,更多创建伸缩配置的详细内容请参见伸缩配置。 登录AS控制台。 单击“创建伸缩配置”,设置“伸缩配置”参数。 图1 “伸缩配置”参数设置 表1 “伸缩配置”参数设置说明 参数 示例 说明 计费模式 按需计费 按云服务的实际使用时长计费,可以随时开通或删除。更多信息,请参见弹性云服务器ECS 计费说明。 区域 华北-北京四 请就近选择靠近您业务的区域,可减少网络时延,提高访问速度。 更多信息,请参见区域和可用区。 名称 as-config-3817 伸缩配置的名称。 配置模板 使用新模板 需要配置伸缩实例的规格、镜像、磁盘等参数。 CPU架构 x86计算 x86采用复杂指令集(CISC)。 规格 s7.xlarge.2 请根据业务需要选择合适的规格。更多信息,请参见弹性云服务器规格清单。 镜像 CentOS 8.2 64bit(40GiB) 华为云提供的Linux类型公共镜像,该镜像免费。 磁盘 通用型SSD 100GiB 伸缩实例自带系统盘,用于存储云服务器的操作系统。 安全组 default 使用系统默认创建的安全组。 弹性公网IP 不使用 如需访问外网,则可以为伸缩实例配置和绑定弹性公网IP。 登录方式 密钥对 选择“登录凭证”方式为“密钥对”。 密钥对 KeyPair-2325 使用已有的密钥对或新建密钥对,并确认已获取密钥对的私钥文件。 高级配置 暂不配置 - 单击“立即创建”,完成伸缩配置的创建。 单击“返回伸缩配置列表”,查看已创建的伸缩配置。 图2 查看伸缩配置
  • 操作场景 当业务需求变化有规律时,您可以在应用系统中添加华为云提供的弹性伸缩,并配置定时策略来实现定时调整资源的目的。当满足伸缩策略的条件时,系统会自动修改期望实例数,从而触发伸缩活动进行资源的扩张和收缩,降低应对业务高峰压力时人为调整资源的工作量,帮助您节约资源和人力成本。 例如:某电商网站运行在华为云提供的一台弹性云服务器上,该电商计划在某日零点进行大型的折扣活动,但高峰期的业务需求无法满足,需要在前一日23:30左右自动向应用系统中增加2台弹性云服务器,可参考如下操作指导。
  • 条件(Condition) 条件(Condition)是身份策略生效的特定条件,包括条件键和运算符。 条件键表示身份策略语句的Condition元素中的键值。根据适用范围,分为全局级条件键和服务级条件键。 全局级条件键(前缀为g:)适用于所有操作,在鉴权过程中,云服务不需要提供用户身份信息,系统将自动获取并鉴权。详情请参见:全局条件键。 服务级条件键(前缀通常为服务缩写,如BSS:)仅适用于对应服务的操作,详情请参见表3。 单值/多值表示API调用时请求中与条件关联的值数。单值条件键在API调用时的请求中最多包含一个值,多值条件键在API调用时请求可以包含多个值。例如:g:SourceVpce是单值条件键,表示仅允许通过某个VPC终端节点发起请求访问某资源,一个请求最多包含一个VPC终端节点ID值。g:TagKeys是多值条件键,表示请求中携带的所有标签的key组成的列表,当用户在调用API请求时传入标签可以传入多个值。 运算符与条件键、条件值一起构成完整的条件判断语句,当请求信息满足该条件时,身份策略才能生效。支持的运算符请参见:运算符。 BSS定义了以下可以在身份策略的Condition元素中使用的条件键,您可以使用这些条件键进一步细化身份策略语句应用的条件。 表3 BSS支持的服务级条件键 服务级条件键 类型 单值/多值 说明 billing:cloudServiceType string 多值 根据请求参数中云服务的类型,过滤访问。常见问题 条件键示例 billing:cloudServiceType 示例:表示仅支持退订hws.service.type.ebs云服务资源订单 { "Version": "5.0", "Statement": [{ "Effect": "Allow", "Action": [ "billing:subscription:unsubscribe" ], "Condition": { "ForAnyValue:StringEquals": { "billing:cloudServiceType": [ "hws.service.type.ebs" ] } } }] }
  • 操作(Action) 操作(Action)即为身份策略中支持的授权项。 “访问级别”列描述如何对操作进行分类(list、read和write等)。此分类可帮助您了解在策略中相应操作对应的访问级别。 “资源类型”列指每个操作是否支持资源级权限。 资源类型支持通配符号*表示所有。如果此列没有值(-),则必须在策略语句的Resource元素中指定所有资源类型(“*”)。 如果该列包含资源类型,则必须在具有该操作的语句中指定该资源的URN。 资源类型列中必需资源在表中用星号(*)标识,表示使用此操作必须指定该资源类型。 关于BSS 定义的资源类型的详细信息请参见资源类型(Resource)。 “条件键”列包括了可以在策略语句的Condition元素中支持指定的键值。 如果该授权项资源类型列存在值,则表示条件键仅对列举的资源类型生效。 如果该授权项资源类型列没有值(-),则表示条件键对整个授权项生效。 如果此列条件键没有值(-),表示此操作不支持指定条件键。 关于BSS 定义的条件键的详细信息请参见条件(Condition)。 “别名”列包括了可以在身份策略中配置的策略授权项。通过这些授权项,可以控制支持策略授权的API访问。详细信息请参见身份策略兼容性说明。 您可以在身份策略语句的Action元素中指定以下API的相关操作。 billing:contract:viewDiscount 授权项仅影响响应中的折扣信息返回。即使没有该权限,接口仍可正常调用,但响应中将不返回折扣信息。 表1 BSS 支持的授权项 授权项 描述 访问级别 资源类型(*为必须) 条件键 别名 billing:contract:viewDiscount 授予查看商务折扣的权限 read - - - billing:balance:view 授予查看收支明细,付款历史记录,消费配额,调账记录,欠费查询的权限 list - - - billing:coupon:view 授予查看优惠券、储值卡、激活代金券的权限 read - - - billing:order:view 授予查看订单信息、查看按需套餐包的权限 list - - - billing:order:pay 授予支付订单的权限 write - - - billing:subscription:view 授予查看续费管理信息,查询可按需转包年/包月资源列表的权限。 read - - - billing:subscription:renew 授予续费、设置自动续费、设置到期策略、按需转包年/包月的权限 write - - - billing:subscription:unsubscribe 授予查看可退订资源,退订资源,取消发货,硬件退换货的权限 write - - - billing:resourcePackages:view 授予查看资源包,剩余量汇总,使用明细查询/导出的权限 list - - - billing:billDetail:view 授予查看账单明细的权限 read - - - billing:bill:view 授予查看账单、本月消费、近7天扣费资源,消费走势的权限 list - - - costCenter:costDetail:listCostDetails 授予查询成本明细的权限。 read - - - costCenter:costAnalysis:listCosts 授予查看成本分析的权限 read - - - Billing::activeEPFinance 授予开通企业项目功能的权限 write - - - businessUnitCenter:businessUnit:view 授予查看组织与账号的权限 read - - - businessUnitCenter:businessUnitFinance:view 授予查看企业组织财务信息的权限 read - - - businessUnitCenter:businessUnitFinance:update 授予修改企业组织财务信息的权限 write - - - BSS的API通常对应着一个或多个授权项。表 API与授权项的关系展示了API与授权项的关系,以及该API需要依赖的授权项。 细粒度鉴权失败情况下,响应字段encoded_authorization_message的值需要调安全令牌服务STS提供的接口解密后才能查看。解密接口的APIE地址:解密鉴权失败的原因。 注意:调用者需要有 sts::decodeAuthorizationMessage 的权限才在APIE调用解密接口,否则报错:STS5.1001。 表2 API与授权项的关系 场景 子场景 接口名称 接口URL(API) 对应的授权项 授权项名称 依赖的授权项 管理产品 查询商品价格 查询按需产品价格 POST /v2/bills/ratings/on-demand-resources billing:contract:viewDiscount 查看折扣、价格信息。 - 查询包年/包月产品价格 POST /v2/bills/ratings/period-resources/subscribe-rate billing:contract:viewDiscount 查看折扣、价格信息 - 查询包年/包月资源的续订金额 POST /v2/bills/ratings/period-resources/renew-rate billing:contract:viewDiscount 查看折扣、价格信息。 - 管理账户 管理账户 查询账户余额 GET /v2/accounts/customer-accounts/balances billing:balance:view 查看账户信息。 - 查询储值卡列表 GET /v2/promotions/benefits/stored-value-cards billing:coupon:view 查看优惠券、现金券、代金券。 - 查询收支明细 GET /v2/accounts/customer-accounts/account-change-records billing:balance:view 查看账户信息。 - 管理交易 管理优惠券 查询优惠券列表 GET /v2/promotions/benefits/coupons billing:coupon:view 查看优惠券、现金券、代金券。 - 查询优惠券收支明细 GET /v2/promotions/benefits/account-change-records billing:balance:view 查看账户信息。 - 管理包年/包月订单 查询订单列表 GET /v2/orders/customer-orders billing:order:view 查看订单信息。 - 查询订单详情 GET /v2/orders/customer-orders/details/{order_id} billing:order:view 查看订单信息。 - 查询订单可用优惠券 GET /v2/orders/customer-orders/order-coupons billing:order:view 查看订单信息。 - 查询订单可用折扣 GET /v2/orders/customer-orders/order-discounts billing:contract:viewDiscount 查看折扣、价格信息。 - 支付包年/包月产品订单 POST /v3/orders/customer-orders/pay billing:order:pay 订单支付。 - 查询退款订单的金额详情 GET /v2/orders/customer-orders/refund-orders billing:order:view 查看订单信息。 - 管理包年/包月资源 查询客户包年/包月资源列表 POST /v2/orders/suscriptions/resources/query billing:subscription:view billing:order:view(待下线) 查看订单信息。 - 续订包年/包月资源 POST /v2/orders/subscriptions/resources/renew billing:subscription:renew 下单、取消订单、修改收货地址。 - 退订包年/包月资源 POST /v2/orders/subscriptions/resources/unsubscribe billing:subscription:unsubscribe 下单、取消订单、修改收货地址。 云服务粒度退订鉴权常见问题 - 设置包年/包月资源自动续费 POST /v2/orders/subscriptions/resources/autorenew/{resource_id} billing:subscription:renew 下单、取消订单、修改收货地址。 - 取消包年/包月资源自动续费 DELETE /v2/orders/subscriptions/resources/autorenew/{resource_id} billing:subscription:renew 下单、取消订单、修改收货地址。 - 设置或取消包年/包月资源到期转按需 POST /v2/orders/subscriptions/resources/to-on-demand billing:subscription:renew 下单、取消订单、修改收货地址。 - 设置包年/包月资源自动续费扣款日和续费后资源统一到期日 POST /v2/orders/subscriptions/resources/renew/config billing:subscription:renew 下单、取消订单、修改收货地址。 - 管理资源包 查询资源包列表 POST /v3/payments/free-resources/query billing:resourcePackages:view 查看账单、月度成本、用量明细、成本管理、收支以及总览页面的费用走势。 - 查询资源包使用明细 GET /v2/bills/customer-bills/free-resources-usage-records billing:resourcePackages:view billing:billDetail:view(待下线) 查看消费明细、资源消费、账单分析、付款历史记录。 - 查询资源包使用量 POST /v2/payments/free-resources/usages/details/query billing:resourcePackages:view 查看账单、月度成本、用量明细、成本管理、收支以及总览页面的费用走势。 - 管理账单 管理账单 查询资源详单 POST /v2/bills/customer-bills/res-records/query billing:billDetail:view 查看消费明细、资源消费、账单分析、付款历史记录。 - 查询汇总账单 GET /v2/bills/customer-bills/monthly-sum billing:bill:view 查看账单、月度成本、用量明细、成本管理、收支以及总览页面的费用走势。 - 查询资源消费记录 GET /v2/bills/customer-bills/res-fee-records billing:billDetail:view billing:bill:view(待下线) 查看账单、月度成本、用量明细、成本管理、收支以及总览页面的费用走势。 - 查询流水账单 GET /v2/bills/customer-bills/fee-records billing:billDetail:view billing:bill:view(待下线) 查看账单、月度成本、用量明细、成本管理、收支以及总览页面的费用走势。 - 查询95计费资源用量 查询95计费资源用量明细 GET /v2/bills/customer-bills/resources/usage/details billing:billDetail:view 查看消费明细、资源消费、账单分析、付款历史记录。 - 查询95计费资源用量汇总 GET /v2/bills/customer-bills/resources/usage/summary billing:resourcePackages:view 查看账单、月度成本、用量明细、成本管理、收支以及总览页面的费用走势。 - 管理成本 管理成本 查询月度成本 GET /v2/costs/cost-analysed-bills/monthly-breakdown costCenter:costDetail:listCostDetails costCenter:costAnalysis:listCosts(待下线) 查看成本分析。 - 查询成本数据 POST /v4/costs/cost-analysed-bills/query costCenter:costAnalysis:listCosts 查看成本分析。 - 管理企业 管理企业项目 开通客户企业项目权限 POST /v2/enterprises/enterprise-projects/authority Billing::activeEPFinance 开通企业项目功能。 - 管理企业多账号 查询企业子账号列表 GET /v2/enterprises/multi-accounts/sub-customers businessUnitCenter:businessUnit:view 企业中心组织与账号查看权限。 - 查询企业组织结构 GET /v2/enterprises/multi-accounts/enterprise-organizations businessUnitCenter:businessUnit:view 企业中心组织与账号查看权限。 - 查询企业主的可拨款余额 GET /v2/enterprises/multi-accounts/transfer-amount businessUnitCenter:businessUnitFinance:view 查看企业组织财务信息。 - 查询企业子账号可回收余额 GET /v2/enterprises/multi-accounts/retrieve-amount businessUnitCenter:businessUnitFinance:view 查看企业组织财务信息。 - 创建企业子账号 POST /v2/enterprises/multi-accounts/sub-customers businessUnitCenter:businessUnit:view 修改企业组织与子账号 - 企业主账号向企业子账号拨款 POST /v2/enterprises/multi-accounts/transfer-amount businessUnitCenter:businessUnitFinance:update 修改企业组织财务信息。 - 企业主账号从企业子账号回收余额 POST /v2/enterprises/multi-accounts/retrieve-amount businessUnitCenter:businessUnitFinance:update 修改企业组织财务信息。 - 查询企业主账号可拨款优惠券列表 GET /v2/enterprises/multi-accounts/transfer-coupons businessUnitCenter:businessUnitFinance:view 查看企业组织财务信息 - 查询企业子账号可回收优惠券列表 GET /v2/enterprises/multi-accounts/retrieve-coupons businessUnitCenter:businessUnitFinance:view 查看企业组织财务信息 - 企业主账号向企业子账号拨款优惠券 POST v2/enterprises/multi-accounts/transfer-coupon businessUnitCenter:businessUnitFinance:update 修改企业组织财务信息 - 企业主账号从企业子账号回收优惠券 POST /v2/enterprises/multi-accounts/retrieve-coupon businessUnitCenter:businessUnitFinance:update 修改企业组织财务信息 -
  • 操作(Action) 操作(Action)即为身份策略中支持的授权项。 “访问级别”列描述如何对操作进行分类(List、Read和Write等)。此分类可帮助您了解在身份策略中相应操作对应的访问级别。 “资源类型”列指每个操作是否支持资源级权限。 资源类型支持通配符号*表示所有。如果此列没有值(-),则必须在身份策略语句的Resource元素中指定所有资源类型(“*”)。 如果该列包含资源类型,则必须在具有该操作的语句中指定该资源的URN。 资源类型列中必需资源在表中用星号(*)标识,表示使用此操作必须指定该资源类型。 关于AAD定义的资源类型的详细信息请参见资源类型(Resource)。 “条件键”列包括了可以在身份策略语句的Condition元素中支持指定的键值。 如果该授权项资源类型列存在值,则表示条件键仅对列举的资源类型生效。 如果该授权项资源类型列没有值(-),则表示条件键对整个授权项生效。 如果此列条件键没有值(-),表示此操作不支持指定条件键。 关于AAD定义的条件键的详细信息请参见条件(Condition)。 “别名”列包括了可以在身份策略中配置的策略授权项。通过这些授权项,可以控制支持策略授权的API访问。详细信息请参见身份策略兼容性说明。 您可以在身份策略语句的Action元素中指定以下AAD的相关操作。 表1 AAD支持的授权项 授权项 描述 访问级别 资源类型(*为必须) 条件键 别名 aad:alarmConfig:create 授予创建告警设置的权限。 Write alarmConfig * - - aad:alarmConfig:put 授予修改告警设置的权限。 Write alarmConfig * - - aad:alarmConfig:get 授予查询告警设置的权限。 Read alarmConfig * - - aad:alarmConfig:delete 授予删除告警设置的权限。 Write alarmConfig * - - aad:certificate:delete 授予删除证书的权限。 Write certificate * - - aad:certificate:list 授予查询证书列表的权限。 List certificate * - - aad:certificate:set 授予修改域名对应证书的权限。 Write certificate * - - domain * g:EnterpriseProjectId aad:dashboard:delete 授予删除报表日志配置的权限。 Write - - - aad:dashboard:get 授予获取报表数据和日志配置的权限。 Read - - - aad:dashboard:set 授予修改报表日志配置的权限。 Write - - - aad:domain:create 授予添加防护域名的权限。 Write domain * g:EnterpriseProjectId - aad:domain:delete 授予删除防护域名的权限。 Write domain * g:EnterpriseProjectId - aad:domain:get 授予查询防护域名详情的权限。 Read domain * g:EnterpriseProjectId - aad:domain:list 授予查询域名列表的权限。 List domain * g:EnterpriseProjectId - aad:domain:put 授予修改域名防护属性的权限。 Write domain * g:EnterpriseProjectId - aad:forwardingRule:create 授予添加转发规则的权限。 Write forwardingRule * g:EnterpriseProjectId - aad:forwardingRule:delete 授予删除转发规则的权限。 Write forwardingRule * g:EnterpriseProjectId - aad:forwardingRule:get 授予查询转发规则的权限。 Read forwardingRule * g:EnterpriseProjectId - aad:forwardingRule:list 授予导出转发规则的权限。 List forwardingRule * g:EnterpriseProjectId - aad:forwardingRule:put 授予修改转发规则中的回源IP的权限。 Write forwardingRule * g:EnterpriseProjectId - aad:instance:create 授予创建实例的权限。 Write instance * g:EnterpriseProjectId - aad:instance:get 授予查询实例属性的权限。 Read instance * g:EnterpriseProjectId - aad:instance:list 授予查询实例列表的权限。 List instance * g:EnterpriseProjectId - aad:instance:put 授予修改实例属性的权限。 Write instance * g:EnterpriseProjectId - aad:policy:create 授予添加防护规则的权限。 Write policy * g:EnterpriseProjectId - aad:policy:delete 授予删除防护规则的权限。 Write policy * g:EnterpriseProjectId - aad:policy:get 授予查询防护规则详情的权限。 Read policy * g:EnterpriseProjectId - aad:policy:list 授予查询防护规则列表的权限。 List policy * g:EnterpriseProjectId - aad:policy:put 授予修改防护规则的权限。 Write policy * g:EnterpriseProjectId - aad:quotas:get 授予查询防护规格的权限。 Read - - - aad:whiteBlackIpRule:create 授予添加防护黑白名单的权限。 Write whiteBlackIpRule * g:EnterpriseProjectId - aad:whiteBlackIpRule:delete 授予删除防护黑白名单的权限。 Write whiteBlackIpRule * g:EnterpriseProjectId - aad:whiteBlackIpRule:list 授予查询防护黑白名单列表的权限。 List whiteBlackIpRule * g:EnterpriseProjectId - aad:protectedIp:put 授予修改防护对象标签的权限。 Write - - - aad:protectedIp:list 授予查询防护对象列表的权限。 List - - - aad:package:put 授予修改防护包的权限。 Write package * - - aad:package:list 授予查询防护包列表的权限。 List package * - - aad:block:put 授予解封IP的权限。 Write - - - aad:block:list 授予查询封堵ip列表的权限。 List - - - aad:block:get 授予查询封堵和解封信息的权限。 Read - - - AAD的API通常对应着一个或多个授权项。表2展示了API与授权项的关系,以及该API需要依赖的授权项。 表2 API与授权项的关系 API 对应的授权项 依赖的授权项 POST /v1/{project_id}/cad/alart/config aad:alarmConfig:create - POST /v1/cnad/alarm-config aad:alarmConfig:put - DELETE /v1/cnad/alarm-config aad:alarmConfig:delete - GET /v1/{project_id}/cad/alart/list aad:alarmConfig:get - GET /v1/cnad/alarm-config aad:alarmConfig:get - DELETE /v1/aad/certificate/del aad:certificate:delete - GET /v1/{project_id}/cad/domains/certificatelist aad:certificate:list - GET /v1/aad/certificate-details aad:certificate:list - POST /v1/{project_id}/cad/domains/certificate aad:certificate:set - POST /v1/aad/configs/lts/delete aad:dashboard:delete - GET /v1/{project_id}/cad/ddosinfo/events_type aad:dashboard:get - GET /v1/aad/configs/lts_region aad:dashboard:get - GET /v1/aad/configs/lts aad:dashboard:get - GET /v1/{project_id}/waf/event/timeline aad:dashboard:get - GET /v1/{project_id}/waf/event/request/peak aad:dashboard:get - GET /v1/{project_id}/waf/event/attack/type aad:dashboard:get - GET /v1/{project_id}/waf/event/attack/source/num aad:dashboard:get - GET /v1/{project_id}/waf/event/attack/source aad:dashboard:get - GET /v1/{project_id}/cad/instances/flow_pps aad:dashboard:get - GET /v1/{project_id}/cad/instances/flow_bps aad:dashboard:get - GET /v1/{project_id}/cad/instances/events aad:dashboard:get - GET /v1/{project_id}/cad/ddosinfo/peak aad:dashboard:get - POST /v1/aad/configs/lts aad:dashboard:set - POST /v1/{project_id}/aad/domains aad:domain:create - POST /v1/{project_id}/cad/domains/del aad:domain:delete - GET /v1/{project_id}/aad/domains/{domain_id}/service-config aad:domain:get - GET /v1/{project_id}/cad/domains/ports aad:domain:list - GET /v1/{project_id}/cad/domains/name aad:domain:get - GET /v1/{project_id}/cad/domains/line/{enterprise_project_id} aad:domain:list - GET /v1/{project_id}/cad/domains/instances aad:domain:get - GET /v1/{project_id}/cad/domains/brief aad:domain:get - GET /v1/{project_id}/aad/domains/waf-list aad:domain:list - GET /v1/{project_id}/cad/domains aad:domain:list - POST /v1/{project_id}/aad/domains/{domain_id}/service-config aad:domain:put - POST /v1/{project_id}/cad/domains/switch aad:domain:put - POST /v1/{project_id}/cad/domains/cnameDispatchSwitch aad:domain:put - POST /v1/{project_id}/cad/domains/cname/switch aad:domain:put - POST /v1/{project_id}/cad/instances/protocol_rule aad:forwardingRule:create - POST /v1/{project_id}/cad/instances/protocol_rule/import aad:forwardingRule:create - DELETE /v1/{project_id}/cad/instances/protocol_rule/{rule_id} aad:forwardingRule:delete - POST /v1/{project_id}/cad/instances/protocol_rule/batchdel aad:forwardingRule:delete - GET /v1/{project_id}/cad/instances/rules aad:forwardingRule:get - GET /v1/{project_id}/cad/instances/protocol_rule/export aad:forwardingRule:list - PUT /v1/{project_id}/cad/instances/protocol_rule/{rule_id} aad:forwardingRule:put - POST /v1/{project_id}/cad/instances/cad_open aad:instance:create - GET /v1/{project_id}/cad/products aad:instance:create - GET /v1/{project_id}/{resource_type}/{resource_id}/tags aad:instance:get - GET /v1/{project_id}/cad/upgradeproducts/{instance_id} aad:instance:get - GET /v1/{project_id}/cad/instances/detail/{instance_id} aad:instance:get - GET /v1/{project_id}/aad/instances/brief-list aad:instance:list - GET /v1/{project_id}/cad/sourceip aad:instance:list - GET /v1/{project_id}/cad/instances aad:instance:list - POST /v1/{project_id}/{resource_type}/{resource_id}/tags/action aad:instance:put - POST /v1/{project_id}/cad/instances/cad_spec_upgrade aad:instance:put - PUT /v1/{project_id}/cad/instances/{instance_id}/name aad:instance:put - PUT /v1/{project_id}/cad/instances/{instance_id}/elastic/{ip_id} aad:instance:put - POST /v1/{project_id}/aad/policies/waf/cc aad:policy:create - POST /v1/cnad/policies aad:policy:create - DELETE /v1/{project_id}/aad/policies/waf/cc/{rule_id} aad:policy:delete - DELETE /v1/cnad/policies/{policy_id} aad:policy:delete - GET /v1/{project_id}/cad/flowblock aad:policy:get - GET /v1/cnad/policies/{policy_id} aad:policy:get - GET /v1/{project_id}/aad/policies/waf/cc aad:policy:list - GET /v1/cnad/policies aad:policy:list - PUT /v1/{project_id}/aad/policies/waf/cc/{rule_id} aad:policy:put - POST /v1/{project_id}/cad/flowblock/udp aad:policy:put - POST /v1/{project_id}/cad/flowblock/foreign aad:policy:put - POST /v1/cnad/policies/{policy_id}/ip-list/add aad:policy:put - POST /v1/cnad/policies/{policy_id}/bind aad:policy:put - POST /v1/cnad/policies/{policy_id}/ip-list/delete aad:policy:put - POST /v1/cnad/policies/{policy_id}/unbind aad:policy:put - PUT /v1/cnad/policies/{policy_id} aad:policy:put - GET /v1/{project_id}/aad/quotas/domain-port aad:quotas:get - GET /v1/{project_id}/scc/waf/quota aad:quotas:get - GET /v1/{project_id}/cad/quotas aad:quotas:get - GET /v1/{project_id}/cad/ip/quotas aad:quotas:get - GET /v1/{project_id}/cad/bwlist/quota aad:quotas:get - GET /v1/{project_id}/aad/user-configs aad:quotas:get - POST /v1/{project_id}/cad/bwlist aad:whiteBlackIpRule:create - POST /v1/{project_id}/cad/bwlist/delete aad:whiteBlackIpRule:delete - GET /v1/{project_id}/cad/bwlist aad:whiteBlackIpRule:list - PUT /v1/cnad/protected-ips/tags aad:protectedIp:put - GET /v1/cnad/protected-ips aad:protectedIp:list - POST /v1/cnad/packages/{package_id}/protected-ips aad:package:put - PUT /v1/cnad/packages/{package_id}/name aad:package:put - GET /v1/cnad/packages aad:package:list - GET /v1/cnad/packages/{package_id}/unbound-protected-ips aad:package:list - POST /v1/unblockservice/{domain_id}/unblock aad:block:put - GET /v1/unblockservice/{domain_id}/block-list aad:block:list - GET /v1/unblockservice/{domain_id}/unblock-quota-statistics aad:block:get - GET /v1/unblockservice/{domain_id}/block-statistics aad:block:get - GET /v1/unblockservice/{domain_id}/unblock-record aad:block:get - GET /v1/{project_id}/cad/instances/{instance_id}/elastic_count/{ip_id} aad:instance:get - GET /v1/{project_id}/cad/instances/{data_center}/elastic/{line}/{ip_id} aad:instance:get - GET /v1/aad/remain-vip-number aad:quotas:get - GET /v1/aad/instance/connection-num aad:dashboard:get - PUT /v1/{project_id}/cad/instances/{instance_id}/pp-switch aad:instance:put - GET /v1/aad-service/ces/{domain_id}/dims-info aad:instance:list - GET /v1/aad-service/ces/v2/{domain_id}/instances aad:instance:list - GET /v1/{project_id}/cad/instances/security-statistics aad:instance:list - GET /v1/aad/domain/instances/rules aad:domain:list - POST /v1/aad/policy/modify aad:policy:put - POST /v1/aad/geoip aad:policy:put - GET /v1/aad/geoip aad:policy:get - DELETE /v1/aad/geoip/{ruleId} aad:policy:delete - PUT /v1/aad/geoip/{ruleId} aad:policy:put - POST /v1/aad/whiteip aad:policy:put - GET /v1/aad/whiteip aad:policy:get - DELETE /v1/aad/whiteip aad:policy:delete - POST /v1/aad/custom aad:policy:put - GET /v1/aad/custom aad:policy:get - PUT /v1/aad/custom/{ruleId} aad:policy:put - DELETE /v1/aad/custom/{ruleId} aad:policy:delete - GET /v1/aad/policy/details aad:policy:get - POST /v1/aad/cc/intelligent/modify aad:policy:put - GET /v1/aad/geoip/map aad:policy:get -
  • 条件(Condition) 条件键概述 条件(Condition)是身份策略生效的特定条件,包括条件键和运算符。 条件键表示身份策略语句的Condition元素中的键值。根据适用范围,分为全局级条件键和服务级条件键。 全局级条件键(前缀为g:)适用于所有操作,在鉴权过程中,云服务不需要提供用户身份信息,系统将自动获取并鉴权。详情请参见:全局条件键。 服务级条件键(前缀通常为服务缩写,如swr:)仅适用于对应服务的操作,详情请参见表4。 单值/多值表示API调用时请求中与条件关联的值数。单值条件键在API调用时的请求中最多包含一个值,多值条件键在API调用时请求可以包含多个值。例如:g:SourceVpce是单值条件键,表示仅允许通过某个VPC终端节点发起请求访问某资源,一个请求最多包含一个VPC终端节点ID值。g:TagKeys是多值条件键,表示请求中携带的所有标签的key组成的列表,当用户在调用API请求时传入标签可以传入多个值。 运算符与条件键、条件值一起构成完整的条件判断语句,当请求信息满足该条件时,身份策略才能生效。支持的运算符请参见:运算符。 SWR支持的服务级条件键 SWR定义了以下可以在自定义身份策略的Condition元素中使用的条件键,您可以使用这些条件键进一步细化身份策略语句应用的条件。 表4 SWR支持的服务级条件键 服务级条件键 类型 单值/多值 说明 swr:TargetOrgPath string 单值 按照共享目标账号所处的组织路径进行权限控制。 swr:TargetOrgId string 单值 按照共享目标账号所处的组织Id进行权限控制。 swr:TargetAccountId string 单值 按照共享目标账号Id进行权限控制。 swr:AllowPublicAccess boolean 单值 对镜像是否可以公开进行权限控制。 swr:TargetRegion string 单值 根据目标区域进行权限控制。 swr:AllowCredentialType string 单值 根据登录指令类型(长期登录指令,临时登录指令)进行权限控制。 swr:RepositoryIsPublic boolean 单值 根据镜像是否为公开镜像进行权限控制。
  • 操作(Action) 操作(Action)即为身份策略中支持的授权项。 “访问级别”列描述如何对操作进行分类(List、Read和Write等)。此分类可帮助您了解在身份策略中相应操作对应的访问级别。 “资源类型”列指每个操作是否支持资源级权限。 资源类型支持通配符号*表示所有。如果此列没有值(-),则必须在身份策略语句的Resource元素中指定所有资源类型(“*”)。 如果该列包含资源类型,则必须在具有该操作的语句中指定该资源的URN。 资源类型列中必需资源在表中用星号(*)标识,表示使用此操作必须指定该资源类型。 关于SWR定义的资源类型的详细信息请参见资源类型(Resource)。 “条件键”列包括了可以在身份策略语句的Condition元素中支持指定的键值。 如果该授权项资源类型列存在值,则表示条件键仅对列举的资源类型生效。 如果该授权项资源类型列没有值(-),则表示条件键对整个授权项生效。 如果此列条件键没有值(-),表示此操作不支持指定条件键。 关于SWR定义的条件键的详细信息请参见条件(Condition)。 “别名”列包括了可以在身份策略中配置的策略授权项。通过这些授权项,可以控制支持策略授权的API访问。详细信息请参见身份策略兼容性说明。 您可以在身份策略语句的Action元素中指定以下SWR的相关操作。 表1 SWR支持的授权项 授权项 描述 访问级别 资源类型(*为必须) 条件键 别名 swr:namespace:createNamespace 授予基础版仓库创建组织的权限。 Write namespace * - - swr:namespace:deleteNamespace 授予基础版仓库删除组织的权限。 Write namespace * - - swr:namespace:listNamespaces 授予基础版仓库查询组织列表的权限。 List namespace * - - swr:namespace:getNamespace 授予基础版仓库获取组织详情的权限。 Read namespace * - - swr:repo:createRepo 授予基础版仓库创建镜像仓库的权限。 Write repo * - - - swr:AllowPublicAccess swr:repo:deleteRepo 授予基础版仓库删除镜像仓库的权限。 Write repo * - - swr:repo:listRepos 授予基础版仓库查询镜像仓库列表的权限。 List repo * - - swr:repo:listSharedRepos 授予基础版仓库查询共享镜像列表的权限。 List repo * - - swr:repo:getRepo 授予基础版仓库查询镜像仓库概要信息的权限。 Read repo * - - swr:repo:updateRepo 授予基础版仓库更新镜像仓库的概要信息的权限。 Write repo * - - - swr:AllowPublicAccess swr:repo:deleteRepoTag 授予基础版仓库删除镜像仓库中指定版本的镜像的权限。 Write repo * - - swr:repo:createRepoTag 授予基础版仓库创建镜像版本的权限。 Write repo * - - swr:repo:listRepoTags 授予基础版仓库查询镜像版本列表的权限。 List repo * - - swr:repo:createRepoDomain 授予基础版仓库创建共享账号的权限。 Permission_management repo * - - - swr:TargetAccountId swr:TargetOrgPath swr:TargetOrgId swr:repo:deleteRepoDomain 授予基础版仓库删除共享账号的权限。 Permission_management repo * - - swr:repo:listRepoDomains 授予基础版仓库获取共享账号列表的权限。 List repo * - - swr:repo:getRepoDomain 授予基础版仓库判断共享账号是否存在的权限。 Read repo * - - swr:repo:updateRepoDomain 授予基础版仓库更新共享账号的权限。 Permission_management repo * - - swr:repo:createRepoShare 授予基础版仓库创建镜像共享规则的权限。 Permission_management repo * - - - swr:TargetAccountId swr:TargetOrgPath swr:TargetOrgId swr:repo:deleteRepoShare 授予基础版仓库删除镜像共享规则的权限。 Permission_management repo * - - swr:repo:listRepoShares 授予基础版仓库获取镜像共享规则列表的权限。 List repo * - - swr:repo:getRepoShare 授予基础版仓库查看镜像共享规则的权限。 Read repo * - - swr:repo:updateRepoShare 授予基础版仓库更新镜像共享规则的权限。 Permission_management repo * - - swr:repo:createAutoSyncRepoJob 授予基础版仓库创建镜像自动同步任务的权限。 Write repo * - - - swr:TargetRegion swr:repo:createManualSyncRepoJob 授予基础版仓库手动同步镜像的权限。 Write repo * - - - swr:TargetRegion swr:repo:deleteAutoSyncRepoJob 授予基础版仓库删除镜像自动同步任务的权限。 Write repo * - - swr:repo:listAutoSyncRepoJobs 授予基础版仓库获取镜像自动同步任务列表的权限。 List repo * - - swr:repo:getSyncRepoJobInfo 授予基础版仓库获取镜像自动同步任务信息的权限。 Read repo * - - swr:repo:createTrigger 授予基础版仓库创建触发器的权限。 Write repo * - - swr:repo:deleteTrigger 授予基础版仓库删除触发器的权限。 Write repo * - - swr:repo:listTriggers 授予基础版仓库获取镜像仓库下的触发器列表的权限。 List repo * - - swr:repo:getTrigger 授予基础版仓库获取触发器详情的权限。 Read repo * - - swr:repo:updateTrigger 授予基础版仓库更新触发器配置的权限。 Write repo * - - swr:repo:createRetention 授予基础版仓库创建镜像老化规则的权限。 Write repo * - - swr:repo:deleteRetention 授予基础版仓库删除镜像老化规则的权限。 Write repo * - - swr:repo:listRetentionHistories 授予基础版仓库获取镜像老化记录的权限。 List repo * - - swr:repo:listRetentions 授予基础版仓库获取镜像老化规则列表的权限。 List repo * - - swr:repo:getRetention 授予基础版仓库获取镜像老化规则记录的权限。 Read repo * - - swr:repo:updateRetention 授予基础版仓库修改镜像老化规则的权限。 Write repo * - - swr::createLoginSecret 授予基础版仓库生成临时登录指令的权限。 Write - - - swr::createAuthorizationToken 授予基础版仓库生成新的临时登录指令的权限。 Write - - - swr::listQuotas 授予基础版仓库获取配额信息的权限。 List - - - swr::getDomainOverview 授予基础版仓库获取租户总览信息的权限。 Read - - - swr::getDomainResourceReports 授予基础版仓库获取租户资源统计信息的权限。 Read - - - swr:namespace:multipartUpload 授予基础版仓库分段上传镜像的权限。 Write namespace * - - swr:namespace:createNamespaceAccess 授予基础版仓库创建组织权限的权限。 Permission_management namespace * - - swr:namespace:deleteNamespaceAccess 授予基础版仓库删除组织权限的权限。 Permission_management namespace * - - swr:namespace:getNamespaceAccess 授予基础版仓库查询组织权限的权限。 Read namespace * - - swr:namespace:updateNamespaceAccess 授予基础版仓库更新组织权限的权限。 Permission_management namespace * - - swr:repo:createRepoAccess 授予基础版仓库创建镜像权限的权限。 Permission_management repo * - - swr:repo:deleteRepoAccess 授予基础版仓库删除镜像权限的权限。 Permission_management repo * - - swr:repo:getRepoAccess 授予基础版仓库查询镜像权限的权限。 Read repo * - - swr:repo:updateRepoAccess 授予基础版仓库更新镜像权限的权限。 Permission_management repo * - - swr:repo:upload 授予基础版仓库上传镜像的权限。 Write repo * - - - swr:AllowCredentialType swr:repo:download 授予基础版仓库下载镜像的权限。 Read repo * swr:RepositoryIsPublic - - swr:AllowCredentialType swr:repo:getRepoTag 授予基础版仓库查询镜像仓库中指定版本的镜像的权限。 Read repo * - - SWR的API通常对应着一个或多个授权项。表2展示了API与授权项的关系,以及该API需要依赖的授权项。 表2 API与授权项的关系 API 对应的授权项 依赖的授权项 POST /v2/manage/namespaces swr:namespace:createNamespace - DELETE /v2/manage/namespaces/{namespace} swr:namespace:deleteNamespace - GET /v2/manage/namespaces swr:namespace:listNamespaces - GET /v2/manage/namespaces/{namespace} swr:namespace:getNamespace - POST /v2/manage/namespaces/{namespace}/repos swr:repo:createRepo - DELETE /v2/manage/namespaces/{namespace}/repos/{repository} swr:repo:deleteRepo - GET /v2/manage/repos swr:repo:listRepos - GET /v2/manage/shared-repositories swr:repo:listSharedRepos - GET /v2/manage/namespaces/{namespace}/repos/{repository} swr:repo:getRepo - PATCH /v2/manage/namespaces/{namespace}/repos/{repository} swr:repo:updateRepo - DELETE /v2/manage/namespaces/{namespace}/repos/{repository}/tags/{tag} swr:repo:deleteRepoTag - POST /v2/manage/namespaces/{namespace}/repos/{repository}/tags swr:repo:createRepoTag - GET /v2/manage/namespaces/{namespace}/repos/{repository}/tags swr:repo:listRepoTags - POST /v2/manage/namespaces/{namespace}/repositories/{repository}/access-domains swr:repo:createRepoDomain - DELETE /v2/manage/namespaces/{namespace}/repositories/{repository}/access-domains/{access_domain} swr:repo:deleteRepoDomain - GET /v2/manage/namespaces/{namespace}/repositories/{repository}/access-domains swr:repo:listRepoDomains - GET /v2/manage/namespaces/{namespace}/repositories/{repository}/access-domains/{access_domain} swr:repo:getRepoDomain - PATCH /v2/manage/namespaces/{namespace}/repositories/{repository}/access-domains/{access_domain} swr:repo:updateRepoDomain - POST /v2/manage/namespaces/{namespace}/repos/{repository}/shares swr:repo:createRepoShare - DELETE /v2/manage/namespaces/{namespace}/repos/{repository}/shares/{share_id} swr:repo:deleteRepoShare - GET /v2/manage/namespaces/{namespace}/repos/{repository}/shares swr:repo:listRepoShares - GET /v2/manage/namespaces/{namespace}/repos/{repository}/shares/{share_id} swr:repo:getRepoShare - PATCH /v2/manage/namespaces/{namespace}/repos/{repository}/shares/{share_id} swr:repo:updateRepoShare - POST /v2/manage/namespaces/{namespace}/repos/{repository}/sync_repo swr:repo:createAutoSyncRepoJob swr::createLoginSecret swr:repo:download swr:repo:upload POST /v2/manage/namespaces/{namespace}/repos/{repository}/sync_images swr:repo:createManualSyncRepoJob swr::createLoginSecret swr:repo:download swr:repo:upload DELETE /v2/manage/namespaces/{namespace}/repos/{repository}/sync_repo swr:repo:deleteAutoSyncRepoJob - GET /v2/manage/namespaces/{namespace}/repos/{repository}/sync_repo swr:repo:listAutoSyncRepoJobs - GET /v2/manage/namespaces/{namespace}/repos/{repository}/sync_job swr:repo:getSyncRepoJobInfo - POST /v2/manage/namespaces/{namespace}/repos/{repository}/triggers swr:repo:createTrigger - DELETE /v2/manage/namespaces/{namespace}/repos/{repository}/triggers/{trigger} swr:repo:deleteTrigger - GET /v2/manage/namespaces/{namespace}/repos/{repository}/triggers swr:repo:listTriggers - GET /v2/manage/namespaces/{namespace}/repos/{repository}/triggers/{trigger} swr:repo:getTrigger - PATCH /v2/manage/namespaces/{namespace}/repos/{repository}/triggers/{trigger} swr:repo:updateTrigger - POST /v2/manage/namespaces/{namespace}/repos/{repository}/retentions swr:repo:createRetention - DELETE /v2/manage/namespaces/{namespace}/repos/{repository}/retentions/{retention_id} swr:repo:deleteRetention - GET /v2/manage/namespaces/{namespace}/repos/{repository}/retentions/histories swr:repo:listRetentionHistories - GET /v2/manage/namespaces/{namespace}/repos/{repository}/retentions swr:repo:listRetentions - GET /v2/manage/namespaces/{namespace}/repos/{repository}/retentions/{retention_id} swr:repo:getRetention - PATCH /v2/manage/namespaces/{namespace}/repos/{repository}/retentions/{retention_id} swr:repo:updateRetention - POST /v2/manage/utils/secret swr::createLoginSecret - POST /v2/manage/utils/authorizationtoken swr::createAuthorizationToken sts::createServiceBearerToken GET /v2/manage/projects/{project_id}/quotas swr::listQuotas - GET /v2/manage/overview swr::getDomainOverview - GET /v2/manage/reports/{resource_type}/{frequency} swr::getDomainResourceReports - POST /v2/manage/namespaces/{namespace}/access swr:namespace:createNamespaceAccess - DELETE /v2/manage/namespaces/{namespace}/access swr:namespace:deleteNamespaceAccess - GET /v2/manage/namespaces/{namespace}/access swr:namespace:getNamespaceAccess - PATCH /v2/manage/namespaces/{namespace}/access swr:namespace:updateNamespaceAccess - POST /v2/manage/namespaces/{namespace}/repos/{repository}/access swr:repo:createRepoAccess - DELETE /v2/manage/namespaces/{namespace}/repos/{repository}/access swr:repo:deleteRepoAccess - GET /v2/manage/namespaces/{namespace}/repos/{repository}/access swr:repo:getRepoAccess - PATCH /v2/manage/namespaces/{namespace}/repos/{repository}/access swr:repo:updateRepoAccess -
  • 条件(Condition) 条件键概述 条件(Condition)是身份策略生效的特定条件,包括条件键和运算符。 条件键表示身份策略语句的Condition元素中的键值。根据适用范围,分为全局级条件键和服务级条件键。 全局级条件键(前缀为g:)适用于所有操作,在鉴权过程中,云服务不需要提供用户身份信息,系统将自动获取并鉴权。详情请参见:全局条件键。 服务级条件键(前缀通常为服务缩写,如dms:)仅适用于对应服务的操作,详情请参见表4。 单值/多值表示API调用时请求中与条件关联的值数。单值条件键在API调用时的请求中最多包含一个值,多值条件键在API调用时请求可以包含多个值。例如:g:SourceVpce是单值条件键,表示仅允许通过某个VPC终端节点发起请求访问某资源,一个请求最多包含一个VPC终端节点ID值。g:TagKeys是多值条件键,表示请求中携带的所有标签的key组成的列表,当用户在调用API请求时传入标签可以传入多个值。 运算符与条件键、条件值一起构成完整的条件判断语句,当请求信息满足该条件时,身份策略才能生效。支持的运算符请参见:运算符。 DMS for Kafka支持的服务级条件键 DMS for Kafka定义了以下可以在自定义身份策略的Condition元素中使用的条件键,您可以使用这些条件键进一步细化身份策略语句应用的条件。 表4 DMS for Kafka支持的服务级条件键 服务级条件键 类型 单值/多值 说明 dms:ssl boolean 单值 根据实例是否开启SSL筛选访问权限。 dms:publicIp boolean 单值 根据实例是否开启公网访问筛选访问权限。 dms:connector boolean 单值 根据实例是否开启Smart Connect功能筛选访问权限。
  • 条件(Condition) 条件键概述 条件(Condition)是身份策略生效的特定条件,包括条件键和运算符。 条件键表示身份策略语句的Condition元素中的键值。根据适用范围,分为全局级条件键和服务级条件键。 全局级条件键(前缀为g:)适用于所有操作,在鉴权过程中,云服务不需要提供用户身份信息,系统将自动获取并鉴权。详情请参见:全局条件键。 服务级条件键(前缀通常为服务缩写,如swr:)仅适用于对应服务的操作,详情请参见表4。 单值/多值表示API调用时请求中与条件关联的值数。单值条件键在API调用时的请求中最多包含一个值,多值条件键在API调用时请求可以包含多个值。例如:g:SourceVpce是单值条件键,表示仅允许通过某个VPC终端节点发起请求访问某资源,一个请求最多包含一个VPC终端节点ID值。g:TagKeys是多值条件键,表示请求中携带的所有标签的key组成的列表,当用户在调用API请求时传入标签可以传入多个值。 运算符与条件键、条件值一起构成完整的条件判断语句,当请求信息满足该条件时,身份策略才能生效。支持的运算符请参见:运算符。 SWR支持的服务级条件键 SWR定义了以下可以在自定义身份策略的Condition元素中使用的条件键,您可以使用这些条件键进一步细化身份策略语句应用的条件。 表4 SWR支持的服务级条件键 服务级条件键 类型 单值/多值 说明 swr:VpcId string 单值 按照用户VPC ID进行权限控制。 swr:SubnetId string 单值 按照用户Subnet ID进行权限控制。 swr:EnablePublicNameSpace boolean 单值 限制企业仓库是否允许创公开组织。 swr:EnableObsEncrypt boolean 单值 限制企业版实例是否必须使用加密桶。 swr:TargetRegion string 单值 根据目标区域进行权限控制。 swr:SourceRegion string 单值 根据源区域进行权限控制。 swr:TargetUrls string 多值 根据目标URL地址进行权限控制。 swr:SourceUrls string 多值 根据源URL地址进行权限控制。 swr:RepositoryIsPublic boolean 单值 根据镜像是否为公开镜像进行权限控制。
  • 操作(Action) 操作(Action)即为身份策略中支持的授权项。 “访问级别”列描述如何对操作进行分类(list、read和write等)。此分类可帮助您了解在身份策略中相应操作对应的访问级别。 “资源类型”列指每个操作是否支持资源级权限。 资源类型支持通配符号*表示所有。如果此列没有值(-),则必须在身份策略语句的Resource元素中指定所有资源类型(“*”)。 如果该列包含资源类型,则必须在具有该操作的语句中指定该资源的URN。 资源类型列中必需资源在表中用星号(*)标识,表示使用此操作必须指定该资源类型。 关于 SMS 定义的资源类型的详细信息请参见资源类型(Resource)。 “条件键”列包括了可以在身份策略语句的Condition元素中支持指定的键值。 如果该授权项资源类型列存在值,则表示条件键仅对列举的资源类型生效。 如果该授权项资源类型列没有值(-),则表示条件键对整个授权项生效。 如果此列条件键没有值(-),表示此操作不支持指定条件键。 关于SMS定义的条件键的详细信息请参见条件(Condition)。 “别名”列包括了可以在身份策略中配置的策略授权项。通过这些授权项,可以控制支持策略授权的API访问。详细信息请参见身份策略兼容性说明。 您可以在身份策略语句的Action元素中指定以下SMS的相关操作。 表1 SMS支持的授权项 授权项 描述 访问级别 资源类型(*为必须) 条件键 别名 sms:template:list 授予查询模板列表权限 list template - sms:server:queryServer sms:template:create 授予新增模板信息权限 write template - sms:server:migrationServer sms:template:batchDelete 授予批量删除指定ID的模板权限 write template - - sms:template:get 授予查询指定ID模板信息权限 read template - sms:server:queryServer sms:template:update 授予修改模板信息权限 write template - sms:server:migrationServer sms:template:getTargetPassword 授予查询指定ID的模板中的目的端服务器的密码权限 read template - sms:server:queryServer sms:template:delete 授予删除指定ID的模板权限 write template - sms:server:migrationServer sms:server:listErrors 授予查询待迁移源端的所有错误权限 list server - server:queryServer sms:server:list 授予查询源端服务器列表权限 list server g:EnterpriseProjectId sms:server:queryServer sms:server:register 授予上报源端服务器基本信息权限 write server g:EnterpriseProjectId sms:server:registerServer sms:server:batchDelete 授予批量删除源端服务器信息权限 write server g:EnterpriseProjectId - sms:server:get 授予查询指定ID的源端服务器权限 read server g:EnterpriseProjectId sms:server:queryServer sms:server:update 授予修改指定ID的源端服务器名称权限 write server g:EnterpriseProjectId sms:server:migrationServer sms:server:delete 授予删除指定ID的源端服务器信息权限 write server g:EnterpriseProjectId sms:server:migrationServer sms:server:updateDiskInfo 授予更新磁盘信息权限 write server g:EnterpriseProjectId sms:server:registerServer sms:server:overview 获取服务器总览权限 read server - sms:server:queryServer sms:server:updateState 授予更新任务对应源端复制状态权限 write server g:EnterpriseProjectId sms:server:migrationServer sms:server:listTask 授予查询迁移任务列表权限 list server g:EnterpriseProjectId sms:server:queryServer sms:server:createTask 授予创建迁移任务权限 write server g:EnterpriseProjectId sms:server:migrationServer sms:server:batchDeleteTask 授予批量删除迁移任务权限 write server g:EnterpriseProjectId - sms:server:getTask 授予查询指定ID的迁移任务权限 read server g:EnterpriseProjectId sms:server:queryServer sms:server:updateTask 授予更新指定ID的迁移任务权限 write server g:EnterpriseProjectId sms:server:migrationServer sms:server:deleteTask 授予删除指定ID的迁移任务权限 write server g:EnterpriseProjectId sms:server:deleteTask sms:server:manageTask 授予管理迁移任务权限 write server g:EnterpriseProjectId sms:server:migrationServer sms:server:updateTaskProgress 授予上报数据迁移进度和速率权限 write server g:EnterpriseProjectId sms:server:migrationServer sms:server:unlock 授予解锁指定任务的目的端服务器权限 write server g:EnterpriseProjectId - sms:server:collectLog 授予上传迁移任务的日志权限 write server g:EnterpriseProjectId sms:server:migrationServer sms:server:getTaskPassphrase 授予查询指定任务ID的安全传输通道的证书passphrase权限 read server g:EnterpriseProjectId sms:server:queryServer sms::checkNetwork 授予检查网卡安全组端口是否符合要求权限 read server - - sms:server:getTaskSpeedLimit 授予查询任务限速规则权限 read server g:EnterpriseProjectId sms:server:getTaskSpeedLimit sms:server:updateTaskSpeedLimit 授予设置迁移限速规则权限 write server g:EnterpriseProjectId sms:server:migrationServer sms:server:getCommand 授予获取服务端命令权限 read server g:EnterpriseProjectId sms:server:migrationServer sms:server:updateCommandResult 授予上报服务端命令执行结果权限 write server g:EnterpriseProjectId sms:server:migrationServer sms:server:getCert 授予获取SSL证书和私钥权限 read server g:EnterpriseProjectId sms:server:queryServer sms:migproject:list 授予获取项目列表权限 list migproject - sms:server:queryServer sms:migproject:create 授予新建迁移项目权限 write migproject - sms:server:migrationServer sms:migproject:get 授予查询指定ID迁移项目详情权限 read migproject - sms:server:queryServer sms:migproject:update 授予更新迁移项目信息权限 write migproject - sms:server:migrationServer sms:migproject:delete 授予删除迁移项目权限 write migproject - sms:server:migrationServer sms:migproject:update 授予更新默认迁移项目权限 write migproject - sms:server:migrationServer sms::getConfig 授予获取Agent配置信息权限 read - - sms:server:queryServer sms:server:updateNetworkCheckInfo 授予更新网络检测相关的信息权限 write task g:EnterpriseProjectId sms:server:migrationServer sms:server:getTaskConfig 授予查询任务配置权限 read task g:EnterpriseProjectId sms:server:queryServer sms:server:updateTaskConfig 授予更新任务配置权限 write task g:EnterpriseProjectId sms:server:migrationServer SMS的API通常对应着一个或多个授权项。表2展示了API与授权项的关系,以及该API需要依赖的授权项。 表2 API与授权项的关系 API 对应的授权项 依赖的授权项 GET /v3/vm/templates sms:template:list - POST /v3/vm/templates sms:template:create - POST /v3/vm/templates/delete sms:template:batchDelete - GET /v3/vm/templates/{id} sms:template:get - PUT /v3/vm/templates/{id} sms:template:update - GET /v3/vm/templates/{id}/target-password sms:template:getTargetPassword - DELETE /v3/vm/templates/{id} sms:template:delete - GET /v3/errors sms:server:listErrors - GET /v3/sources sms:server:list - POST /v3/sources sms:server:register - POST /v3/sources/delete sms:server:batchDelete ecs:cloudServers:showServer ecs:cloudServers:attach evs:volumes:use ecs:cloudServers:stop ecs:cloudServers:start ecs:cloudServers:detachVolume evs:volumes:delete evs:snapshots:delete evs:volumes:get GET /v3/sources/{source_id} sms:server:get - PUT /v3/sources/{source_id} sms:server:update - DELETE /v3/sources/{source_id} sms:server:delete ecs:cloudServers:showServer ecs:cloudServers:attach evs:volumes:use ecs:cloudServers:stop ecs:cloudServers:start ecs:cloudServers:detachVolume evs:volumes:delete evs:snapshots:delete evs:volumes:get PUT /v3/sources/{source_id}/diskinfo sms:server:updateDiskInfo - GET /v3/sources/overview sms:server:overview - PUT /v3/sources/{source_id}/changestate sms:server:updateState - GET /v3/tasks sms:server:listTask - POST /v3/tasks sms:server:createTask - POST /v3/tasks/delete sms:server:batchDeleteTask ecs:cloudServers:showServer ecs:cloudServers:attach evs:volumes:use ecs:cloudServers:stop ecs:cloudServers:start ecs:cloudServers:detachVolume evs:volumes:delete evs:snapshots:delete evs:volumes:get GET /v3/tasks/{task_id} sms:server:getTask - PUT /v3/tasks/{task_id} sms:server:updateTask - DELETE /v3/tasks/{task_id} sms:server:deleteTask ecs:cloudServers:showServer ecs:cloudServers:attach evs:volumes:use ecs:cloudServers:stop ecs:cloudServers:start ecs:cloudServers:detachVolume evs:volumes:delete evs:snapshots:delete evs:volumes:get POST /v3/tasks/{task_id}/action sms:server:manageTask - PUT /v3/tasks/{task_id}/progress sms:server:updateTaskProgress - POST /v3/tasks/{task_id}/unlock sms:server:unlock - POST /v3/tasks/{task_id}/log sms:server:collectLog - GET /v3/tasks/{task_id}/passphrase sms:server:getTaskPassphrase - GET /v3/tasks/{t_project_id}/networkacl/{t_network_id}/check sms:server:checkNetwork - GET /v3/tasks/{task_id}/speed-limit sms:server:getTaskSpeedLimit - POST /v3/tasks/{task_id}/speed-limit sms:server:updateTaskSpeedLimit - GET /v3/sources/{server_id}/command sms:server:getCommand - POST /v3/sources/{server_id}/command_result sms:server:updateCommandResult - GET /v3/tasks/{task_id}/certkey sms:server:getCert - GET /v3/migprojects sms:migproject:list - POST /v3/migprojects sms:migproject:create - GET /v3/migprojects/{mig_project_id} sms:migproject:get - PUT /v3/migprojects/{mig_project_id} sms:migproject:update - DELETE /v3/migprojects/{mig_project_id} sms:migproject:delete - PUT /v3/migprojects/{mig_project_id}/default sms:migproject:update - GET /v3/config sms::getConfig - POST /v3/{task_id}/update-network-check-info sms:server:updateNetworkCheckInfo - POST /v3/tasks/{task_id}/configuration-setting sms:server:updateTaskConfig -
  • 操作(Action) 操作(Action)即为身份策略中支持的授权项。 “访问级别”列描述如何对操作进行分类(List、Read和Write等)。此分类可帮助您了解在身份策略中相应操作对应的访问级别。 “资源类型”列指每个操作是否支持资源级权限。 资源类型支持通配符号*表示所有。如果此列没有值(-),则必须在身份策略语句的Resource元素中指定所有资源类型(“*”)。 如果该列包含资源类型,则必须在具有该操作的语句中指定该资源的URN。 资源类型列中必需资源在表中用星号(*)标识,表示使用此操作必须指定该资源类型。 关于deployman定义的资源类型的详细信息请参见资源类型(Resource)。 “条件键”列包括了可以在身份策略语句的Condition元素中支持指定的键值。 如果该授权项资源类型列存在值,则表示条件键仅对列举的资源类型生效。 如果该授权项资源类型列没有值(-),则表示条件键对整个授权项生效。 如果此列条件键没有值(-),表示此操作不支持指定条件键。 关于deployman定义的条件键的详细信息请参见条件(Condition)。 “别名”列包括了可以在身份策略中配置的策略授权项。通过这些授权项,可以控制支持策略授权的API访问。详细信息请参见身份策略兼容性说明。 您可以在身份策略语句的Action元素中指定以下deployman的相关操作。 表1 deployman支持的授权项 授权项 描述 访问级别 资源类型(*为必须) 条件键 别名 codeartsdeploy:template:create 授予在CodeArtsDeploy服务创建模板的权限。 Write - - - codeartsdeploy:template:delete 授予在CodeArtsDeploy服务删除模板的权限。 Write - - - codeartsdeploy:template:update 授予在CodeArtsDeploy服务更新模板的权限。 Write - - - codeartsdeploy:template:get 授予在CodeArtsDeploy服务查看模板详情的权限。 Read - - - codeartsdeploy:template:list 授予在CodeArtsDeploy服务查看模板列表的权限。 List - - - codeartsdeploy:application:create 授予在CodeArtsDeploy服务创建应用的权限。 Write - - - codeartsdeploy:application:delete 授予在CodeArtsDeploy服务删除应用的权限。 Write - - - codeartsdeploy:application:update 授予在CodeArtsDeploy服务更新应用的权限。 Write - - - codeartsdeploy:application:disable 授予在CodeArtsDeploy服务禁用应用的权限。 Write - - - codeartsdeploy:application:deploy 授予在CodeArtsDeploy服务部署应用的权限。 Write - - - codeartsdeploy:application:clone 授予在CodeArtsDeploy服务复制应用的权限。 Write - - - codeartsdeploy:application:managePermission 授予在CodeArtsDeploy服务中修改应用权限配置的权限。 Write - - - codeartsdeploy:application:get 授予在CodeArtsDeploy服务查看应用详情的权限。 Read - - - codeartsdeploy:application:list 授予在CodeArtsDeploy服务查看应用列表的权限。 List - - - codeartsdeploy:applicationGroup:manage 授予在CodeArtsDeploy服务管理应用分组的权限。 Write - - - codeartsdeploy:applicationGroup:list 授予在CodeArtsDeploy服务查看应用分组列表的权限。 List - - - codeartsdeploy:environment:create 授予在CodeArtsDeploy服务创建环境的权限。 Write - - - codeartsdeploy:environment:delete 授予在CodeArtsDeploy服务删除环境的权限。 Write - - - codeartsdeploy:environment:update 授予在CodeArtsDeploy服务更新环境的权限。 Write - - - codeartsdeploy:environment:get 授予在CodeArtsDeploy服务查看环境详情的权限。 Read - - - codeartsdeploy:environment:list 授予在CodeArtsDeploy服务查看环境列表的权限。 List - - - codeartsdeploy:environment:managePermission 授予在CodeArtsDeploy服务中修改部署环境权限配置的权限。 Write - - - codeartsdeploy:resource:create 授予在CodeArtsDeploy服务创建基础资源的权限。 Write - - - codeartsdeploy:resource:delete 授予在CodeArtsDeploy服务删除基础资源的权限。 Write - - - codeartsdeploy:resource:update 授予在CodeArtsDeploy服务修改基础资源的权限。 Write - - - codeartsdeploy:resource:addHost 授予在CodeArtsDeploy服务基础资源中添加主机的权限。 Write - - - codeartsdeploy:resource:copyHost 授予在CodeArtsDeploy服务基础资源中复制主机的权限。 Write - - - codeartsdeploy:resource:managePermission 授予在CodeArtsDeploy服务修改基础资源权限配置的权限。 Write - - - codeartsdeploy:resource:get 授予在CodeArtsDeploy服务查看基础资源的权限。 Read - - - codeartsdeploy:resource:list 授予在CodeArtsDeploy服务查看基础资源列表的权限。 List - - - deployman的API通常对应着一个或多个授权项。表2展示了API与授权项的关系,以及该API需要依赖的授权项。 表2 API与授权项的关系 API 对应的授权项 依赖的授权项 POST /v1/applications codeartsdeploy:application:create - PUT /v1/applications codeartsdeploy:application:update - DELETE /v1/applications/{app_id} codeartsdeploy:application:delete - POST /v2/applications/batch-delete codeartsdeploy:application:delete - GET /v1/applications/{app_id}/info codeartsdeploy:application:get - POST /v1/applications/list codeartsdeploy:application:list - POST /v1/applications/{app_id}/duplicate codeartsdeploy:application:clone - GET /v1/applications/creatable codeartsdeploy:application:list - GET /v1/applications/exist codeartsdeploy:application:list - GET /v3/applications/permissions codeartsdeploy:application:list - PUT /v3/applications/permissions codeartsdeploy:application:managePermission - PUT /v3/applications/permission-level codeartsdeploy:application:managePermission - GET /v2/tasks/{task_id}/state codeartsdeploy:application:get - PUT /v1/applications/{app_id}/disable codeartsdeploy:application:disable - POST /v2/tasks/template-task codeartsdeploy:application:create - DELETE /v2/tasks/{task_id} codeartsdeploy:application:delete - GET /v2/tasks/{task_id} codeartsdeploy:application:get - GET /v2/{project_id}/task/{id}/history codeartsdeploy:application:get - GET /v2/history/tasks/{task_id}/params codeartsdeploy:application:get - GET /v2/{project_id}/metrics/success-rate codeartsdeploy:application:list - POST /v2/{project_id}/tasks/metrics/success-rate codeartsdeploy:application:list - POST /v2/tasks/{task_id}/start codeartsdeploy:application:deploy - GET /v2/{project_id}/tasks/list codeartsdeploy:application:list - POST /v1/projects/{project_id}/applications/groups codeartsdeploy:applicationGroup:manage - PUT /v1/projects/{project_id}/applications/groups/move codeartsdeploy:applicationGroup:manage - PUT /v1/projects/{project_id}/applications/groups/swap codeartsdeploy:applicationGroup:manage - DELETE /v1/projects/{project_id}/applications/groups/{group_id} codeartsdeploy:applicationGroup:manage - PUT /v1/projects/{project_id}/applications/groups/{group_id} codeartsdeploy:applicationGroup:manage - GET /v1/projects/{project_id}/applications/groups codeartsdeploy:applicationGroup:list - POST /v2/host-groups/{group_id}/hosts codeartsdeploy:resource:addHost - GET /v2/host-groups/{group_id}/hosts codeartsdeploy:resource:get - PUT /v1/resources/host-groups/{group_id}/hosts/{host_id} codeartsdeploy:resource:update - DELETE /v1/resources/host-groups/{group_id}/hosts/{host_id} codeartsdeploy:resource:delete - GET /v1/resources/host-groups/{group_id}/hosts/{host_id} codeartsdeploy:resource:get - GET /v2/host-groups/{group_id} codeartsdeploy:resource:get - DELETE /v2/host-groups/{group_id} codeartsdeploy:resource:delete - PUT /v2/host-groups/{group_id} codeartsdeploy:resource:update - GET /v1/resources/host-groups/{group_id}/hosts codeartsdeploy:resource:get - GET /v2/host-groups/{group_id}/permissions codeartsdeploy:resource:get - PUT /v2/host-groups/{group_id}/permissions codeartsdeploy:resource:managePermission - GET /v1/resources/host-groups/{group_id}/environments/infos codeartsdeploy:resource:list - POST /v1/resources/host-groups/{group_id}/hosts codeartsdeploy:resource:addHost - POST /v2/host-groups codeartsdeploy:resource:create - GET /v2/host-groups codeartsdeploy:resource:list - POST /v1/resources/host-groups/{group_id}/hosts/batch-delete codeartsdeploy:resource:delete - POST /v1/resources/host-groups/{group_id}/hosts/replication codeartsdeploy:resource:copyHost - GET /v1/resources/host-groups/{group_id} codeartsdeploy:resource:get - POST /v1/resources/host-groups codeartsdeploy:resource:create - GET /v1/resources/host-groups codeartsdeploy:resource:list - GET /v1/host-groups/creatable/{project_id}/permissions codeartsdeploy:resource:list - PUT /v1/resources/host-groups/{group_id} codeartsdeploy:resource:update - DELETE /v1/resources/host-groups/{group_id} codeartsdeploy:resource:delete - DELETE /v2/host-groups/{group_id}/hosts/{host_id} codeartsdeploy:resource:delete - PUT /v2/host-groups/{group_id}/hosts/{host_id} codeartsdeploy:resource:update - GET /v2/host-groups/{group_id}/hosts/{host_id} codeartsdeploy:resource:get - DELETE /v1/applications/{application_id}/environments/{environment_id}/{host_id} codeartsdeploy:environment:delete - DELETE /v1/applications/{application_id}/environments/{environment_id} codeartsdeploy:environment:delete - GET /v1/applications/{application_id}/environments/{environment_id} codeartsdeploy:environment:get - PUT /v1/applications/{application_id}/environments/{environment_id} codeartsdeploy:environment:update - GET /v1/applications/{application_id}/host-groups/base/infos codeartsdeploy:environment:list - POST /v1/applications/{application_id}/environments codeartsdeploy:environment:create - GET /v1/applications/{application_id}/environments codeartsdeploy:environment:list - POST /v1/applications/{application_id}/environments/{environment_id}/hosts/import codeartsdeploy:environment:update - GET /v1/applications/{application_id}/environments/{environment_id}/hosts codeartsdeploy:environment:get -
  • 条件(Condition) 条件键概述 条件键(Condition)是身份策略生效的特定条件,包括条件键和运算符。 条件键表示身份策略语句的Condition元素中的键值。根据适用范围,分为全局级条件键和服务级条件键。 全局级条件键(前缀为g:)适用于所有操作,在鉴权过程中,云服务不需要提供用户身份信息,系统将自动获取并鉴权。详情请参见:全局条件键。 服务级条件键(前缀通常为服务缩写,如ecs:)仅适用于对应服务的操作,详情请参见表4。 单值/多值表示API调用时请求中与条件关联的值数。单值条件键在API调用时的请求中最多包含一个值,多值条件键在API调用时请求可以包含多个值。例如:g:SourceVpce是单值条件键,表示仅允许通过某个VPC终端节点发起请求访问某资源,一个请求最多包含一个VPC终端节点ID值。g:TagKeys是多值条件键,表示请求中携带的所有标签的key组成的列表,当用户在调用API请求时传入标签可以传入多个值。 运算符与条件键、条件值一起构成完整的条件判断语句,当请求信息满足该条件时,身份策略才能生效。支持的运算符请参见:运算符。 ECS支持的服务级条件键 ECS定义了以下可以在身份策略的Condition元素中使用的条件键,您可以使用这些条件键进一步细化策略语句应用的条件。 表4 ECS支持的服务级条件键 服务级条件键 类型 单值/多值 说明 ecs:imageID string 多值 根据请求参数中指定的镜像ID过滤访问。 ecs:FlavorId string 多值 根据请求参数中指定的规格ID过滤访问。 ecs:VpcId string 多值 根据请求参数中指定的网络ID过滤访问。 ecs:SubnetId string 多值 根据请求参数中指定的子网ID过滤访问。 ecs:KmsKeyId string 多值 根据请求参数中指定的加密密钥ID过滤访问。 ecs:ServerId string 单值 根据云服务器ID过滤访问。 ecs:SSHKeyPairName string 单值 根据请求参数中指定的SSH密钥对的名称过滤访问。 ecs:AvailabilityZone string 单值 根据请求参数中指定的可用区名称过滤访问。 ecs:PortId string 多值 根据请求参数中指定的portId过滤访问。 ecs:SupportAgentType string 多值 根据请求中指定的agent类型过滤访问。 ecs:ImageSupportAgentType string 多值 根据请求中指定的镜像支持的agent类型过滤访问。 ecs:VolumeId string 单值 根据请求中指定的卷ID过滤访问。 ecs:ImageType string 单值 根据请求中指定镜像的类型过滤访问(如:公共镜像、私有镜像、共享镜像、市场镜像)。 ecs:OsType string 单值 根据请求中指定镜像的操作系统类型过滤访问(如:Linux、Windows)。 ecs:OsVersion string 单值 根据请求中指定镜像的操作系统版本过滤访问(如:CentOS 7.3 64bit)。 ecs:ImagePlatform string 单值 根据请求中指定镜像的平台过滤访问(如:Windows、Ubuntu、Red Hat、SUSE、CentOS)。 ecs:LegacyAPIFlavor string 单值 根据请求的API类型过滤访问(当前仅支持OpenStackNative)。
  • 条件(Condition) 条件键概述 条件(Condition)是身份策略生效的特定条件,包括条件键和运算符。 条件键表示身份策略语句的Condition元素中的键值。根据适用范围,分为全局级条件键和服务级条件键。 全局级条件键(前缀为g:)适用于所有操作,在鉴权过程中,云服务不需要提供用户身份信息,系统将自动获取并鉴权。详情请参见:全局条件键。 服务级条件键(前缀通常为服务缩写,如geminidb:)仅适用于对应服务的操作,详情请参见表4。 单值/多值表示API调用时请求中与条件关联的值数。单值条件键在API调用时的请求中最多包含一个值,多值条件键在API调用时请求可以包含多个值。例如:g:SourceVpce是单值条件键,表示仅允许通过某个VPC终端节点发起请求访问某资源,一个请求最多包含一个VPC终端节点ID值。g:TagKeys是多值条件键,表示请求中携带的所有标签的key组成的列表,当用户在调用API请求时传入标签可以传入多个值。 运算符与条件键、条件值一起构成完整的条件判断语句,当请求信息满足该条件时,身份策略才能生效。支持的运算符请参见:运算符。 GeminiDB定义了以下可以在身份策略的Condition元素中使用的条件键,您可以使用这些条件键进一步细化身份策略语句应用的条件。 表4 GeminiDB支持的服务级条件键 服务级条件键 类型 单值/多值 说明 gaussdbfornosql:AssociatePublicIp boolean 单值 按照请求参数中传递的是否绑定EIP策略标签键筛选访问权限。 gaussdbfornosql:VpcId string 单值 按照请求参数中传递的虚拟私有云主键标签键筛选访问权限。 gaussdbfornosql:Subnet string 单值 按照请求参数中传递的子网标签键筛选访问权限。 条件键示例 gaussdbfornosql:AssociatePublicIp 示例:表示禁止GeminiDB实例绑定EIP。 { "Version": "5.0", "Statement": [ { "Effect": "Deny", "Action": [ "gaussdbfornosql:instance:updateEIP" ], "Condition": { "Bool": { "gaussdbfornosql:AssociatePublicIp": [ "true" ] } } } ] } gaussdbfornosql:VpcId 示例:表示允许指定VPC创建实例。 { "Version": "5.0", "Statement": [ { "Effect": "Allow", "Action": [ "gaussdbfornosql:instance:create" ], "Condition": { "StringEquals": { "gaussdbfornosql:VpcId": [ "f457aa28-72de-42b8-8517-d9c6e14b9d09" ] } } } ] } gaussdbfornosql:Subnet 示例:表示允许指定子网创建实例。 { "Version": "5.0", "Statement": [ { "Effect": "Allow", "Action": [ "gaussdbfornosql:instance:create" ], "Condition": { "StringEquals": { "gaussdbfornosql:Subnet": [ "c0650bbe-4c89-4f2a-8cd2-3e2171b96d99" ] } } } ] }
  • FAQ 什么情况下会发生数据淘汰? 从OBS导入到SFS Turbo的文件,当文件在设定数据淘汰时间内没有被访问时,会自动对该文件进行淘汰。 在SFS Turbo上创建的文件,只有已经导出到OBS并且满足数据淘汰时间,才会进行淘汰,如果还没有导出到OBS,则不会淘汰。 数据淘汰之后,怎么重新将数据导入到SFS Turbo文件系统? 对文件进行读写操作时会重新从OBS桶加载文件数据到SFS Turbo文件系统; 使用数据预热功能重新将数据从OBS桶加载到SFS Turbo文件系统。 什么场景下会发生数据导入失败? 当只导入了文件元数据,或者SFS Turbo中发生了数据淘汰,SFS Turbo中只剩下文件元数据,但OBS桶中的对象又被删除时,进行数据导入或访问文件内容时会发生失败。 导入/导出任务是同步的,还是异步的? 是异步的,任务提交后马上返回,您可以通过任务id查询异步任务完成状态。 删除SFS Turbo联动目录内的文件,OBS桶里对应的对象会删除吗? 如果没有开启自动同步策略,则不会。如果开启了自动同步策略,则会删除。 SFS Turbo绑定OBS桶时或者绑定之后可以指定导入目录和文件的权限吗? 一般情况下,您可以指定导入目录和文件的权限。如果无法指定,请提交工单申请。指定权限详情如下所示: 绑定OBS桶时或绑定OBS桶后,支持设置导入目录和文件的默认权限,在控制台设置权限请参考绑定OBS桶,使用API设置权限请参考《高性能弹性文件服务API参考》的“绑定后端存储”和“更新后端存储属性”章节。如果未设置,默认为750(目录权限)和640(文件权限)。 快速导入和数据预热时,支持指定导入目录和文件的权限,在控制台设置权限请参考绑定OBS桶,使用API设置权限请参考《高性能弹性文件服务API参考》的“创建数据导入导出任务”章节。如果未指定,则以上述默认权限为准。 历史版本导入目录和文件的默认权限为755(目录权限)和644(文件权限),现逐步按区域切换为750(目录权限)和640(文件权限),如有疑问,请提交工单申请。 SFS Turbo绑定OBS桶时或者绑定之后,建议指定导入目录和文件的默认权限。如果您未指定,非root用户无权限访问对应的目录和文件。
  • 数据淘汰功能 SFS Turbo文件系统绑定OBS桶之后,可以使用数据淘汰功能。淘汰时会释放数据内容,仅保留元数据,释放后不占用SFS Turbo文件系统上的存储空间。再次访问该文件时,将重新从OBS中加载文件数据内容。 按时间淘汰 SFS Turbo文件系统绑定OBS桶之后,支持数据按时间淘汰功能。设定时间内没有被访问过的文件会被淘汰。 按时间淘汰功能支持设置(冷)数据淘汰时间,设置步骤请参考以下操作。 登录SFS Turbo控制台。 在文件系统列表中,单击创建的SFS Turbo文件系统名称,进入文件系统详情页面。 在“基本信息”页签,设置(冷)数据淘汰时间。 图7 设置冷数据淘汰时间 按容量淘汰 SFS Turbo文件系统绑定OBS桶后,支持数据按容量淘汰功能。 容量达到95%及以上按照30分钟淘汰时间进行淘汰,淘汰至容量低于85%。 淘汰规则:按时间淘汰和按容量淘汰哪个先达到就先按哪个淘汰。 数据淘汰默认开启,淘汰时间默认为60小时。设置(冷)数据淘汰时间的API请参考更新文件系统。 如果SFS Turbo文件系统存储空间写满,会影响业务运行,建议在 云监控服务 CES上配置SFS Turbo已用容量的监控告警。 当触发容量阈值告警时请手动缩短数据淘汰时间,例如从60小时配置成40小时,加速(冷)数据淘汰,或者对SFS Turbo存储空间进行扩容。 建议在需要高性能场景下适当延长数据淘汰周期,避免淘汰后需要从OBS中加载冷数据而产生的高时延。
共93093条