複数のチームが 1 つの Alibaba Cloud アカウントを共有する場合、通常、各チームは自身が所有する Enterprise Distributed Application Service (EDAS) のクラスターとアプリケーションにのみアクセスする必要があります。ユーザーやリソースごとに個別の Resource Access Management (RAM) ポリシーを作成・維持する代わりに、関連するリソースをグループ化し、グループ単位で権限を付与することができます。これにより、ポリシーのメンテナンスにおけるオーバーヘッドが削減され、リソースの追加や削除時に権限のギャップが生じるのを防ぐことができます。
サポートされるリソース
すべての EDAS リソースタイプをリソースグループに追加できるわけではありません。権限の構造を計画する前に、この表をご確認ください。
| リソースタイプ | リソースグループのサポート | 権限管理方法 |
|---|---|---|
| クラスター | はい | リソースグループ + カスタムポリシー |
| アプリケーション | はい | リソースグループ + カスタムポリシー |
| マイクロサービス名前空間 | いいえ | 直接 RAM ポリシー |
| Application Configuration Management (ACM) リソース | いいえ | 直接 RAM ポリシー |
| Application Real-Time Monitoring Service (ARMS) リソース | いいえ | 直接 RAM ポリシー |
リソースグループをサポートしていないリソースタイプについては、直接 RAM ポリシーを通じて権限を付与します。例については、「サポートされていないリソースタイプへの権限付与」をご参照ください。
基本概念
リソースグループベースの権限は、以下の 3 つの構成要素を組み合わせたものです。
| 概念 | 定義 |
|---|---|
| リソースグループ | 1 つ以上の Alibaba Cloud リソースを保持する論理的なコンテナです。クラスターとアプリケーションをリソースグループに割り当てることで、リソースごとではなくグループレベルで権限が適用されるようになります。 |
| RAM ユーザー | Alibaba Cloud アカウント内の ID で、個人またはサービスを表します。EDAS リソースへのアクセスが必要な各チームメンバーは、RAM ユーザーを使用します。 |
| カスタムポリシー | RAM ユーザーが実行できる操作を定義する JSON ドキュメントです。リソースグループの範囲内で RAM ユーザーにアタッチされると、ポリシーはそれらの操作をそのグループ内のリソースに限定します。 |
リソースグループを作成し、EDAS リソースを割り当て、各チームの RAM ユーザーを作成し、各ユーザーの権限をそのリソースグループに限定するカスタムポリシーをアタッチします。
リソースグループと RAM ポリシーの比較
RAM は、権限管理に対して 2 つのアプローチをサポートしています。以下の表で、これらを比較します。
| 次元 | RAM ポリシー | リソースグループ |
|---|---|---|
| 範囲 | リソースごと。各ポリシーには、特定のリソース ID がリストされます。 | グループごと。単一のポリシーで、グループ内のすべてのリソースをカバーします。 |
| ポリシーのメンテナンス | 権限が同じであっても、ユーザーごとに個別のポリシーが必要です。リソースが変更されるたびにポリシーを更新する必要があります。 | 1 つの共有ポリシー。グループにリソースを追加または削除することで、アクセスを制御します。 |
| 最適な用途 | 個々のリソースに対するきめ細かな制御。リソースが少ない小規模な構成。 | チームベースのアクセス制御。リソースが頻繁に追加または削除される環境。 |
EDAS は 2 つの独立した権限管理システムをサポートしており、各 Alibaba Cloud アカウントはどちらか 1 つしか使用できません。RAM の使用を推奨します。
前提条件
開始する前に、以下の条件を満たしていることを確認してください。
RAM ベースの権限管理に切り替えていること。EDAS には、レガシーなプライマリアカウントとサブアカウントの管理システムがあります。各 Alibaba Cloud アカウントは、1 つの権限管理システムしか使用できません。リソースグループを使用するには、RAM に切り替える必要があります。詳細については、「EDAS で定義された権限を RAM ポリシーに置き換える」をご参照ください。
Resource Management サービスが有効になっているアクティブな Alibaba Cloud アカウント (すべてのアカウントと RAM ユーザーで自動的に有効化されます)
リソースグループベースの権限設定
以下の例では、完全な設定手順を示します。A 社には 2 つの部署があります。
deptA は clusterA、appA1、appA2 を管理します。
deptB は clusterB、appB1、appB2 を管理します。
各部署は、自身の所有するリソースにのみアクセスできるようにする必要があります。

