第7章 必要な IAM リソース
Red Hat OpenShift Service on AWS は、AWS Security Token Service (STS) を使用して、権限が制限された一時的な認証情報をクラスターに提供します。そのため、クラスターをデプロイする前に、次の AWS Identity Access Management (IAM) リソースを作成する必要があります。
- ROSA のサポート、インストール、コンピュート機能に必要な STS 権限を提供する、カウント全体の特定の IAM ロールとポリシー。これには、アカウント全体の Operator ポリシーが含まれます。
- ROSA クラスター Operator がコア OpenShift 機能を実行できるようにするクラスター固有の Operator IAM ロール。
- クラスター Operator が認証に使用する OpenID Connect (OIDC) プロバイダー。
OpenShift Cluster Manager を使用してクラスターをデプロイおよび管理する場合は、次の関連情報を作成する必要があります。
- クラスターへのインストールを完了するための OpenShift Cluster Manager IAM ロール。
- AWS アカウント ID を確認するための権限のないユーザーロール。
このドキュメントでは、ROSA with HCP クラスターを作成するときにデプロイする必要がある IAM リソースに関するリファレンス情報を提供します。また、rosa create
コマンドで manual
モードを使用する場合に生成される aws
CLI コマンドも含まれます。
7.1. OpenShift Cluster Manager のロールおよび権限 リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Cluster Manager を使用して ROSA クラスターを作成する場合、以下の AWS IAM ロールを AWS アカウントにリンクしてクラスターを作成し、管理する必要があります。
これらの AWS IAM ロールは以下のとおりです。
-
ROSA ユーザーロール (
user-role
) は、Red Hat が顧客の AWS アイデンティティーを検証するために使用する AWS ロールです。このロールには追加のパーミッションがなく、ロールには Red Hat インストーラーアカウントとの信頼関係があります。 ocm-role
リソースは、OpenShift Cluster Manager での ROSA クラスターのインストールに必要なパーミッションを付与します。基本的なパーミッションまたは管理パーミッションをocm-role
リソースに適用できます。管理用ocm-role
リソースを作成する場合、OpenShift Cluster Manager は必要な AWS Operator ロールと OpenID Connect (OIDC) プロバイダーを作成できます。この IAM ロールは、Red Hat インストーラーアカウントとも信頼関係を構築します。注記ocm-role
IAM リソースは、IAM ロールと、作成される必要なポリシーの組み合わせを指します。
OpenShift Cluster Manager で auto モードを使用して Operator ロールポリシーおよび OIDC プロバイダーを作成する場合は、このユーザーロールと管理 ocm-role
リソースを作成する必要があります。
7.1.1. OpenShift Cluster Manager ロールについて リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Cluster Manager で ROSA クラスターを作成するには、ocm-role
IAM ロールが必要です。基本的な ocm-role
IAM ロールのパーミッションにより、OpenShift Cluster Manager 内でクラスターのメンテナンスを実行できます。Operator ロールおよび OpenID Connect(OIDC) プロバイダーを自動的に作成するには、--admin
オプションを rosa create
コマンドに追加する必要があります。このコマンドは、管理タスクに必要な追加のパーミッションを持つ ocm-role
リソースを作成します。
この昇格された IAM ロールにより、OpenShift Cluster Manager はクラスターの作成時にクラスター固有の Operator ロールおよび OIDC プロバイダーを自動的に作成できるようになりました。このロールおよびポリシーの自動作成の詳細は、関連情報の「アカウント全体のロールの作成方法」を参照してください。
7.1.1.1. ユーザーロールについて リンクのコピーリンクがクリップボードにコピーされました!
ocm-role
IAM ロールのほかにも、Red Hat OpenShift Service on AWS が AWS アイデンティティーを検証できるようにユーザーロールを作成する必要があります。このロールにはパーミッションがなく、インストーラーアカウントと ocm-role
リソース間の信頼関係の作成にのみ使用されます。
以下の表は、ocm-role
リソースの関連付けられた基本および管理パーミッションを示しています。
リソース | 説明 |
---|---|
| この権限により、基本ロールは指定された OpenID Connect (OIDC) プロバイダーに関する情報を取得できます。 |
| このパーミッションにより、基本ロールは指定されたロールの情報を取得できます。返されるデータには、ロールのパス、GUID、ARN、およびロールを想定するパーミッションを付与するロールの信頼ポリシーが含まれます。 |
| このパーミッションにより、基本ロールはパス接頭辞内のロールをリスト表示できます。 |
| このパーミッションにより、基本ロールは指定されたロールのタグをリスト表示できます。 |
| このパーミッションにより、基本ロールはアカウントの有効なすべてのリージョンに関する情報を返すことができます。 |
| このパーミッションにより、基本ロールはすべてのルートテーブルに関する情報を返すことができます。 |
| このパーミッションにより、基本ロールはすべてのサブネットに関する情報を返すことができます。 |
| このパーミッションにより、基本ロールは仮想プライベートクラウド (VPC) に関する情報を返すことができます。 |
| このパーミッションにより、基本ロールは一時的なセキュリティー認証情報を取得して、通常のパーミッション以外の AWS リソースにアクセスできます。 |
| このパーミッションにより、基本ロールは web アイデンティティープロバイダーでアカウントを認証されたユーザーの一時的なセキュリティー認証情報を取得できます。 |
リソース | 説明 |
---|---|
| このパーミッションにより、admin ロールは指定されたポリシーを必要な IAM ロールに割り当てることができます。 |
| この権限は、OpenID Connect (OIDC) をサポートするアイデンティティープロバイダーを記述するリソースを作成します。この権限を使用して OIDC プロバイダーを作成すると、このプロバイダーがプロバイダーと AWS の間に信頼関係を確立します。 |
| このパーミッションにより、admin ロールは AWS アカウントのロールを作成できます。 |
| このパーミッションにより、admin ロールは AWS アカウントに関連付けられたポリシーをリスト表示できます。 |
| このパーミッションにより、admin ロールは指定されたポリシーのタグをリスト表示できます。 |
| このパーミッションにより、admin ロールは指定されたポリシーに基づいてユーザーのアクセス許可境界を変更できます。 |
| このパーミッションにより、admin ロールは IAM ロールにタグを追加できます。 |
ocm-role IAM ロールの作成
ocm-role
IAM ロールは、コマンドラインインターフェイス (CLI) を使用して作成します。
前提条件
- AWS アカウントがある。
- OpenShift Cluster Manager 組織で Red Hat 組織管理者特権がある。
- AWS アカウント全体のロールをインストールするために必要な権限がある。
-
インストールホストに最新の ROSA CLI
rosa
をインストールして設定した。
手順
基本的な権限を持つ ocm-role IAM ロールを作成するには、次のコマンドを実行します。
rosa create ocm-role
$ rosa create ocm-role
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 管理者権限を持つ ocm-role IAM ロールを作成するには、次のコマンドを実行します。
rosa create ocm-role --admin
$ rosa create ocm-role --admin
Copy to Clipboard Copied! Toggle word wrap Toggle overflow このコマンドを使用すると、特定の属性を指定してロールを作成できます。次の出力例は、選択された "自動モード" を示しています。これにより、ROSA CLI (
rosa
) で Operator のロールとポリシーを作成できます。詳細は、「アカウント全体のロールの作成方法」を参照してください。
出力例
- 1
- 作成されたすべての AWS リソースの接頭辞値。この例では、
ManagedOpenShift
がすべての AWS リソースを付加します。 - 2
- このロールに追加の管理者権限を付与するかどうかを選択します。注記
--admin
オプションを使用した場合、このプロンプトは表示されません。 - 3
- アクセス許可境界を設定するためのポリシーの Amazon Resource Name (ARN)。
- 4
- ユーザー名の IAM パスを指定します。
- 5
- AWS ロールの作成方法を選択します。
auto
を使用して、ROSA CLI はロールおよびポリシーを生成してリンクします。auto
モードでは、AWS ロールを作成するためのいくつかの異なるプロンプトが表示されます。 - 6
auto
メソッドは、接頭辞を使用して特定のocm-role
を作成するかどうかを尋ねます。- 7
- IAM ロールを OpenShift Cluster Manager に関連付けることを確認します。
- 8
- 作成したロールを AWS 組織にリンクします。
AWS IAM ロールは AWS アカウントにリンクして、クラスターを作成および管理します。