Elastic Container Instance リソースを作成する際に、リソースごとにリソースグループを指定できます。これにより、グループごとにリソースを管理できます。このトピックでは、Resource Access Management (RAM) ユーザーにリソースグループに対する権限を付与する方法について説明します。その後、RAM ユーザーは、権限を持つリソースグループ内のリソースのみを管理できます。
背景情報
リソースグループを使用して、Alibaba Cloud アカウント内のリソースを分類および管理できます。これにより、Alibaba Cloud アカウントのリソースと権限の管理が簡素化されます。リソースグループを使用する際は、以下の点に注意してください。
リソースグループには、異なるリージョンにデプロイされているクラウド リソースを含めることができます。たとえば、リソースグループ A には、中国 (北京) リージョンと中国 (杭州) リージョンのインスタンスを含めることができます。
同じアカウント内の異なるリソースグループに属するリソースが同じリージョン内にある場合、これらのリソースは相互に関連付けることができます。たとえば、リソースグループ A の中国 (北京) リージョンにあるインスタンスを、リソースグループ B の中国 (北京) リージョンにある仮想プライベートクラウド (VPC) に追加できます。
リソースグループは、RAM ユーザーのグローバル権限を継承します。たとえば、RAM ユーザーにすべての Alibaba Cloud リソースを管理する権限を付与すると、Alibaba Cloud アカウント内のすべてのリソースグループが RAM ユーザーに表示されます。
シナリオ
Elastic Container Instance リソースには、エラスティックコンテナインスタンスとイメージキャッシュが含まれます。各 Elastic Container Instance リソースは、1 つのリソースグループにのみ属している必要があります。Elastic Container Instance リソースを作成する際に、リソースのリソースグループを指定できます。リソースグループが指定されていない場合、リソースはデフォルトのリソースグループに追加されます。
既存の Elastic Container Instance リソースが属するリソースグループを変更するには、RAM コンソールのリソースグループページに移動します。詳細については、リソースグループ間での手動リソース転送の実行を参照してください。
異なる目的で使用される Elastic Container Instance リソースを特定のリソースグループに追加できます。その後、これらのリソースグループの管理者として異なる RAM ユーザーを指定して、分散方式でリソースを管理できます。
たとえば、本番環境用のエラスティックコンテナインスタンスとテスト環境用の別のインスタンスがある場合、2 つのインスタンスを本番環境とテスト環境のそれぞれのリソースグループに追加できます。次に、RAM ユーザー A に本番環境のリソースグループ内のインスタンスに対する操作の実行を許可し、RAM ユーザー B にテスト環境のリソースグループ内の他のインスタンスに対する操作の実行を許可できます。製品をテストするために、RAM ユーザー B はテスト環境のリソースグループ内のインスタンスに対して操作を実行します。製品を起動するために、RAM ユーザー A は本番環境のリソースグループ内のインスタンスに対して操作を実行します。2 つの環境は、異なる RAM ユーザーによって管理されます。これにより、権限管理が容易になり、誤操作を防ぐのに役立ちます。
手順
次のサンプルシナリオでは、Elastic Container Instance リソースをグループ化するために 2 つのリソースグループが作成され、RAM ユーザーは特定のリソースグループ内のリソースに対して操作を実行する権限が付与されます。
2 つのリソースグループが作成されます。1 つは本番環境用に作成され、もう 1 つはテスト環境用に作成されます。
2 人の RAM ユーザーが作成されます。RAM ユーザー A は本番環境で AliyunECIFullAccess 権限を持ち、RAM ユーザー B はテスト環境で AliyunECIFullAccess 権限を持ちます。
説明AliyunECIFullAccess は RAM によって提供されるシステムポリシーであり、Elastic Container Instance リソースに対する操作を実行するためのすべての権限が含まれています。
次の手順を実行します。
2 つのリソースグループを作成します。詳細については、リソースグループの作成を参照してください。
2 人の RAM ユーザーを作成します。詳細については、RAM ユーザーの作成を参照してください。
各 RAM ユーザーを 1 つのリソースグループの管理者としてのみ指定します。詳細については、RAM 認証の追加を参照してください。
2 人の RAM ユーザーに権限を付与する際に、AliyunECIFullAccess 権限を選択します。
リソースグループを指定してエラスティックコンテナインスタンスを作成します。
Elastic Container Instance コンソールのインスタンス購入ページでエラスティックコンテナインスタンスを作成する場合は、その他の設定 (オプション) ステップでリソースグループを指定します。
CreateContainerGroup API 操作を呼び出してエラスティックコンテナインスタンスを作成する場合は、ResourceGroupId を渡してリソースグループ ID を指定します。
期待される結果
期待される結果:
Elastic Container Instance コンソールでは、RAM ユーザーは、権限を持つリソースグループ内のエラスティックコンテナインスタンスのみを表示および操作できます。
RAM ユーザーが API 操作を呼び出す場合、RAM ユーザーは、権限を持つリソースグループ内のエラスティックコンテナインスタンスのみを表示および操作できます。例:
CreateContainerGroup
エラスティックコンテナインスタンスを作成するには、RAM ユーザーは認証のためにリソースグループ ID を指定する必要があります。リソースグループ ID が指定されていないか、指定されたリソースグループ ID が正しくない場合、認証は失敗します。
説明RAM ユーザーがデフォルトのリソースグループに対する権限を持っている場合、RAM ユーザーはリソースグループ ID を指定する必要はありません。エラスティックコンテナインスタンスは、デフォルトでデフォルトのリソースグループに追加されます。
DescribeContainerGroups
エラスティックコンテナインスタンスに関する情報を照会するには、RAM ユーザーは認証のためにリソースグループ ID を指定する必要があります。リソースグループ ID が指定されていないか、指定されたリソースグループ ID が正しくない場合、認証は失敗します。
説明指定されたエラスティックコンテナインスタンスの ID がリソースグループ ID と一致しない場合、エラスティックコンテナインスタンスはリソースグループに属していません。この場合、リソースグループ ID が正しい場合でも、RAM ユーザーはエラスティックコンテナインスタンスに関する情報を表示できません。
DescribeContainerLog
エラスティックコンテナインスタンスのログを照会するために、RAM ユーザーはリソースグループ ID を指定する必要はありません。システムは、エラスティックコンテナインスタンスが属するリソースグループを自動的に取得し、リクエストを認証します。
DeleteContainerGroup
エラスティックコンテナインスタンスを削除するために、RAM ユーザーはリソースグループ ID を指定する必要はありません。システムは、エラスティックコンテナインスタンスが属するリソースグループを自動的に取得し、リクエストを認証します。