文档首页/ 性能测试 CodeArts PerfTest/ 常见问题/ 通用问题/ 如何通过新版IAM做企业项目维度的权限隔离?
更新时间:2024-12-26 GMT+08:00
分享

如何通过新版IAM做企业项目维度的权限隔离?

新版IAM本身不支持企业项目维度的权限隔离,可以借助资源标签(Resource Tags)进行权限隔离。通过企业项目做权限隔离,被授权“企业项目A”的子用户,只能访问带有“企业项目A”标签的工程。该能力依赖新版IAM能力建设,需要切换IAM5.0权限模型,请谨慎选择。

通过资源标签进行权限隔离流程如下:

  1. 在IAM控制台为子用户配置自定义权限策略
  2. 在性能测试服务控制台为目标工程配置资源标签
图1 企业项目权限隔离流程图

自定义身份策略用于控制权限类型和访问范围,其中action用来控制权限类型,资源标签用来控制访问范围,实现企业项目维度的权限隔离。

资源标签为“key:value”形式,建议配置统一格式为“EnterpriseProject:企业项目名称”,用户权限作用效果如下:

图2 企业项目权限隔离效果图

在IAM控制台为子用户配置自定义权限策略

  1. 单击控制台左上角的,搜索并单击进入“统一身份认证服务 IAM”。
  2. 单击右上角“体验新版控制台”。
  3. 创建自定义身份策略。

    1. 在左侧导航栏选择“身份策略”。
    2. 单击右上角“创建自定义身份策略”。输入策略名称,例如“EnterpriseProjectA_policy”,策略名称根据企业项目或授权范围自定义。策略内容依次选择“允许”,云服务选择“codeartsperftest”,在加载的可视化操作页面中,根据实际需求勾选用户权限策略。
      图3 用户权限策略
    3. 继续单击“策略内容”的“请求条件(可选)”,单击“添加条件”,依照表1进行配置,单击“确定”。
      表1 添加请求条件配置

      标题

      内容

      备注

      条件键

      g:ResourceTag

      固定值

      标签键

      EnterpriseProject

      固定值

      限定词

      默认

      固定值

      运算符

      StringEquals

      固定值

      企业项目A

      自定义,填企业项目的名称

    4. 单击“确定”完成自定义身份策略配置。
    5. 重复1-4操作,创建多个自定义身份策略,并关联不同的企业项目标签。

  4. 为用户组授权。此处以“用户组”为例,“用户”与“用户组”操作基本一致。

    1. 在左侧导航栏选择“用户组”。
    2. 找到需要授权自定义身份策略的用户组,在操作栏单击“授权”。
    3. 选择3中已创建的自定义身份策略,单击“确定”,完成授权。
    4. 重复2-3操作,为不同用户组绑定不同的自定义身份策略。

在性能测试服务控制台为目标工程配置资源标签

  1. 登录性能测试服务控制台,选择需要授权的测试工程。
  2. 单击右侧扩展按钮,选择“编辑标签”。

    图4 编辑标签

  3. 单击“添加标签”,在对话框中,标签键输入“EnterpriseProject”,标签值输入在IAM中配置的企业项目名称,例如“企业项目A”,单击“确定”,为测试工程绑定资源标签。

    图5 添加标签

权限配置验证

完成上述配置后,当用户访问性能测试服务的测试工程时,性能测试服务会校验该用户是否在IAM侧配置工程对应的企业项目资源标签。例如,用户1在IAM配置了“企业项目A”的自定义身份策略资源标签,其仅能访问带有“企业项目A”标签的工程,访问其他工程则会提示“权限不足”。

图6 权限不足报错

相关文档