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

:[製品変更] ACK APIがユーザー認証を強化

最終更新日:Nov 14, 2024

2021年8月18日以降、Container Service for Kubernetes (ACK) は、Resource Access Management (RAM) のユーザーとロールがAPI呼び出しを行うときに、強化された認証を実装します。 不正なAPI呼び出しによる認証エラーを防ぐには、Alibaba Cloudアカウント内のRAMユーザーとロールにアタッチされているRAMポリシーを確認し、必要に応じて必要な権限を追加する必要があります。

影響

強化された認証を使用した後、RAMユーザーまたはロールが不正な操作を実行しようとすると、ACKコンソールまたはAPIは、RAMポリシーForbiddenまたはSTSTokenポリシーForbiddenの内容を含むエラーメッセージを返します。 操作の実行に必要なRAMアクションもエラーメッセージに含まれています。

次のエラーメッセージに、cs:DescribeEventsという名前のRAMアクションが含まれています。

RAMポリシーForbidden for action cs:DescribeEvents

次の表に、API操作と、API操作を呼び出すために必要なRAMアクションを示します。 RAMユーザーまたはロールが次の表のAPI操作を呼び出す権限がない場合は、RAMコンソールにログインし、RAMユーザーまたはロールに必要な権限を付与します。

API 操作

RAMアクション

説明

DescribeEvents

cs:DescribeEvents

ユーザーイベントの照会

StartAlert

cs:StartAlert

アラートルールの有効化

StopAlert

cs:StopAlert

アラートルールの無効化

DeleteAlertContact

cs:DeleteAlertContact

アラート連絡先の削除

DeleteAlertContactGroup

cs:DeleteAlertContactGroup

アラート送信先グループの削除

OpenAckService

cs:OpenAckService

ACKの有効化

DescribeClusterResources

cs:DescribeClusterResources

クラスターIDでクラスター内のすべてのリソースを照会

DescribeUserQuota

cs:DescribeUserQuota

リソースクォータの照会

DescribeClustersV1

cs:DescribeClustersV1

すべてのクラスターに関する詳細の照会

DescribeExternalAgent

cs:DescribeExternalAgent

クラスターIDによるクラスター登録プロキシの照会

DescribeKubernetes VersionMetadata

cs:DescribeKubernetes VersionMetadata

サポートされているKubernetesバージョンの照会

DescribeClusterAddonUpgradeStatus

cs:DescribeClusterAddonUpgradeStatus

クラスターアドオンのアップグレードの進行状況を照会

DescribeClusters

cs:DescribeClusters

KubernetesクラスターとSwarmクラスターを含む、アカウント内のすべてのクラスターを照会

DescribeClusterNamespaces

cs:DescribeClusterNamespaces

クラスター内の名前空間の照会

ModifyCluster

cs:ModifyCluster

クラスターIDによるクラスター設定の変更

MigrateCluster

cs:MigrateCluster

クラスターの移行

UpdateK8sClusterUserConfigExpire

cs:UpdateK8sClusterUserConfigExpire

カスタム設定の有効期限を更新

DescribeClusterNodes

cs:DescribeClusterNodes

クラスターIDによるクラスター内のすべてのノードの詳細の照会

DescribeClusterAttachScripts

cs:DescribeClusterAttachScripts

クラスターへのインスタンスの追加に使用するスクリプトの照会

GetUpgradeStatus

cs:GetUpgradeStatus

クラスターIDによるクラスターのアップグレードの進行状況の照会

UpgradeCluster

cs:UpgradeCluster

クラスターIDによるクラスターのアップグレード

PauseClusterUpgrade

cs:PauseClusterUpgrade

クラスターのアップグレードを一時停止

CancelClusterUpgrade

cs:CancelClusterUpgrade

クラスターのアップグレードのキャンセル

CreateTemplate

cs:CreateTemplate

オーケストレーションテンプレートの作成

DescribeTemplates

cs:DescribeTemplates

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

DescribeTemplateAttribute

cs:DescribeTemplateAttribute

テンプレートIDによるオーケストレーションテンプレートの詳細の照会

UpdateTemplate

cs:UpdateTemplate

テンプレートIDによるオーケストレーションテンプレートの更新

DeleteTemplate

cs:DeleteTemplate

テンプレートIDでオーケストレーションテンプレートを削除

CreateKubernetesトリガー

cs:CreateKubernetesトリガー

アプリケーションのトリガーの作成

GetKubernetesトリガー

cs:GetKubernetesトリガー

アプリケーションのトリガーをアプリケーション名で照会

DeleteKubernetesトリガー

cs:DeleteKubernetesトリガー

トリガーIDでトリガーを削除

InstallClusterAddons

cs:InstallClusterAddons

クラスターへのコンポーネントのインストール

DescribeAddons

cs:DescribeAddons

サポートされているすべてのコンポーネントの詳細を照会

DescribeClusterAddonsUpgradeStatus

cs:DescribeClusterAddonsUpgradeStatus

コンポーネントのアップグレードの進行状況をコンポーネント名で照会

DescribeClusterAddonsVersion

