3.2. アカウント全体の IAM ロールとポリシーのリファレンス
このセクションでは、Operator ポリシーを含む、STS を使用する ROSA デプロイメントに必要なアカウント全体の IAM ロールおよびポリシーに関する詳細を提供します。また、ポリシーを定義する JSON ファイルも含まれます。
アカウント全体のロールおよびポリシーは、Red Hat OpenShift Service on AWS クラシックアーキテクチャーのマイナーリリースバージョン (例: Red Hat OpenShift Service on AWS クラシックアーキテクチャー 4) に固有であり、以前のバージョンと互換性があります。パッチバージョンに関係なく、同じマイナーバージョンの複数のクラスターにアカウント全体のロールおよびポリシーを再利用することで、必要な STS リソースを最小限に抑えることができます。
3.2.1. アカウント全体のロールを作成する方法 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat OpenShift Service on AWS (ROSA) クラシックアーキテクチャー CLI (rosa)、または OpenShift Cluster Manager のガイド付きインストールを使用して、アカウント全体のロールを作成できます。ロールは、手動で作成することも、これらのロールとポリシーに事前定義された名前を使用する自動プロセスを使用して作成することもできます。
3.2.1.1. 手動 ocm-role リソースの作成 リンクのコピーリンクがクリップボードにコピーされました!
システムでこれらのロールを作成するのに必要な CLI アクセスがある場合は、手動作成方法を使用できます。このオプションは、目的の CLI ツールまたは OpenShift Cluster Manager から実行できます。手動作成プロセスを開始すると、CLI は、ロールを作成して必要なポリシーにリンクする一連のコマンドを実行するために表示します。
3.2.1.2. 自動 ocm-role リソースの作成 リンクのコピーリンクがクリップボードにコピーされました!
管理者権限で ocm-role リソースを作成した場合は、OpenShift Cluster Manager からの自動作成方法を使用できます。ROSA CLI では、これらのロールとポリシーを自動的に作成するために、この管理 ocm-role IAM リソースが必要です。この方法を選択すると、デフォルト名を使用するロールおよびポリシーが作成されます。
OpenShift Cluster Manager で ROSA ガイド付きインストールを使用する場合は、ガイド付きクラスターインストールの最初のステップで、管理者権限を持つ ocm-role リソースを作成しておく必要があります。このロールがないと、Operator ロールおよびポリシーの自動作成オプションを使用できませんが、クラスターと、そのロールおよびポリシーを手動プロセスで作成することはできます。
sts_installer_trust_policy.json および sts_support_trust_policy.json サンプルに存在するアカウント番号は、必要なロールを引き受けることが許可されている Red Hat アカウントを表します。
| リソース | 説明 |
|---|---|
|
| ROSA インストーラーによって使用される IAM ロール。 |
|
| クラスターのインストールタスクを完了するのに必要なパーミッションを持つ ROSA インストーラーを提供する IAM ポリシー。 |
例3.1 sts_installer_trust_policy.json
例3.2 sts_installer_permission_policy.json
| リソース | 説明 |
|---|---|
|
| ROSA コントロールプレーンによって使用される IAM ロール。 |
|
| コンポーネントの管理に必要なパーミッションを持つ ROSA コントロールプレーンを提供する IAM ポリシー。 |
例3.3 sts_instance_controlplane_trust_policy.json
例3.4 sts_instance_controlplane_permission_policy.json
| リソース | 説明 |
|---|---|
|
| ROSA コンピュートインスタンスによって使用される IAM ロール。 |
|
| コンポーネントの管理に必要なパーミッションを持つ ROSA コンピュートインスタンスを提供する IAM ポリシー。 |
例3.5 sts_instance_worker_trust_policy.json
例3.6 sts_instance_worker_permission_policy.json
| リソース | 説明 |
|---|---|
|
| Red Hat Site Reliability Engineering (SRE) サポートチームによって使用される IAM ロール。 |
|
| ROSA クラスターをサポートするために必要なパーミッションを持つ Red Hat SRE サポートチームを提供する IAM ポリシー。 |
例3.7 sts_support_trust_policy.json
例3.8 sts_support_permission_policy.json
| リソース | 説明 |
|---|---|
|
| この IAM ロールを使用して、OpenShift Cluster Manager で ROSA クラスターを作成および管理します。 |
例3.9 sts_ocm_role_trust_policy.json
| リソース | 説明 |
|---|---|
|
| お客様の AWS アイデンティティーを検証するために Red Hat が使用する IAM ロール。 |
例3.10 sts_user_role_trust_policy.json
3.2.1.2.1. ロールに割り当てられたポリシーの CLI 出力の例 リンクのコピーリンクがクリップボードにコピーされました!
ロールにポリシーが割り当てられると、ROSA CLI に確認出力が表示されます。出力はポリシーの種類によって異なります。
ポリシーが信頼ポリシーの場合、ROSA CLI にロール名とポリシーの内容が出力されます。
ポリシーが割り当てられたターゲットロールの場合、ROSA CLI にターゲットロールのロール名とコンソール URL が出力されます。
ポリシーが割り当てられたターゲットロールの出力例
I: Attached trust policy to role 'testrole-Worker-Role(https://console.aws.amazon.com/iam/home?#/roles/testrole-Worker-Role)': ******************
I: Attached trust policy to role 'testrole-Worker-Role(https://console.aws.amazon.com/iam/home?#/roles/testrole-Worker-Role)': ******************Copy to Clipboard Copied! Toggle word wrap Toggle overflow 割り当てられたポリシーが信頼ポリシーの場合、ROSA CLI にこのポリシーの内容が出力されます。
信頼ポリシーの出力例
I: Attached trust policy to role 'test-Support-Role': {"Version": "2012-10-17", "Statement": [{"Action": ["sts:AssumeRole"], "Effect": "Allow", "Principal": {"AWS": ["arn:aws:iam::000000000000:role/RH-Technical-Support-00000000"]}}]}I: Attached trust policy to role 'test-Support-Role': {"Version": "2012-10-17", "Statement": [{"Action": ["sts:AssumeRole"], "Effect": "Allow", "Principal": {"AWS": ["arn:aws:iam::000000000000:role/RH-Technical-Support-00000000"]}}]}Copy to Clipboard Copied! Toggle word wrap Toggle overflow
ポリシーが権限ポリシーの場合、ポリシーが AWS 管理ポリシーであるか顧客管理ポリシーであるかに応じて、このポリシーの名前とパブリックリンク、または ARN が ROSA CLI に出力されます。
割り当てられたポリシーが AWS 管理ポリシーの場合、ROSA CLI にこのポリシーの名前とパブリックリンク、およびポリシーが割り当てられているロールが出力されます。
AWS 管理ポリシーの出力例
I: Attached policy 'ROSASRESupportPolicy(https://docs.aws.amazon.com/aws-managed-policy/latest/reference/ROSASRESupportPolicy)' to role 'test-HCP-ROSA-Support-Role(https://console.aws.amazon.com/iam/home?#/roles/test-HCP-ROSA-Support-Role)'
I: Attached policy 'ROSASRESupportPolicy(https://docs.aws.amazon.com/aws-managed-policy/latest/reference/ROSASRESupportPolicy)' to role 'test-HCP-ROSA-Support-Role(https://console.aws.amazon.com/iam/home?#/roles/test-HCP-ROSA-Support-Role)'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 割り当てられたポリシーが AWS 管理ポリシーの場合、ROSA CLI にこのポリシーの名前とパブリックリンク、およびポリシーが割り当てられているロールが出力されます。
顧客管理ポリシーの出力例
I: Attached policy 'arn:aws:iam::000000000000:policy/testrole-Worker-Role-Policy' to role 'testrole-Worker-Role(https://console.aws.amazon.com/iam/home?#/roles/testrole-Worker-Role)'
I: Attached policy 'arn:aws:iam::000000000000:policy/testrole-Worker-Role-Policy' to role 'testrole-Worker-Role(https://console.aws.amazon.com/iam/home?#/roles/testrole-Worker-Role)'Copy to Clipboard Copied! Toggle word wrap Toggle overflow
| リソース | 説明 |
|---|---|
|
| クラスターへの外部アクセスを管理するために必要なパーミッションを持つ ROSA Ingress Operator を提供する IAM ポリシー。 |
例3.11 openshift_ingress_operator_cloud_credentials_policy.json
| リソース | 説明 |
|---|---|
|
| Container Storage Interface (CSI) でバックエンドストレージを管理するのに ROSA が必要とする IAM ポリシー。 |
例3.12 openshift_cluster_csi_drivers_ebs_cloud_credentials_policy.json
| リソース | 説明 |
|---|---|
|
| コアクラスター機能の実行に必要なパーミッションと共に ROSA Machine Config Operator を提供する IAM ポリシー。 |
例3.13 openshift_machine_api_aws_cloud_credentials_policy.json
| リソース | 説明 |
|---|---|
|
| クラウドプロバイダーの認証情報の管理に必要なパーミッションと共に ROSA Cloud Credential Operator を提供する IAM ポリシー。 |
例3.14 openshift_cloud_credential_operator_cloud_credential_operator_iam_ro_creds_policy.json
| リソース | 説明 |
|---|---|
|
| クラスターの AWS S3 で OpenShift イメージレジストリーストレージを管理するために必要なパーミッションを持つ ROSA イメージレジストリー Operator を提供する IAM ポリシー。 |
例3.15 openshift_image_registry_installer_cloud_credentials_policy.json
3.2.2. アカウント全体の IAM ロールおよびポリシー AWS CLI リファレンス リンクのコピーリンクがクリップボードにコピーされました!
このセクションでは、rosa コマンドが端末で生成する aws CLI コマンドをリスト表示します。コマンドは、手動モードまたは自動モードのいずれかで実行できます。
3.2.2.1. アカウントロールの作成に手動モードを使用する リンクのコピーリンクがクリップボードにコピーされました!
手動のロール作成モードでは、確認して実行するための aws コマンドが生成されます。このプロセスは次のコマンドで開始します。<openshift_version> は、Red Hat OpenShift Service on AWS (ROSA) クラシックアーキテクチャーのバージョン (4 など) を指します。
rosa create account-roles --mode manual
$ rosa create account-roles --mode manual
提供されているコマンドの例には、ManagedOpenShift 接頭辞が含まれています。--prefix オプションを使用してカスタム接頭辞を指定しない場合は、ManagedOpenShift 接頭辞がデフォルト値です。
コマンド出力
3.2.2.2. ロール作成に自動モードを使用する リンクのコピーリンクがクリップボードにコピーされました!
--mode auto 引数を追加すると、Red Hat OpenShift Service on AWS (ROSA) クラシックアーキテクチャー CLI (rosa) はロールとポリシーを作成します。次のコマンドは、そのプロセスを開始します。
rosa create account-roles --mode auto
$ rosa create account-roles --mode auto
提供されているコマンドの例には、ManagedOpenShift 接頭辞が含まれています。--prefix オプションを使用してカスタム接頭辞を指定しない場合は、ManagedOpenShift 接頭辞がデフォルト値です。
コマンド出力