RAM ポリシー JSON を手動で作成すると、エラーが発生しやすく、時間もかかります。EDAS 権限アシスタントは、ビジュアルインターフェイスから Resource Access Management (RAM) ポリシー JSON を生成します。制御する名前空間、クラスター、アプリケーションを選択し、[許可] または [拒否] を選択すると、アシスタントが完全なポリシーを構築します。その後、生成された JSON を RAM コンソールにコピーして、RAM ポリシーを作成します。
EDAS は、一般的なロールをカバーする 8 つのシステム権限ポリシーを提供します。可能な場合はシステムポリシーから開始し、どのシステムポリシーにも一致しない権限が必要な場合にのみカスタムポリシーを作成します。
前提条件
開始する前に、以下があることを確認してください。
-
Alibaba Cloud アカウントまたは EDAS コンソールへのアクセス権限を持つ RAM ユーザー
-
RAM コンソールにアクセスしてポリシーを作成およびアタッチする権限
システム権限ポリシー
EDAS は 8 つのシステムポリシーを提供します。次の表は、各ポリシーが制御するリソースと付与されるアクセスレベルをまとめたものです。
| ポリシー | 名前空間 | クラスター | アプリケーション | マイクロサービス | 構成管理 | システム |
|---|---|---|---|---|---|---|
| スーパー管理者 | フル | フル | フル | フル | フル | フル |
| アプリケーション管理者 | -- | フル | フル | フル | -- | -- |
| アプリケーションオペレーター | -- | -- | フル (作成または削除なし) | フル | -- | 管理 |
| アプリケーションブラウザ | -- | -- | 読み取り | 読み取り | -- | -- |
| リソース管理者 | フル | フル | -- | -- | -- | -- |
| リソースオペレーター | フル (作成なし) | フル (作成なし) | -- | -- | -- | -- |
| リソースブラウザ | 読み取り | 読み取り | -- | -- | -- | -- |
| EDAS ブラウザ | 読み取り | 読み取り | 読み取り | 読み取り | 読み取り | ログの読み取り |
システムポリシーの選択
-
スーパー管理者: Alibaba Cloud アカウント (root ユーザー) と同等です。緊急時対応のために予約し、代わりにきめ細かなアクセス制御を使用してください。
-
アプリケーション管理者 または アプリケーションオペレーター: アプリケーションをデプロイおよび管理するチームに割り当てます。アプリケーションオペレーターを使用して、偶発的なアプリケーションの作成または削除を防ぎます。
-
アプリケーションブラウザ: 変更を加えることなくアプリケーションのステータスを可視化する必要がある関係者に割り当てます。
-
リソース管理者 または リソースオペレーター: 名前空間とクラスターを管理するインフラストラクチャチームに割り当てます。リソースオペレーターを使用して、偶発的な名前空間またはクラスターの作成を防ぎます。
-
リソースブラウザ: インフラストラクチャリソースのみを表示する必要があるユーザーに割り当てます。
-
EDAS ブラウザ: 操作ログを含む EDAS 全体へのフル読み取り専用アクセスを割り当てます。
システムポリシーの表示とコピー
-
EDAS コンソールにログインします。
-
[権限アシスタント] ページで、利用可能なシステム権限ポリシーを確認します。
[ポリシータイプ] 列が [システムストラテジー] のポリシーは、システム権限ポリシーです。各システムポリシーは、以下の操作をサポートします:
-
[複製] をクリックして [新規権限ストラテジー] パネルを開き、修正版のコピーを作成します。
-
「[詳細を表示]」をクリックして「[詳細を表示]」ダイアログボックスを開き、次に「[コピー]」をクリックしてポリシーのJSONをコピーします。RAM コンソールにログインし、コピーした内容で RAM ポリシーを作成して、RAM ユーザーにアタッチします。詳細については、「EDAS で定義された権限を RAM ポリシーに置き換える」をご参照ください。
各システムポリシーの完全な JSON については、「システムポリシー JSON リファレンス」をご参照ください。
カスタム権限ポリシーの作成
システムポリシーで必要な権限が正確にカバーされていない場合は、カスタムポリシーを作成します。次の例では、中国 (北京) リージョンで RAM ユーザーに次の権限を付与します。
-
テストマイクロサービスの名前空間を表示します。
-
テストマイクロサービスの名前空間内のすべてのクラスターを表示します。
-
アプリケーションの作成を除く、テストマイクロサービスの名前空間内のアプリケーションに対するフル権限。
-
EDAS コンソールにログインします。
-
[権限アシスタント] ページで、[新規権限ストラテジー] をクリックします。
-
「[新規権限ストラテジ]」パネルで、「[ストラテジ名]」および「[備考]」を「[新しいカスタム権限ポリシーの作成]」ステップに入力します。
-
カスタム権限ポリシーの効果を指定し、[次へ] をクリックします。
重要重要: カスタムポリシーは、ステートメントごとに 1 つの効果タイプのみをサポートします。利用可能なタイプは [許可] と [拒否] です。ポリシーに同じアクションに対する [許可] ステートメントと [拒否] ステートメントの両方が含まれている場合、[拒否] が優先されます。
-
表示およびアプリケーション権限の許可ステートメントを追加します。
-
[新しいカスタム権限ポリシーの作成] ステップで、[新規権限文] をクリックします。[権限付与文の追加] パネルで、次の設定を行い、[はい] をクリックします。
-
[権限対象] を [許可] に設定します。
-
「[操作およびリソースの権限付与]」セクションで、左側からを選択します。右側のドロップダウンリストから[中国北部 2 (北京)]と[test]を選択します。
-
左側で [クラスター] > [クラスターの表示] を選択し、右側のドロップダウンリストから [China North 2 (Beijing)]、[test]、[すべてのクラスター] を選択します。
-
左側で [アプリケーション] を選択します。右側のドロップダウンリストから [China North 2 (Beijing)] および [test] を選択します。 [アプリケーション] を選択すると、すべてのアプリケーション権限が付与されます。
-
-
-
アプリケーションの作成をブロックする拒否ステートメントを追加します。
-
「[新しいカスタム権限ポリシーの作成]」ステップで、「[新しい権限文]」をクリックします。「[承認文の追加]」パネルで、以下の設定を構成し、「[はい]」をクリックします。
-
[権限対象] を [拒否] に設定します。
-
[操作およびリソースの権限付与] セクションで、左側で を選択し、右側のドロップダウンリストから [China North 2 (Beijing)] と [test] を選択します。
-
-
-
「プレビューするストラテジー」ステップで、ポリシーを確認し、[完了] をクリックします。
「新しいポリシー承認が成功しました」メッセージが表示されたら、[一覧ビューに戻る] をクリックして、[権限アシスタント] ページに戻ります。
RAM ユーザーへのポリシーの適用
[Permission Assistant] ページでカスタムポリシーを見つけ、[詳細の表示] をクリックします。[詳細の表示] ダイアログボックスで、[コピー] をクリックしてポリシー JSON をコピーします。RAM コンソールにログオンし、コピーした内容で RAM ポリシーを作成して、RAM ユーザーにアタッチします。詳細については、「EDAS で定義された権限を RAM ポリシーに置き換える」をご参照ください。
RAM ポリシー構造リファレンス
権限アシスタントによって生成される各ポリシーは、次の JSON 構造を使用します。
| フィールド | タイプ | 説明 |
|---|---|---|
Version |
文字列 | ポリシーバージョン。常に "1" です。 |
Statement |
配列 | 1 つ以上の権限ステートメント。各ステートメントは、効果、一連のアクション、およびターゲットリソースを定義します。 |
Effect |
文字列 | "Allow" または "Deny"。同じアクションに対して両方が存在する場合、Deny が優先されます。 |
Action |
String[] | EDAS API アクション。ワイルドカード (*) プレフィックスを使用して、リソースタイプに対するすべての操作に一致させます。たとえば、edas:*Application は edas:CreateApplication、edas:ReadApplication、およびその他すべてのアプリケーションアクションに一致します。 |
Resource |
String[] | ステートメントが適用される Alibaba Cloud リソース名 (ARN)。 |
EDAS リソース ARN 形式
ARN はこのパターンに従います。
acs:edas:<region>:<account-id>:<resource-path>
| ARN パターン | スコープ |
|---|---|
acs:edas:*:*:namespace/* |
すべてのリージョンのすべての名前空間 |
acs:edas:*:*:namespace/*/cluster/* |
すべての名前空間のすべてのクラスター |
acs:edas:*:*:namespace/*/application/* |
すべての名前空間のすべてのアプリケーション |
acs:edas:*:*:* |
すべての EDAS リソース |
リージョンおよびアカウント ID フィールドで * を使用して、すべてのリージョンとアカウントに一致させます。
システムポリシー JSON リファレンス
スーパー管理者
名前空間、クラスター、アプリケーション、マイクロサービス、および構成管理に対するフル権限。
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"edas:*Namespace"
],
"Resource": [
"acs:edas:*:*:namespace/*"
]
},
{
"Effect": "Allow",
"Action": [
"edas:*Cluster"
],
"Resource": [
"acs:edas:*:*:namespace/*/cluster/*"
]
},
{
"Effect": "Allow",
"Action": [
"edas:*Application"
],
"Resource": [
"acs:edas:*:*:namespace/*/application/*"
]
},
{
"Effect": "Allow",
"Action": [
"edas:*Service"
],
"Resource": [
"acs:edas:*:*:namespace/*/application/*"
]
},
{
"Effect": "Allow",
"Action": [
"edas:ManageSystem",
"edas:ManageOperation",
"edas:ReadOperationLog"
],
"Resource": [
"acs:edas:*:*:*"
]
}
]
}
アプリケーション管理者
アプリケーションとマイクロサービスに対するフル権限、クラスターへのフルアクセス。
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"edas:*Application"
],
"Resource": [
"acs:edas:*:*:namespace/*/application/*"
]
},
{
"Effect": "Allow",
"Action": [
"edas:*Service"
],
"Resource": [
"acs:edas:*:*:namespace/*/application/*"
]
},
{
"Effect": "Allow",
"Action": [
"edas:ReadCluster"
],
"Resource": [
"acs:edas:*:*:namespace/*/cluster/*"
]
}
]
}
アプリケーションオペレーター
作成と削除を除くアプリケーションに対するフル権限、マイクロサービスに対するフル権限、および edas:ManageOperation 権限。拒否ステートメントは edas:CreateApplication を明示的にブロックします。
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"edas:*Application"
],
"Resource": [
"acs:edas:*:*:namespace/*/application/*"
]
},
{
"Effect": "Allow",
"Action": [
"edas:*Service"
],
"Resource": [
"acs:edas:*:*:namespace/*/application/*"
]
},
{
"Effect": "Allow",
"Action": [
"edas:ManageOperation"
],
"Resource": [
"acs:edas:*:*:*"
]
},
{
"Effect": "Deny",
"Action": [
"edas:CreateApplication"
],
"Resource": [
"acs:edas:*:*:namespace/*/application/*"
]
}
]
}
アプリケーションブラウザ
アプリケーションとマイクロサービスへの読み取り専用アクセス。
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"edas:ReadApplication"
],
"Resource": [
"acs:edas:*:*:namespace/*/application/*"
]
},
{
"Effect": "Allow",
"Action": [
"edas:ReadService"
],
"Resource": [
"acs:edas:*:*:namespace/*/application/*"
]
}
]
}
リソース管理者
名前空間とクラスターに対するフル権限。
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"edas:*Namespace"
],
"Resource": [
"acs:edas:*:*:namespace/*"
]
},
{
"Effect": "Allow",
"Action": [
"edas:*Cluster"
],
"Resource": [
"acs:edas:*:*:namespace/*/cluster/*"
]
}
]
}
リソースオペレーター
作成を除く名前空間とクラスターに対するフル権限。拒否ステートメントは edas:CreateNamespace と edas:CreateCluster を明示的にブロックします。
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"edas:*Namespace"
],
"Resource": [
"acs:edas:*:*:namespace/*"
]
},
{
"Effect": "Allow",
"Action": [
"edas:*Cluster"
],
"Resource": [
"acs:edas:*:*:namespace/*/cluster/*"
]
},
{
"Effect": "Deny",
"Action": [
"edas:CreateNamespace"
],
"Resource": [
"acs:edas:*:*:namespace/*"
]
},
{
"Effect": "Deny",
"Action": [
"edas:CreateCluster"
],
"Resource": [
"acs:edas:*:*:namespace/*/cluster/*"
]
}
]
}
リソースブラウザ
名前空間とクラスターへの読み取り専用アクセス。
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"edas:ReadNamespace"
],
"Resource": [
"acs:edas:*:*:namespace/*"
]
},
{
"Effect": "Allow",
"Action": [
"edas:ReadCluster"
],
"Resource": [
"acs:edas:*:*:namespace/*/cluster/*"
]
}
]
}
EDAS ブラウザ
すべての EDAS リソース (名前空間、クラスター、アプリケーション、マイクロサービス、構成、および操作ログ) への読み取り専用アクセス。
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"edas:ReadNamespace"
],
"Resource": [
"acs:edas:*:*:namespace/*"
]
},
{
"Effect": "Allow",
"Action": [
"edas:ReadCluster"
],
"Resource": [
"acs:edas:*:*:namespace/*/cluster/*"
]
},
{
"Effect": "Allow",
"Action": [
"edas:ReadApplication"
],
"Resource": [
"acs:edas:*:*:namespace/*/application/*"
]
},
{
"Effect": "Allow",
"Action": [
"edas:ReadService"
],
"Resource": [
"acs:edas:*:*:namespace/*/application/*"
]
},
{
"Effect": "Allow",
"Action": [
"edas:ReadOperationLog"
],
"Resource": [
"acs:edas:*:*:*"
]
}
]
}