デフォルトでは、Resource Access Management (RAM) ユーザーおよび RAM ロールには、Alibaba Cloud サービスの OpenAPI を呼び出す権限がありません。ユーザーまたはロールが Container Service for Kubernetes (ACK) の OpenAPI を呼び出す前に、システムポリシーまたはカスタムポリシーを RAM ユーザーまたは RAM ロールに付与する必要があります。このトピックでは、クラスターとクラウドリソースに対する権限を RAM ユーザーと RAM ロールに付与する方法について説明します。
システムポリシーを使用した権限付与
システムポリシーは、グローバルリソースに対する読み取りおよび書き込み権限を付与します。RAM ユーザーまたは RAM ロールが Alibaba Cloud アカウントに属するすべてのクラスターに対する運用管理権限を必要とする場合、システムポリシーを使用して迅速に権限を付与できます。次の表に、ACK の一般的なシステムポリシーをリストします。
システムポリシーのフルアクセス権限は、高いセキュリティリスクをもたらします。これらの権限は慎重に付与してください。
Alibaba Cloud アカウントは、アカウント内のリソースに対する完全な管理権限を持っています。RAM ユーザーを作成し、AdministratorAccess 権限を付与して、アカウント管理者として使用することもできます。この管理者は、アカウント配下のすべてのクラウドリソースを管理できます。詳細については、「アカウント管理者として RAM ユーザーを作成する」をご参照ください。
RAM 管理者として [RAM コンソール] にログインします。
左側のナビゲーションウィンドウで、 を選択します。
[ユーザー] ページで、目的の RAM ユーザーを見つけ、[操作] 列の [権限の追加] をクリックします。

複数の RAM ユーザーを選択し、ページ下部の [権限の追加] をクリックして、一度に RAM ユーザーに権限を付与することもできます。
[権限の追加] パネルで、RAM ユーザーに権限を付与します。
[リソース範囲] パラメーターを設定します。
[アカウント]: 権限付与は現在の Alibaba Cloud アカウントで有効になります。
[リソースグループ]: 権限付与は特定のリソースグループで有効になります。
重要リソース範囲パラメーターにリソースグループを選択した場合、目的のクラウドサービスがリソースグループをサポートしていることを確認してください。詳細については、「リソースグループと連携するサービス」をご参照ください。リソースグループに権限を付与する方法の詳細については、「リソースグループを使用して RAM ユーザーに特定の ECS インスタンスを管理する権限を付与する」をご参照ください。
プリンシパルパラメーターを設定します。
プリンシパルは、権限を付与する RAM ユーザーです。現在の RAM ユーザーが自動的に選択されます。
付与するシステムポリシーを選択します。
[確認] をクリックします。
[閉じる] をクリックします。
カスタムポリシーを使用した権限付与
カスタムポリシーは、RAM ユーザーまたは RAM ロールに対して、クラウドリソースへの詳細なアクセスの制御を提供します。クラウドリソースごとにセキュリティとアクセスの制御の要件が異なる場合があります。特定のクラスターに対するユーザーの権限を制限するなど、詳細なアクセスの制御を実装するには、カスタムポリシーを作成できます。RAM ユーザーまたは RAM ロールがソフトウェア開発キット (SDK) に基づくカスタム開発を必要とする場合、API レベルの権限コントロールを実装することもできます。RAM がサポートする権限付与項目については、「権限付与情報」をご参照ください。
カスタムポリシーを作成する前に、ポリシー言語の基本的な構造と構文を理解する必要があります。詳細については、「アクセスポリシーの基本要素」をご参照ください。
ステップ 1: カスタムポリシーの作成
RAM 管理者として [RAM コンソール] にログインします。
左側のナビゲーションウィンドウで、 を選択します。
[ポリシー] ページで、[ポリシーの作成] をクリックします。

