このトピックでは、Container Registry Enterprise Edition インスタンスの特定の名前空間に対する読み取りおよび書き込み権限を付与するカスタムポリシーを作成する方法について説明します。
カスタムポリシーの作成
RAM 管理者として RAM コンソールにログインします。
左側のナビゲーションペインで、 を選択します。
ポリシー ページで、ポリシーの作成 をクリックします。
ポリシーの作成 ページで、JSON タブをクリックします。
ページには JSON エディターが表示されます。デフォルトのポリシーテンプレートには、
Version要素 ("1"に設定) とStatement配列が含まれています。各ステートメントには、Effect(デフォルトは"Allow")、Action、Resource、およびCondition要素が含まれます。ActionとResource要素を入力する必要があります。以下のポリシーコンテンツをエディターにコピーし、
instanceidとnamespaceプレースホルダーを実際の値に置き換えます。追加の権限を付与するには、サポートされている
ActionおよびResourceの形式について、「Container Registry の認証ルール」をご参照ください。ポリシー構文の詳細については、「ポリシーの構造と構文」をご参照ください。説明アスタリスク (
*) はワイルドカードとして機能します。 たとえば、cr:ListInstance*は、cr:ListInstanceで始まるすべてのアクションを許可します。acs:cr:*:*:repository/$instanceid/$namespace/*をacs:cr:*:*:repository/cri-123456/ns/*に設定すると、このポリシーはすべてのリージョンにわたって、インスタンスcri-123456内のns名前空間に対するすべての権限を付与します。{ "Statement": [ { "Effect": "Allow", "Action": [ "cr:ListInstance*", "cr:GetInstance*", "cr:ListSignature*" ], "Resource": "*" }, { "Action": [ "cr:*" ], "Effect": "Allow", "Resource": [ "acs:cr:*:*:repository/$instanceid/$namespace/*", "acs:cr:*:*:repository/$instanceid/$namespace" ] }, { "Action": [ "cr:List*" ], "Effect": "Allow", "Resource": [ "acs:cr:*:*:repository/$instanceid/*", "acs:cr:*:*:repository/$instanceid/*/*" ] } ], "Version": "1" }OK をクリックします。ポリシーの作成 ダイアログボックスで、ポリシー名 と [Description] を入力します。
カスタムポリシーのアタッチ
コンソール
RAM コンソールには 2 つのエントリポイントがあり、いずれも単一および一括権限付与をサポートしています。
-
ユーザー ページ:プリンシパルは、選択したユーザーに基づいて自動的に選択されます。ユーザー中心のワークフローに最適です。
-
[権限付与] ページ:プリンシパルを手動で選択し、アカウント全体のすべての認可レコードを表示できます。権限中心のワークフローに最適です。
ヒント: 大規模な管理を行うには、同一の職責を持つ RAM ユーザーをユーザーグループに追加し、そのグループに権限を付与します。[ID] > [ユーザーグループ] に移動してグループを管理します。
[ユーザー] ページから
-
RAM コンソールにログオンします。
-
左側のナビゲーションペインで、 を選択します。
-
ユーザー ページで、対象の RAM ユーザーを探し、操作 列 > ポリシーのアタッチ をクリックします。
また、複数の RAM ユーザーを選択し、ユーザーリストの下にあるポリシーのアタッチ をクリックして一括で権限を付与することもできます。
-
[権限の付与] パネルで、次の設定を行います。
-
[リソーススコープ]:
-
[アカウントレベル]:権限は、Alibaba Cloud アカウント内のすべてのリソースに適用されます。
-
[リソースグループ レベル]:権限は、指定されたリソースグループ内でのみ適用されます。ログイン後、RAM ユーザーは上部のナビゲーションバーで承認されたリソースグループに切り替える必要があります。
説明-
システムは、高リスクのシステムポリシー (AdministratorAccess や AliyunRAMFullAccess など) に警告インジケーターを表示します。これらのポリシーは通常、すべてのクラウドリソースへのフルコントロールまたは RAM の完全な管理権限を付与します。これらのポリシーは慎重に付与してください。
-
リソースグループの権限付与の例については、「特定の ECS インスタンスへの RAM ユーザーアクセスの制御」をご参照ください。
-
-
-
[プリンシパル]:
プリンシパルは権限を受け取る RAM ユーザーです。[ユーザー] ページからの場合、システムが現在のユーザーを自動選択します。[権限付与] ページからの場合は、手動でユーザーを選択する必要があります。一括選択がサポートされています。
-
[権限ポリシー]:
-
[システムポリシー]: 検索して選択します。製品名 (例:
ECS、OSS)、アクセスレベル (例:ReadOnly、FullAccess)、または完全なポリシー名で絞り込みます。たとえば、財務管理 (経費とコスト) の権限を付与するには、BSSを検索してAliyunBSSFullAccess(請求およびコスト管理へのフルアクセス) やその他の財務関連のポリシーを見つけます。以下の表は、よく使用される Alibaba Cloud 製品のシステムポリシー名をリストしており、適切なポリシーを素早く見つけるのに役立ちます。
製品
システムポリシー名
アクセスレベル
請求とコスト管理 (財務)
AliyunBSSFullAccessフルアクセス
Cloud Monitor
AliyunCloudMonitorReadOnlyAccess読み取り専用
China Gateway (Website Builder)
AliyunWebsiteBuildFullAccessフルアクセス
Alibaba Cloud DevOps
AliyunYunxiaoFullAccessフルアクセス
Model Studio (Bailian)
AliyunBailianFullAccessフルアクセス
Alibaba Cloud DNS
AliyunDNSFullAccessフルアクセス
SSL Certificates Service
AliyunYundunCertFullAccessフルアクセス
Cloud Phone
AliyunECDFullAccessフルアクセス
Support Center
AliyunSupportFullAccessフルアクセス
Resource Center
AliyunResourceCenterFullAccessフルアクセス
AgentBay
AliyunAgentBayFullAccessフルアクセス
Security Center
AliyunYundunSASFullAccessフルアクセス
対象製品のポリシーが見つからない場合は、システムポリシーリファレンスで完全なリストをご確認いただくか、詳細なアクセス制御のためにカスタムポリシーを作成してください。
-
[カスタムポリシー]: 付与する前にカスタムポリシーを作成する必要があります。
-
すべて選択のページネーション制限:ポリシーリストはページ分割されています。すべて選択は現在のページにのみ適用されます。ページを切り替えた後、以前に選択したポリシーは選択リストに残りますが、新しいページのポリシーは自動的に選択されません。ページごとに選択する必要があります。
-
管理者権限の迅速な付与:管理者権限を付与する場合は、検索ボックスで
AdministratorAccessを検索して直接選択してください。ページごとにポリシーを選択する必要はありません。このポリシーを選択すると、高リスク権限付与の警告がトリガーされます。
-
-
(任意) [説明]:監査用に、承認理由またはシナリオを入力します。
-
[確認] をクリックします。
-
-
認可結果を確認し、[閉じる] をクリックします。
[権限付与] ページから
-
RAM コンソールにログオンします。
-
左側のナビゲーションペインで、を選択します。
-
[権限付与] ページで、[権限付与] をクリックします。
-
[権限付与] パネルで、プリンシパルを選択し、上記と同じ設定を構成します。
-
承認結果を確認し、[閉じる] をクリックします。
RAM コンソールの概要ページの [クイックスタート] 機能を使用して作成された RAM ユーザーには、選択したシナリオに基づいて対応するシステムポリシーが自動的に付与されるため、手動での権限付与は不要です。
-
スーパーユーザー:
PowerUserAccessポリシーが自動的に付与されます。このユーザーはクラウドサービスとリソースを管理できますが、RAM ID とその権限、リソースディレクトリ、または請求アカウントは管理できません。 -
アカウント管理者:
AdministratorAccessポリシーが自動的に付与されます。このユーザーは、RAM ID と権限を含むすべての Alibaba Cloud リソースを管理できます。
これらのオプションは、スーパー管理者権限が本当に必要な場合にのみ使用してください。通常の操作では、最小権限の原則に従い、特定のタスクに必要な権限のみを付与してください。
OpenAPI
付与する [カスタムポリシー]
-
CreatePolicy を呼び出して [カスタムポリシー] を作成します。ポリシー構文については、「権限ポリシーの要素」および「サンプルポリシーの概要」をご参照ください。
-
AttachPolicyToUser を呼び出して、[アカウントレベル] でポリシーを付与します (
PolicyTypeをCustomに設定します)。別の方法として、 AttachPolicy を呼び出し、[リソースグループレベル] でポリシーを付与することもできます。
付与: [システムポリシー]
-
AttachPolicyToUser API を呼び出して、システムポリシーを RAM ユーザーにアタッチします (
PolicyTypeをSystemに設定)。使用可能なPolicyNameの値については、システムポリシーリファレンスをご参照ください。 -
または、 AttachPolicy を呼び出して、[リソースグループレベル]でポリシーを付与することもできます。
Container Registry コンソールにログインした後、RAM ユーザーは権限が付与された名前空間でイメージのビルド、プッシュ、プルができます。