第2章 Dex を使用した Argo CD の SSO の設定
Red Hat OpenShift GitOps Operator がインストールされると、Argo CD は admin
権限を持つユーザーを自動的に作成します。複数のユーザーを管理するために、クラスター管理者は Argo CD を使用して、シングルサインオン (SSO) を設定できます。
ArgoCD CR の spec.dex
パラメーターは、Red Hat OpenShift GitOps v1.10.0 以降ではサポート対象外になりました。代わりに .spec.sso
パラメーターの使用を検討してください。
2.1. Dex OpenShift OAuth コネクターを有効にするための設定
Dex は、Operator によって作成されるすべての Argo CD インスタンスにデフォルトでインストールされます。.spec.sso
パラメーターを設定することで、Dex を SSO 認証プロバイダーとして使用するように Red Hat OpenShift GitOps を設定できます。
Dex は、プラットフォームが提供する OAuth
サーバーを確認して、OpenShift Container Platform 内で定義されたユーザーおよびグループを使用します。
手順
Dex を有効にするには、Operator の YAML リソースで
.spec.sso.provider
パラメーターをdex
に設定します。# ... spec: sso: provider: dex dex: openShiftOAuth: true 1 # ...
- 1
openShiftOAuth
プロパティーは、値がtrue
に設定されている場合に、組み込み OpenShift Container PlatformOAuth
サーバーを自動的に設定するように Operator をトリガーします。
2.1.1. 特定のロールへのユーザーのマッピング
Argo CD は、直接の ClusterRoleBinding
ロールがある場合は、ユーザーを特定のロールにマップできません。OpenShift 経由で SSO の role:admin
としてロールを手動で変更できます。
手順
cluster-admins
という名前のグループを作成します。$ oc adm groups new cluster-admins
ユーザーをグループに追加します。
$ oc adm groups add-users cluster-admins USER
cluster-admin
ClusterRole
をグループに適用します。$ oc adm policy add-cluster-role-to-group cluster-admin cluster-admins