cs:DescribeClusterAddonsVersion

クラスターIDによるクラスター内のすべてのコンポーネントの詳細の照会

ModifyClusterConfiguration

cs:ModifyClusterConfiguration

マネージドクラスターにのみ適用

UpgradeClusterAddons

cs:UpgradeClusterAddons

コンポーネント名でコンポーネントを指定したバージョンにアップグレード

PauseComponentUpgrade

cs:PauseComponentUpgrade

コンポーネントのアップグレードを一時停止

ResumeComponentUpgrade

cs:ResumeComponentUpgrade

コンポーネントのアップグレードの再開

CancelComponentUpgrade

cs:CancelComponentUpgrade

コンポーネントのアップグレードのキャンセル

UnInstallClusterAddons

cs:UnInstallClusterAddons

コンポーネント名でコンポーネントをアンインストール

CreateAutoscalingConfig

cs:CreateAutoscalingConfig

自動スケーリングの設定

RAMポリシーの変更

次の例は、RAMユーザーまたはロールにアタッチされているRAMポリシーを変更する方法を示しています。 RAM権限付与の詳細については、「RAMを使用したクラスターおよびクラウドリソースへのアクセス許可」をご参照ください。

シナリオ1: RAMユーザーはクラスターでcs:Get * 操作のみを実行でき、クラスターに関連するすべての読み取り専用操作に対する権限が必要です

次のコードブロックは、RAMユーザーがクラスターでcs:Get * アクションのみを実行できる場合のRAMポリシーを示しています:

{
    "Statement": [
        {
            "Action": "cs:Get*",
            "Effect": "Allow",
            "Resource": [
                "acs:cs:*:*:cluster/c2e63856bcd714197 ****"
            ]
        }
    ],
    "バージョン": "1"
} 

RAMユーザーがクラスターに関連するすべての読み取り専用操作に対する権限を必要とする場合は、次のコードブロックに示すようにRAMポリシーを変更します

。{
    "Statement": [
        {
            "Action": [
                "cs:Get*",
                "cs: リスト *" 、
                "cs:Describe *"
            ],
            "Effect": "Allow",
            "Resource": [
                "acs:cs:*:*:cluster/c2e63856bcd714197 ****"
            ]
        }
    ],
    "バージョン": "1"
} 
説明

cs:Get * アクションには、すべての読み取り専用操作は含まれません。 すべての読み取り専用操作に対してRAMユーザーに権限を付与するには、RAMポリシーにcs:List * およびcs:Describe * アクションを追加する必要があります。

シナリオ2: RAMユーザーにクラスターに関連する個々の操作に対する権限を付与

クラスターに関連する個々の操作に対する権限をRAMユーザーに付与するには、RAMポリシーの操作に対応するRAMアクションを追加するだけで済みます。

次のコードブロックは、現在のRAMポリシーを示しています:

{
    "Statement": [
        {
            "Action": [
                "cs:Get*",
                "cs: リスト *" 、
                "cs:Describe *"
            ],
            "Effect": "Allow",
            "Resource": [
                "acs:cs:*:*:cluster/c2e63856bcd714197 ****"
            ]
        }
    ],
    "バージョン": "1"
} 

ModifyCluster操作の権限を強化するには、次のコードブロックに示すように、対応するRAMアクションcs:ModifyClusterをRAMポリシーに追加する必要があります

。
    "Statement": [
        {
            "Action": [
                "cs:Get*",
                "cs: リスト *" 、
                "cs:Describe *" 、
                "cs:ModifyCluster"
            ],
            "Effect": "Allow",
            "Resource": [
                "acs:cs:*:*:cluster/c2e63856bcd714197 ****"
            ]
        }
    ],
    "バージョン": "1"
} 

シナリオ3: 個々のクラスターに固有ではない操作に対するRAMユーザー権限の付与

CreateClusterDescribeClustersDescribeEventsなど、一部のAPI操作は個々のクラスターに固有ではありません。 これらの操作に対してRAMユーザーに権限を付与するには、ResourceセクションでクラスターIDを指定しないでください。

次のコードブロックは、現在のRAMポリシーを示しています:

{
    "Statement": [
        {
            "Action": [
                "cs:Get*",
                "cs: リスト *" 、
                "cs:Describe *"
            ],
            "Effect": "Allow",
            "Resource": [
                "acs:cs:*:*:cluster/c2e63856bcd714197 ****"
            ]
        }
    ],
    "バージョン": "1"
} 

DescribeEvents操作に対する権限を付与するには、次のコードブロックに示すように、対応するRAMアクションcs:DescribeEventsをRAMポリシーに追加する必要があります

。
    "Statement": [
        {
            "Action": [
                "cs:DescribeEvents"
            ],
            "Effect": "Allow",
            "Resource": [
              "*"
            ]
        },
        {
            "Action": [
                "cs:Get*",
                "cs: リスト *" 、
                "cs:Describe *"
            ],
            "Effect": "Allow",
            "Resource": [
                "acs:cs:*:*:cluster/c2e63856bcd714197 ****"
            ]
        }
    ],
    "バージョン": "1"
}