PAI-Plugin通过服务关联角色AliyunServiceRoleForPaiPlugin获取其他云服务的访问权限。您在首次使用PAI-Plugin需要访问对象存储OSS时,需要为RAM用户进行一键授权,操作一键授权时DataWorks自动为RAM用户创建一个角色并将角色权限赋予RAM用户。本文为您介绍AliyunServiceRoleForPaiPlugin角色拥有的访问权限及如何管理该角色。

背景信息

PAI-Plugin服务关联角色AliyunServiceRoleForPaiPlugin是PAI-Plugin在某些情况下,为了完成自身的某个功能,需要获取其他云服务的访问权限而提供的RAM角色。更多关于服务关联角色的信息请参见服务关联角色

当PAI-Plugin部分功能需要访问对象存储OSS的资源时,您可以通过PAI-Plugin服务关联角色AliyunServiceRoleForPaiPlugin获取访问权限。

AliyunServiceRoleForPaiPlugin权限说明

AliyunServiceRoleForPaiPlugin拥有的对象存储OSS的访问权限如下所示。
{
      "Action": [
        "oss:GetObject",
        "oss:PutObject",
        "oss:DeleteObject",
        "oss:ListParts",
        "oss:AbortMultipartUpload",
        "oss:ListObjects",
        "oss:ListBuckets",
        "oss:PutBucketCors",
        "oss:GetBucketCors",
        "oss:DeleteBucketCors"
      ],
      "Resource": "*",
      "Effect": "Allow",
      "Condition": {
        "StringEquals": {
          "oss:BucketTag/pai": "plugin"
        }
      }
}

一键授权失败的可能原因及处理方案

RAM用户拥有指定的权限时,才能自动创建或删除PAI-Plugin服务关联角色AliyunServiceRoleForPaiPlugin,当RAM用户无法自动创建或删除AliyunServiceRoleForPaiPlugin时,您需要为RAM用户添加相应的权限策略,具体操作步骤如下所示。

  1. 通过脚本编辑模式将以下权限策略内容创建为自定义策略,关于如何通过脚本编辑模式创建自定义权限策略,详情请参见创建自定义权限策略
    {
      "Statement": [
        {
          "Action": "ram:CreateServiceLinkedRole",
          "Resource": "*",
          "Effect": "Allow",
          "Condition": {
            "StringEquals": {
              "ram:ServiceName": "plugin.pai.aliyuncs.com"
            }
          }
        }
      ],
      "Version": "1"
    }
  2. 将已创建的自定义权限策略授权给RAM用户,关于如何为RAM用户授权,详情请参见方式一:在用户页面为RAM用户授权

删除AliyunServiceRoleForPaiPlugin角色

如果您已开通PAI-Plugin服务,出于安全或其他方面的考虑想要删除服务关联角色AliyunServiceRoleForPaiPlugin,则需要明确删除该角色的影响。删除AliyunServiceRoleForPaiPlugin后,您可能无法再创建与对象存储OSS相关的资源,且现有服务中与对象存储OSS相关的功能会因失去访问权限受到影响。

删除服务关联角色AliyunServiceRoleForPaiPlugin的具体操作步骤,详情请参见删除RAM角色