[ポリシーの作成] ページで、[スクリプト] タブをクリックし、ポリシーのドキュメントを入力します。
{ "Statement": [{ "Action": [ "cs:Get*", "cs:List*", "cs:Describe*", "cs:ScaleCluster", "cs:DeleteCluster" ], "Effect": "Allow", "Resource": [ "acs:cs:*:*:cluster/cluster-id" ] }], "Version": "1" }パラメーター
説明
Action
付与する権限。すべてのアクションでワイルドカード文字 (*) がサポートされます。
Resource
このパラメーターは、次の方法で構成できます。
cluster-idを実際のクラスター ID に置き換えてください。単一のクラスターに権限を付与する
"Resource": [ "acs:cs:*:*:cluster/cluster-id" ]複数のクラスターに権限を付与する
"Resource": [ "acs:cs:*:*:cluster/cluster-id", "acs:cs:*:*:cluster/cluster-id" ]すべてのクラスターに権限を付与する
"Resource": [ "*" ]
[ポリシーの作成] ページで、[OK] をクリックします。
[ポリシーの作成] ダイアログボックスで、[ポリシー名] と [メモ] を入力し、[OK] をクリックします。
ステップ 2: RAM ユーザーまたは RAM ロールにカスタムポリシーを付与する
カスタムポリシーを付与するプロシージャは、システムポリシーを付与するプロシージャと同じです。ポリシーを選択するときは、作成したカスタムポリシーを選択します。詳細については、「システムポリシーを使用した権限付与」をご参照ください。
カスタムポリシーの権限付与の例
例 1: 特定のクラスターに読み取り専用権限を付与する
{
"Statement": [
{
"Action": [
"cs:Get*",
"cs:List*",
"cs:Describe*"
],
"Effect": "Allow",
"Resource": [
"acs:cs:*:*:cluster/<your-cluster-id>" # ターゲットクラスターの ID。
]
}
],
"Version": "1"
}例 2: 特定の OSS バケットに読み取り権限を付与する
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"oss:ListBuckets",
"oss:GetBucketStat",
"oss:GetBucketInfo",
"oss:GetBucketTagging",
"oss:GetBucketAcl"
],
"Resource": "acs:oss:*:*:*"
},
{
"Effect": "Allow",
"Action": [
"oss:ListObjects",
"oss:GetBucketAcl"
],
"Resource": "acs:oss:*:*:myphotos"
},
{
"Effect": "Allow",
"Action": [
"oss:GetObject",
"oss:GetObjectAcl"
],
"Resource": "acs:oss:*:*:myphotos/*"
}
]
}例 3: クラスターレベルの制限をサポートしない OpenAPI 操作に権限を付与する
DescribeEvents などの一部の OpenAPI 操作は、クラスターレベルの権限付与をサポートしていません。これらの操作に対する権限を RAM ユーザーまたは RAM ロールに付与するには、Resource 要素にクラスター ID を指定しないでください。次の表は、変更前と変更後の RAM アクセスポリシーを比較したものです。
変更前の RAM アクセスポリシー | 変更後の RAM アクセスポリシー |
| |
次のステップ
RAM 権限付与を行った後、クラスター内の Kubernetes リソースにアクセスするには、RBAC 権限付与を構成する必要があります。詳細については、「RBAC を使用してクラスター内のリソースに対する操作を承認する」をご参照ください。
ACK クラスターで実行され、他の Alibaba Cloud サービスにアクセスするアプリケーションのセキュリティを向上させるために、ServiceAccount の RAM 権限を構成して、RRSA を使用して Pod の権限を分離できます。詳細については、「RRSA を使用して ServiceAccount の RAM 権限を構成し、Pod の権限を分離する」をご参照ください。
詳細な RAM 権限付与については、「タグを使用して詳細な権限管理を実装する」および「ACK マネージドクラスターのワーカー RAM ロールの権限を手動で集約する」をご参照ください。
権限付与プロセス中に発生する可能性のある問題の解決方法については、「権限管理に関するよくある質問」をご参照ください。