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

Container Service for Kubernetes:タグを使用した詳細なアクセスの制御の実装

最終更新日:Nov 20, 2025

タグを使用してクラウドリソースを識別し、分類します。Resource Access Management (RAM) を使用すると、ユーザー ID を管理し、権限ポリシーを通じてクラウドリソースへのアクセスを制御できます。タグと RAM 権限ポリシーを組み合わせることで、異なるユーザーに特定のクラスターへのアクセスを許可する詳細なアクセスの制御を実装できます。

タグを使用して RAM ユーザーの権限を制御すること (タグベースの権限付与) は、次のように機能します。

手順

Alibaba Cloud アカウントを使用してカスタム権限ポリシーを作成します。このポリシーでは、RAM ユーザーが Alibaba Cloud Container Service for Kubernetes (ACK) クラスターを管理するために特定のタグを指定することを要求します。次に、このポリシーを RAM ユーザーにアタッチします。

  1. RAM ユーザーの作成

  2. Alibaba Cloud アカウントで RAM コンソールにログインします。カスタム権限ポリシーを作成します。手順については、「カスタムポリシーの作成」をご参照ください。ポリシーでは、Condition 要素を使用して、クラウドリソースにタグ条件を設定することでアクセスを制限します。

    説明

    Alibaba Cloud アカウントは、アカウント内のすべてのリソースに対する完全な管理者権限を持っています。または、RAM ユーザーを作成し、AdministratorAccess 権限を付与してアカウント管理者として指定することもできます。この管理者は、アカウント内のすべてのクラウドリソースを管理できます。詳細については、「RAM ユーザーをアカウント管理者として作成する」をご参照ください。

    ACK でサポートされている条件キーは次のとおりです:

    タグ条件キー

    説明

    acs:RequestTag

    API リクエストに特定のタグを含める必要があります。

    タグパラメーターを含まないリクエストは、権限付与に失敗します。

    acs:ResourceTag

    特定のタグを持つリソースへのアクセスを制限します。

    リソース ID パラメーターを含まないリクエストは、権限付与に失敗します。

    ポリシーの例については、「」をご参照ください。

  3. カスタム権限ポリシーを RAM ユーザーにアタッチします。手順については、「RAM ユーザーへの権限付」をご参照ください。ポリシーを定義する際は、「タグをサポートするリソースタイプ」および「タグレベルの権限付与をサポートしない操作」のセクションをご参照ください。

    説明

    既存の RAM ユーザーに権限を付与する前に、重複や競合を避けるために、現在の権限ポリシーを確認してください。

このセクションでは、さまざまなシナリオのポリシー例を示します。これらのテンプレートを開始点として使用し、最小権限の原則に従って設定してください。

権限ポリシー

説明

結果

{
    "Version": "1",
    "Statement": [{
        "Effect": "Allow",
        "Action": "cs:CreateCluster",
        "Resource": "*",
        "Condition": {
            "StringEquals": {
                "acs:RequestTag/test": "foo"
            }
        }
    }]
}

test:foo タグを持つクラスターのみの作成を許可します。

  • クラスターの作成時に advanced optionstest:foo タグを追加すると、作成は成功します。

  • test:foo タグなしで ACK クラスターを作成しようとすると、次のエラーで失敗します: ack

{
    "Version": "1",
    "Statement": [{
        "Effect": "Allow",
        "Action": [
            "cs:DescribeClustersV1",
            "cs:GetClusters"
        ],
        "Resource": "*",
        "Condition": {
            "StringEquals": {
                "acs:ResourceTag/test": "foo"
            }
        }
    }]
}

クラスターリストで test:foo タグを持つクラスターのみの表示を許可します。

  1. ACK コンソールにログインします。左側のナビゲーションウィンドウで、[クラスター] をクリックします。

  2. リスト内のクラスターを表示します。

    • test:foo タグを持つクラスターがない場合、クラスターリストは空になります。

    • クラスターに test:foo タグを追加すると、リストに表示されます。

{
    "Version": "1",
    "Statement": [{
        "Effect": "Deny",
        "Action": [
            "cs:UntagResources",
            "cs:ListTagResources",
            "cs:TagResources",
            "cs:ModifyClusterTags"
        ],
        "Resource": "*"
    }]
}

ユーザーによるタグの変更を禁止します。

タグを変更しようとすると、次のエラーで失敗します:

tag

参考

タグをサポートするリソースタイプ

