このトピックでは、Resource Access Management (RAM) ユーザーに権限を付与する方法について説明します。
操作手順
-
Alibaba Cloud アカウントを使用して RAM コンソールにログインします。
-
カスタムポリシーを作成します。
-
左側のナビゲーションウィンドウで、 を選択します。
-
ポリシー ページで、ポリシーの作成 をクリックします。
-
ポリシーの作成 ページで、[JSON] タブをクリックします。
説明RAM では、ポリシーを作成するためにビジュアル編集とスクリプト編集の 2 つのメソッドが提供されています。Key Management Service (KMS) リソースのカスタムポリシーを作成するには、スクリプト編集を使用する必要があります。ビジュアル編集メソッドでは、すべての KMS リソースとすべての操作の選択のみがサポートされます。
-
ポリシースクリプトを編集し、[基本情報の編集を続行] をクリックします。
KMS ポリシースクリプトを作成する際、ステートメントを定義する必要があります。ステートメントには、
Effect、Action、Resource、およびオプションのCondition要素が含まれます。詳細については、「付録:KMS でサポートされるリソース、アクション、および条件要素」をご参照ください。説明ポリシーの構造と構文の詳細については、「ポリシーの構造と構文」をご参照ください。
-
ポリシーの名前と説明を入力し、プロンプトに従ってポリシーの内容を確認および最適化します。
-
[OK] をクリックします。
-
-
カスタムポリシーを RAM ユーザーに付与します。
-
左側のナビゲーションウィンドウで、を選択します。
-
ユーザー ページで、対象の RAM ユーザーを見つけ、[操作] 列の [権限の追加] をクリックします。
-
[権限の追加] パネルで、次の設定を構成し、[OK] をクリックします。
パラメーター
説明
リソース範囲
権限が Alibaba Cloud アカウント全体に適用されるか、特定のリソースグループに適用されるかを選択します。KMS はリソースグループをサポートしていません。[アカウント] を選択します。
プリンシパル
権限を受け取る RAM ユーザー。システムは選択された RAM ユーザーを自動的に追加します。他の RAM ユーザーを追加することもできます。
ポリシー
ユースケースに基づいてカスタムポリシーを選択します。
-
付録:KMS でサポートされるリソース、アクション、および条件要素
リソース
KMS によって定義されるリソースタイプには、抽象キーコンテナ、抽象シークレットコンテナ、抽象エイリアスコンテナ、キー、シークレット、およびエイリアスが含まれます。これらのリソースの Alibaba Cloud リソースネーム (ARN) を取得して、RAM ポリシーの Resource 要素で使用できます。たとえば、キーの ARN を表示するには、次の手順を実行します。
Key Management Service コンソールにログインします。上部のナビゲーションバーで、リージョンを選択します。左側のナビゲーションウィンドウで、 を選択します。
-
キー タブで、対象のキーを見つけ、操作 列の 詳細 をクリックします。キーの詳細ページで ARN を確認できます。ARN のフォーマットは、次の表に示すようにリソースタイプによって異なります。
説明${region}と${account}を実際のリージョンと Alibaba Cloud アカウントに置き換えてください。必要に応じてリソース範囲を絞り込むこともできます。${region}はワイルドカード文字 * をサポートしており、これはサポートされているすべてのリージョンを表します。リソースタイプ
ARN
抽象キーコンテナ
acs:kms:${region}:${account}:key
抽象シークレットコンテナ
acs:kms:${region}:${account}:secret
抽象エイリアスコンテナ
acs:kms:${region}:${account}:alias
キー
acs:kms:${region}:${account}:key/${key-id}
説明キーリソースの ARN はワイルドカード文字 (*) をサポートします。例:
-
acs:kms:${region}:${account}:key/*:指定されたアカウントの指定されたリージョン内のすべてのキーを示します。 -
acs:kms:*:${account}:key/*:指定されたアカウントのすべてのリージョン内のすべてのキーを表します。
シークレット
acs:kms:${region}:${account}:secret/${secret-name}
説明シークレットリソースの ARN は、次の 2 つのワイルドカードパターンをサポートします。
-
acs:kms:${region}:${account}:secret/*:指定されたリージョンとアカウントのすべてのシークレットを表します。 -
acs:kms:${region}:${account}:secret/prefix*:指定されたリージョンとアカウントで、名前のプレフィックスがprefixであるすべてのシークレットを指定します。
エイリアス
acs:kms:${region}:${account}:alias/${alias-name}
-
アクション
アクセス制御が必要な各 API について、KMS は RAM ポリシーのアクションを定義します。通常、フォーマットは kms:<api-name> です。
DescribeRegions オペレーションはアクセス制御を必要としません。認証後、Alibaba Cloud アカウント、RAM ユーザー、または RAM ロールがこのオペレーションを呼び出すことができます。
次の表に、KMS API オペレーション、RAM ポリシーに対応するアクション、およびそれらがアクセスするリソースタイプを示します。
${region} と ${account} を実際のリージョンと Alibaba Cloud アカウントに置き換えてください。必要に応じてリソース範囲を絞り込むこともできます。${region} はワイルドカード文字 * をサポートしており、これはサポートされているすべてのリージョンを表します。
条件
オプションの Condition 要素は、ポリシーが有効になるために満たす必要がある条件を指定します。RAM ポリシーで条件キーを使用して、KMS へのアクセスを制御できます。認証は、指定された条件が満たされた場合にのみ成功します。
-
Alibaba Cloud の共通条件キーは、
acs:<condition-key>という命名フォーマットを使用します。たとえば、acs:CurrentTime条件を使用して、ポリシーが有効な時間を制限できます。詳細については、「RAM ポリシーの要素」をご参照ください。
-
プロダクトレベルの条件キーは、
kms:<condition-key>というフォーマットを使用します。KMS がサポートするプロダクトレベルの条件キーのリストについては、「ポリシー条件キー」をご参照ください。