すべてのプロダクト
Search
ドキュメントセンター

Platform For AI:AIコンピューティングリソースグループに対する権限の付与

最終更新日:Jul 22, 2024

AI用Platform for AI (PAI) のAIコンピューティングリソースにきめ細かい権限制御を実装する場合は、カスタムポリシーを作成して、リソースを作成、更新、削除、またはスケールする権限をResource Access Management (RAM) ユーザーに付与できます。

背景情報

RAM権限は、クラウドネイティブリソースとリソースクォータの管理に使用されます。 クラウドネイティブリソースには、一般的なコンピューティングリソースとLingjunリソースが含まれます。

リソースプール

リソースプールには、専用リソースグループ (ResourceGroup) で購入したAI開発用のコンピューティングリソースが含まれます。

詳細については、「概要」をご参照ください。

リソースクォータ

リソースクォータは、リソースプールからのAIコンピューティングリソースのサブコレクションです。 リソースクォータをワークスペースに関連付けると、ワークスペースメンバーは対応するリソースを使用してAI開発を実行し、オンラインサービスをデプロイできます。 詳細については、「概要」をご参照ください。

次の図に示すように、ツリー構造に従うリソースクォータを作成できます。 リソースプールのリソースを使用して作成されるリソースクォータは、ルートリソースクォータと呼ばれます。 各ルートリソースクォータは、複数の子リソースクォータに分割できます。 各子リソースのクォータをさらに分割することもできます。

image

手順

  1. RAM ユーザーを作成します。 詳細については、「RAM ユーザーの作成」をご参照ください。

  2. カスタムポリシーを作成します。 カスタムポリシーの作成方法については、「カスタムポリシーの作成」トピックの「JSONタブでカスタムポリシーを作成する」をご参照ください。

    さまざまなカスタムポリシーによって付与される権限の詳細については、このトピックの「」を参照してください。

  3. カスタムポリシーをRAMユーザーにアタッチします。 詳細については、「RAM ユーザーへの権限の付与」をご参照ください。

リソースプールの管理権限

リソースプールを管理する権限を持つRAMユーザーは、リソースプール内の専用リソースグループを表示作成更新、および削除できます。

サンプルポリシー設定:

説明

RAMユーザーにリソースプールを管理する権限を付与するには、そのユーザーにVirtual Private Cloud (VPC) 権限を付与する必要があります。 これは、ユーザーがPAIコンソールの [リソースプール] ページで専用リソースグループを作成するときにVPC設定が必要になるためです。

{
  "Version": "1",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "pai:*ResourceGroup*"
      ],
      "Resource": [
        "*"
      ]
    },
    {
      "Effect": "Allow",
      "Action": [
        "vpc:DescribeVpcs",
        "vpc:DescribeVSwitches",
        "ecs:DescribeSecurityGroups"
      ],
      "Resource": "*"
    }
  ]
}

ルートリソースクォータを作成、スケーリング、および削除する権限

ルートリソースクォータには、リソースプール内の1つ以上の専用リソースグループからのリソースが含まれます。 RAMユーザーにルートリソースクォータを作成、更新、スケーリング、または削除する権限を付与するには、リソースプールとクォータを管理する権限をユーザーに付与する必要があります。

次の例では、リソースプール内の3つの専用リソースグループresourcegroup1resourcegroup2、およびresourcegroup3の取得、リスト、および更新権限を定義します。 これは、許可されたRAMユーザーが3つの専用リソースグループのみを使用してルートリソースクォータを作成できることを示しています。

"acs:pai:*:*:quota/*" は、許可されたRAMユーザーが、resourcegroup1resourcegroup2、およびresourcegroup3のリソースを使用して作成されたすべてのリソースクォータを管理できることを示します。

{
  "Version": "1",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "pai:GetResourceGroup",
        "pai:ListResourceGroups",
        "pai:UpdateResourceGroup"
      ],
      "Resource": [
        "acs:pai:*:*:resourcegroup/resourcegroup1",
        "acs:pai:*:*:resourcegroup/resourcegroup2",
        "acs:pai:*:*:resourcegroup/resourcegroup3"
      ]
    },
    {
      "Effect": "Allow",
      "Action": [
        "pai:CreateQuota",
        "pai:UpdateQuota",
        "pai:ScaleQuota",
        "pai:DeleteQuota",
        "pai:GetQuota",
        "pai:ListQuotas"
      ],
      "Resource": [
        "acs:pai:*:*:quota/*"
      ]
    }
  ]
}

ルートリソースクォータの管理権限

ルートリソースクォータを管理するための権限には、リソースプールを管理するための権限は必要ありません。 たとえば、quota1を管理する権限を持つRAMユーザーは、次の操作を実行できます。

  • quota1を表示します。

  • クォータのタグや説明など、quota1のメタデータを更新します。

  • クォータの作成、更新、スケール、削除など、quotasの子リソースクォータの管理

次のquota1のサンプルポリシー設定には、2つのステートメントが含まれています。 最初のステートメントでは、quota1の子リソースのクォータを管理する権限を定義し、2番目のステートメントでは、quota1を管理する権限を定義します。

{
  "Version": "1",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "pai:CreateQuota",
        "pai:UpdateQuota",
        "pai:ScaleQuota",
        "pai:DeleteQuota",
        "pai:GetQuota",
        "pai:ListQuotas"
      ],
      "Resource": [
        "acs:pai:*:*:quota/quota1/*"
      ]
    },
    {
      "Effect": "Allow",
      "Action": [
        "pai:UpdateQuota",
        "pai:GetQuota",
        "pai:ListQuotas"
      ],
      "Resource": [
        "acs:pai:*:*:quota/quota1"
      ]
    }
  ]
}

子リソースのクォータを管理する権限

たとえば、quota1.2を管理する権限を持つRAMユーザーは、次の操作を実行できます。

  • ビューquota1.2。

  • クォータのタグや説明など、quota1.2のメタデータを更新します。

  • quota1.2の子リソースのクォータの管理 (クォータの作成、更新、スケール、削除など) 。

quota1.2の次のサンプルポリシー設定には、2つのステートメントがあります。 最初のステートメントは、quota1.2の子リソースのクォータを管理する権限を定義し、2番目のステートメントは、quota1.2を管理する権限を定義します。

{
  "Version": "1",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "pai:CreateQuota",
        "pai:UpdateQuota",
        "pai:ScaleQuota",
        "pai:DeleteQuota",
        "pai:GetQuota",
        "pai:ListQuotas"
      ],
      "Resource": [
        "acs:pai:*:*:quota/*/quota1.2/*"
      ]
    },
    {
      "Effect": "Allow",
      "Action": [
        "pai:UpdateQuota",
        "pai:GetQuota",
        "pai:ListQuotas"
      ],
      "Resource": [
        "acs:pai:*:*:quota/*/quota1.2"
      ]
    }
  ]
}

VPC権限

中国 (Ulanqab) リージョンでLingjunリソースを購入した場合、PAIコンソールでルートおよび子リソースクォータを作成するときにVPCを設定できます。 この場合、クォータに関連するポリシーにVPC権限も追加する必要があります。 サンプルポリシー設定:

{
  "Version": "1",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "vpc:DescribeVpcs",
        "vpc:DescribeVSwitches",
        "ecs:DescribeSecurityGroups"
      ],
      "Resource": "*"
    }
  ]
}