ACK では、次の表にリストされているリソースタイプのみがタグベースの権限付与をサポートします。

サービス名

サービスコード

リソースタイプ

ACK

cs

cluster: クラスター

タグベースの権限付与をサポートしない操作

次の表の操作は、タグベースの権限付与をサポートしません。ポリシーの例については、「カスタム権限ポリシーの例」をご参照ください。

操作

説明

cs:OpenAckService

ACK を有効にする

cs:ListOperationPlans

クラスターの自動 O&M スケジュールを照会する

cs:CancelOperationPlan

保留中の自動 O&M プランをキャンセルする

cs:DescribeTaskInfo

タスクの詳細を照会する

cs:PauseTask

タスクを一時停止する

cs:CancelTask

タスクをキャンセルする

cs:ResumeTask

タスクを復元する

cs:CreateKubernetesTrigger

アプリケーショントリガーを作成する

cs:DeleteTriggerHook

トリガーを削除する

cs:CreateTemplate

オーケストレーションテンプレートを作成する

cs:DeleteTemplate

オーケストレーションテンプレートを削除する

cs:UpdateTemplate

オーケストレーションテンプレートを更新する

cs:DescribeTemplates

すべてのオーケストレーションテンプレートを照会する

cs:DescribeTemplateAttribute

オーケストレーションテンプレートの詳細を照会する

cs:ListUserKubeConfigStates

特定のユーザーに属するすべてのクラスターの KubeConfig ステータスリストを照会する

cs:ListAddons

利用可能なコンポーネントのリストを照会する

cs:DescribeAddon

特定のコンポーネントに関する情報を照会する

cs:DescribeAddons

すべてのコンポーネントに関する情報を照会する

cs:DescribeEvents

イベントの詳細を照会する

cs:DescribeEventsForRegion

特定のリージョン内のイベントを照会する

cs:DescribeKubernetesVersionMetadata

Kubernetes バージョンの詳細を照会する

cs:CheckServiceRole

特定のサービスロールが割り当てられているかどうかを確認する

cs:DescribePatternTypes

インスタンスタイプを照会する

cs:CheckUserClustersActivity

特定のクラスター内のユーザーのアクティブステータスを確認する

cs:CreateSessionMessage

ACK AI アシスタントセッションを作成する

cs:UpdateMessageFeedback

ACK AI アシスタントメッセージのフィードバックを更新する

cs:DescribeKubeConfigManagementTaskList

kubeconfig ファイルに関連するタスクを一覧表示する

cs:ListHaveKubeconfigDeletedAccounts

アカウントが RAM ユーザーまたは RAM ロールを削除したが、kubeconfig ファイルがアクティブなままであるユーザーを照会する

cs:ListKubeConfigRecycle

現在の Alibaba Cloud アカウント内のゴミ箱にある kubeconfig ファイルを一覧表示する

cs:RestoreKubeConfigRecycleItem

ゴミ箱から削除された kubeconfig ファイルを復元する

cs:RestoreMultiKubeConfigRecycleItems

ゴミ箱から削除された kubeconfig ファイルをバッチで復元する

cs:DeleteKubeConfigRecycleItem

ゴミ箱から kubeconfig ファイルを完全に削除する

cs:DescribeKubernetesVersionMetadata

Kubernetes バージョンの詳細を照会する

cs:DescribePolicies

ポリシーリストを照会する

cs:DescribePolicyDetails

特定のポリシーの詳細を照会する

cs:DescribeUserInstances

既存のノードを追加するために必要なノードリストを取得する

cs:DescribeUserPermission

RAM ユーザーまたは RAM ロールの権限を照会する

cs:UpdateUserPermissions

特定の RAM ユーザーまたは RAM ロールの Role-Based Access Control (RBAC) 権限を更新する

cs:CleanUserPermissions

特定のユーザーの証明書と関連する RBAC 権限をクリアする

cs:QueryAlertContact

アラート連絡先を照会する

cs:AddOrUpdateAlertContact

アラート連絡先を更新する

cs:DeleteAlertContact

アラート連絡先を削除する

cs:QueryAlertContactGroup

アラートグループを照会する

cs:AddOrUpdateAlertContactGroup

アラートグループを更新する

cs:DeleteAlertContactGroup

アラートグループを削除する

cs:DescribeUserQuota

クォータ情報を照会する

cs:ListOperationPlans

自動 O&M タスクプランのリストを照会する

cs:CancelOperationPlan

自動 O&M タスクプランをキャンセルする

