5.9. Dex를 사용하여 Argo CD에 대한 SSO 구성
Red Hat OpenShift GitOps Operator가 설치되면 Argo CD에서 admin
권한이 있는 사용자를 자동으로 생성합니다. 클러스터 관리자는 여러 사용자를 관리하기 위해 Argo CD를 사용하여 SSO(Single Sign-On)를 구성할 수 있습니다.
5.9.1. Dex OpenShift OAuth 커넥터 활성화
DEX는 플랫폼에서 제공하는 OAuth
서버를 확인하여 OpenShift 내에 정의된 사용자와 그룹을 사용합니다. 다음 예제에서는 예제 구성과 함께 Dex의 속성을 보여줍니다.
apiVersion: argoproj.io/v1alpha1 kind: ArgoCD metadata: name: example-argocd labels: example: openshift-oauth spec: dex: openShiftOAuth: true 1 groups:2 - default rbac:3 defaultPolicy: 'role:readonly' policy: | g, cluster-admins, role:admin scopes: '[groups]'
5.9.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
5.9.2. Dex 비활성화
DEX는 Operator에서 생성한 모든 Argo CD 인스턴스에 기본적으로 설치됩니다. Dex를 비활성화할 수 있습니다.
프로세스
Operator의 YAML 리소스에서 환경 변수
DISABLE_DEX
를 true로 설정합니다.spec: config: env: - name: DISABLE_DEX value: "true"