九游平台/ ai开发平台modelarts/ 最佳实践/ standard权限管理/ 典型场景配置实践/ 给子账号配置文件夹级的sfs turbo访问权限
更新时间:2024-09-14 gmt 08:00

给子账号配置文件夹级的sfs turbo访问权限-九游平台

场景描述

本文介绍如何配置文件夹级的sfs turbo访问权限,实现在modelarts中访问挂载的sfs turbo时,只允许子账号访问特定的sfs turbo文件夹内容。

给子账号配置文件夹级的sfs turbo访问权限为白名单功能,如果有试用需求,请提工单申请权限。

前提条件

  • 需要在modelarts控制台打开严格授权模式,单击“权限管理 > 启用严格模式”。
  • 如果打开严格模式前没有为子账号配置过modelarts权限,开启严格授权模式后可能会导致子账号无法使用modelarts功能,请根据您的业务需求配置需要的modelarts服务的权限(参见依赖和委托中modelarts服务对应的依赖策略项)。

操作步骤

  1. 使用主用户账号登录管理控制台,鼠标放在右上角用户名,在下拉框中选择“统一身份认证”,进入统一身份认证(iam)服务。
  2. 在统一身份认证服务页面的左侧导航选择“权限管理 > 权限”,单击右上角的“创建自定义策略”,设置策略。
    • “策略名称”:设置自定义策略名称,例如:ma_sfs_turbo。
    • “策略配置方式”:json视图。
    • “策略内容”:填入如下内容。
      {
          "version": "1.1",
          "statement": [
              {
                  "effect": "allow",
                  "action": [
                      ""
                  ],
                  "condition": {
                      "stringequalsifexists": {
                          "modelarts:sfsid": [
                              ""
                          ],
                          "modelarts:sfspath": [
                              ""
                          ],
                          "modelarts:sfsoption": [
                              ""
                          ]
                      }
                  }
              }
          ]
      }
    • 未创建以上权限策略前,所有子账号默认可以挂载sfs turbo。当您创建了以上sfs权限管控策略后,没有被授予以上权限的子账号,默认在modelarts console上创建训练作业时无法挂载sfs turbo(具有tenant administrator权限的子账号除外)。
    • 当前仅支持配置允许策略的权限(即以上“策略内容”中的“effect”只能配置为“allow”),请勿配置拒绝策略的权限。
    • condition参数必须使用“stringequalsifexists”字段,对应可视化视图为勾选“如果存在”的开关。
      图1 “如果存在”的开关

    以上代码中的""、""、""、"",需要根据您的业务需求替换为实际的参数,各参数含义如下。

    表1 参数解释

    参数

    参数解释

    action

    表示在何种场景下授予sfs turbo文件夹访问权限。

    • 创建开发环境实例:modelarts:notebook:create
    • 创建训练作业:modelarts:trainjob:create

    支持填写多种action,例如:

    "action": [
       "modelarts:trainjob:create",
       "modelarts:notebook:create"
    ],

    modelarts:sfsid

    sfs turbo的id,在sfs turbo详情页查看。支持填写多个id,例如:

    "modelarts:sfsid": [
       "0e51c7d5-d90e-475a-b5d0-ecf896da3b0d",
       "2a70da1e-ea87-4ee4-ae1e-55df846e7f41"
    ],

    modelarts:sfspath

    需要进行权限配置的sfs turbo文件夹路径。支持填写多个路径,例如:

    "modelarts:sfspath": [
      "/path1",
      "/path2/path2-1"
    ],

    如果sfsid中填写了多个id,则sfspath会应用于所有sfsid。例如以下代码含义为:为"0e51c7d5-d90e-475a-b5d0-ecf896da3b0d"的"/path1"和"/path2/path2-1"配置访问权限,同时也为"2a70da1e-ea87-4ee4-ae1e-55df846e7f41"的"/path1"和"/path2/path2-1"配置访问权限。

    "modelarts:sfsid": [
       "0e51c7d5-d90e-475a-b5d0-ecf896da3b0d",
       "2a70da1e-ea87-4ee4-ae1e-55df846e7f41"
    ],
    "modelarts:sfspath": [
      "/path1",
      "/path2/path2-1"
    ],

    modelarts:sfsoption

    设置用户对于sfs turbo文件夹的权限类型,支持填写以下参数:

    • 仅读权限:readonly
    • 读写权限:readwrite(创建开发环境实例modelarts:notebook:create仅支持配置readwrite)

    如果需要在一个自定义策略中添加多个不同的sfsoption,需要“statement”中新增json结构体,例如:

    {
        "version": "1.1",
        "statement": [
            {
                "effect": "allow",
                "action": [
                    "modelarts:trainjob:create"
                ],
                "condition": {
                    "stringequalsifexists": {
                        "modelarts:sfsid": [
                            "0e51c7d5-d90e-475a-b5d0-ecf896da3b0d"
                        ],
                        "modelarts:sfspath": [
                            "/path1"
                        ],
                        "modelarts:sfsoption": [
                            "readonly"
                        ]
                    }
                }
            },
            {
                "effect": "allow",
                "action": [
                    "modelarts:trainjob:create"
                ],
                "condition": {
                    "stringequalsifexists": {
                        "modelarts:sfsid": [
                            "0e51c7d5-d90e-475a-b5d0-ecf896da3b0d"
                        ],
                        "modelarts:sfspath": [
                            "/path2"
                        ],
                        "modelarts:sfsoption": [
                            "readwrite"
                        ]
                    }
                }
            }
        ]
    }
  3. 创建用户组并加入用户,步骤请参考step1 创建用户组并加入用户
  4. 给用户组授权策略。在iam服务的用户组列表页面,单击“授权”,进入到授权页面,为子账号配置权限。勾选步骤2中创建的“ma_sfs_turbo”策略。单击“下一步”和“确定”。
  5. 在已有的modelarts委托权限中,追加iam readonlyaccess权限。
    1. 在modelarts管理控制台,单击“权限管理 ”,在对应委托的操作列,单击“查看权限 > 去iam修改委托权限”。
    2. 在新页面中,单击“授权记录 > 授权”,搜索“iam readonlyaccess”,勾选后单击“下一步”并单击“确认”。
  6. 验证权限是否配置成功。

    登录子用户账号,在创建训练作业/创建notebook时,仅能看到配置的sfs turbo文件夹,则表示权限配置成功。

相关文档

网站地图