Chapter 2. Configuring SSO for Argo CD using Dex
Chapter 2. Configuring SSO for Argo CD using Dex After the Red Hat OpenShift GitOps Operator is installed, Argo CD automatically creates a user with admin permissions. To manage multiple users, cluster administrators can use Argo CD to configure Single Sign-On (SSO). Note The spec.dex parameter in the ArgoCD CR is no longer supported from Red Hat OpenShift GitOps v1.10.0 onwards. Consider using the .spec.sso parameter instead. 2.1. Configuration to enable the Dex OpenShift OAuth Connector Dex is installed by default for all the Argo CD instances created by the Operator. You can configure Red Hat OpenShift GitOps to use Dex as the SSO authentication provider by setting the .spec.sso parameter. Dex uses the users and groups defined within OpenShift Container Platform by checking the OAuth server provided by the platform. Procedure To enable Dex, set the .spec.sso.provider parameter to dex in the YAML resource of the Operator: # ... spec: sso: provider: dex dex: openShiftOAuth: true 1 # ... 1 The openShiftOAuth property triggers the Operator to automatically configure the built-in OpenShift Container Platform OAuth server when the value is set to true . 2.1.1. Mapping users to specific roles Argo CD cannot map users to specific roles if they have a direct ClusterRoleBinding role. You can manually change the role as role:admin on SSO through OpenShift. Procedure Create a group named cluster-admins . USD oc adm groups new cluster-admins Add the user to the group. USD oc adm groups add-users cluster-admins USER Apply the cluster-admin ClusterRole to the group: USD oc adm policy add-cluster-role-to-group cluster-admin cluster-admins 2.2. Disabling Dex by replacing .spec.sso To disable dex, either remove the spec.sso element from the Argo CD custom resource or specify a different SSO provider.
spec: sso: provider: dex dex: openShiftOAuth: true 1 oc adm groups new cluster-admins oc adm groups add-users cluster-admins USER oc adm policy add-cluster-role-to-group cluster-admin cluster-admins