ステップ 1:リソースグループの作成
Resource Management コンソールにログインします。
groupA と groupB の 2 つのリソースグループを作成します。
ステップ 2:リソースグループへのリソースの割り当て
対応するリソースグループにクラスターとアプリケーションを追加します。
clusterA、appA1、appA2 を groupA に追加します。
clusterB、appB1、appB2 を groupB に追加します。
詳細な手順については、「リソースをリソースグループに転送する」をご参照ください。
ステップ 3:RAM ユーザーの作成
RAM コンソールにログインします。
deptA 用に subA、deptB 用に subB の 2 つの RAM ユーザーを作成します。
ステップ 4:カスタムポリシーの作成
RAM コンソールで、クラスターとアプリケーションの管理権限を付与するカスタムポリシーを作成します。範囲はリソースグループレベルで制御されるため、単一のポリシーが両方のユーザーに適用されます。
詳細な手順については、「カスタムポリシーの作成」をご参照ください。
以下のポリシー内容を使用します。
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"edas:*Cluster",
"edas:*Application"
],
"Resource": [
"acs:edas:*:*:*"
]
}
]
}Resource 要素ではワイルドカードを使用しています。これは、次のステップで適用されるリソースグループの範囲によって、ユーザーがアクセスできる特定のリソースが決定されるためです。
ステップ 5:RAM ユーザーへのポリシーのアタッチ
Resource Management コンソールで、groupA の範囲内でカスタムポリシーを subA にアタッチします。
同じポリシーを groupB の範囲内で subB にアタッチします。
このステップの後、subA は groupA 内のクラスターとアプリケーションのみを管理でき、subB は groupB 内のクラスターとアプリケーションのみを管理できるようになります。
ステップ 6 (任意):リソース割り当ての調整
ユーザーのアクセス権を変更するには、そのユーザーのリソースグループからリソースを追加または削除します。ポリシーの変更は不要です。
たとえば、deptA が新しいアプリケーション appA3 を作成した場合、それを groupA に追加します。subA は自動的にそのアプリケーションへのアクセス権を取得します。
サポートされていないリソースタイプへの権限付与
マイクロサービス名前空間はリソースグループに追加できません。RAM ユーザーが特定の名前空間内のマイクロサービスをクエリする必要がある場合は、別の RAM ポリシーを通じて権限を付与します。
RAM ユーザーがリソースグループに対して AliyunEDASFullAccess ポリシーを持っていても、マイクロサービス名前空間を指定するクエリは権限エラーを返します。名前空間はリソースグループの範囲外に存在するためです。
名前空間レベルの読み取りアクセス権を付与するには、以下のポリシーを作成して RAM ユーザーにアタッチします。詳細な手順については、「RAM ユーザーへの権限付与」をご参照ください。
{
"Version": "1",
"Statement": [
{
"Action": [
"edas:ReadService"
],
"Resource": [
"acs:edas:$regionid:*:namespace/$namespace"
],
"Effect": "Allow"
}
]
}以下のプレースホルダーを実際の値に置き換えてください。
| プレースホルダー | 説明 | 例 |
|---|---|---|
$regionid | 名前空間が配置されているリージョン | cn-hangzhou |
$namespace | マイクロサービス名前空間 ID | default |
このポリシーは edas:ReadService 操作のみを付与します。クラスター管理、アプリケーション管理、アプリケーションベースのマイクロサービス管理を含む EDAS ポリシー操作の完全なリストについては、「RAM ポリシー」をご参照ください。
結果の確認
設定が完了したら、各 RAM ユーザーが割り当てられたリソースグループ内のリソースにのみアクセスできることを確認します。
subA として EDAS コンソールにログインします。
subA が clusterA、appA1、appA2 を表示および管理できることを確認します。
subA が groupB 内のリソース (clusterB、appB1、appB2) を表示または管理できないことを確認します。
subB についても、groupB のリソースで同様の確認を繰り返します。