cs:DescribeTasks

タスクリストを照会する

カスタム権限ポリシーの例

重要

アカウントレベルの権限を持つ RAM ユーザーまたは RAM ロールは、アカウント全体のリソースに対して操作を実行できます。RAM ユーザーまたは RAM ロールに付与される権限が期待どおりであり、最小権限の原則に従っていることを確認してください。

タグベースの権限付与をサポートしないリソースタイプの場合、タグ条件付きで権限を付与しても効果はありません。これらのリソースにはカスタム権限ポリシーを作成する必要があります。権限を付与する際は、リソース範囲を [アカウントレベル] に設定し、ポリシーコンテンツにタグ条件を指定しないでください。

image次の 2 つのポリシー例は、必要に応じて変更できます。

  • Action 要素には、タグベースの権限付与をサポートしないすべての読み取り専用操作がリストされています。

    {
      "Version": "1",
      "Statement": [
        {
          "Effect": "Allow",
          "Action": [
            "cs:DescribeAddon",
            "cs:DescribeAddons",
            "cs:DescribeEvents",
            "cs:DescribeEventsForRegion",
            "cs:DescribeKubeConfigManagementTaskList",
            "cs:DescribeKubernetesVersionMetadata",
            "cs:DescribePatternTypes",
            "cs:DescribePolicies",
            "cs:DescribePolicyDetails",
            "cs:DescribeTaskInfo",
            "cs:DescribeTemplateAttribute",
            "cs:DescribeTemplates",
            "cs:DescribeUserInstances",
            "cs:DescribeUserPermission",
            "cs:ListAddons",
            "cs:ListHaveKubeconfigDeletedAccounts",
            "cs:ListKubeConfigRecycle",
            "cs:ListOperationPlans",
            "cs:ListUserKubeConfigStates",
            "cs:QueryAlertContact",
            "cs:QueryAlertContactGroup",
            "cs:CheckServiceRole",
            "cs:DescribeTasks",
            "cs:DescribeUserQuota",
            "cs:ListOperationPlans",
            "cs:CheckUserClustersActivity"
          ],
          "Resource": "*"
        }
      ]
    }
  • Action 要素には、タグベースの権限付与をサポートしないすべての操作がリストされています。

    {
      "Version": "1",
      "Statement": [
        {
          "Effect": "Allow",
          "Action": [
            "cs:AddOrUpdateAlertContact",
            "cs:AddOrUpdateAlertContactGroup",
            "cs:CancelOperationPlan",
            "cs:CancelTask",
            "cs:CheckServiceRole",
            "cs:CheckUserClustersActivity",
            "cs:CleanUserPermissions",
            "cs:CreateKubernetesTrigger",
            "cs:CreateSessionMessage",
            "cs:CreateTemplate",
            "cs:DeleteAlertContact",
            "cs:DeleteAlertContactGroup",
            "cs:DeleteKubeConfigRecycleItem",
            "cs:DeleteTemplate",
            "cs:DeleteTriggerHook",
            "cs:DescribeAddon",
            "cs:DescribeAddons",
            "cs:DescribeEvents",
            "cs:DescribeEventsForRegion",
            "cs:DescribeKubeConfigManagementTaskList",
            "cs:DescribeKubernetesVersionMetadata",
            "cs:DescribePatternTypes",
            "cs:DescribePolicies",
            "cs:DescribePolicyDetails",
            "cs:DescribeTaskInfo",
            "cs:DescribeTemplateAttribute",
            "cs:DescribeTemplates",
            "cs:DescribeUserInstances",
            "cs:DescribeUserPermission",
            "cs:ListAddons",
            "cs:ListHaveKubeconfigDeletedAccounts",
            "cs:ListKubeConfigRecycle",
            "cs:ListOperationPlans",
            "cs:ListUserKubeConfigStates",
            "cs:OpenAckService",
            "cs:DescribeTasks",
            "cs:PauseTask",
            "cs:QueryAlertContact",
            "cs:QueryAlertContactGroup",
            "cs:RestoreKubeConfigRecycleItem",
            "cs:RestoreMultiKubeConfigRecycleItems",
            "cs:ResumeTask",
            "cs:UpdateMessageFeedback",
            "cs:DescribeUserQuota",
            "cs:ListOperationPlans",
            "cs:CancelOperationPlan",
            "cs:UpdateTemplate",
            "cs:UpdateUserPermissions"
          ],
          "Resource": "*"
        }
      ]
    }