❤️
악분의 ArgoCD 공부기록
  • Home
  • Argo CD 소개
    • 실습자료
    • 컨셉과 장단점
    • 설치
    • 아키텍처
  • ArgoCD CLI 설치
    • 설치
    • login
  • ARGO CD HelloWorld
    • nginx pod, service 배포
  • ARGO CD 단위
    • 소개
    • Applicaiton
    • Project
  • Sync 설정
    • 소개
    • Refresh Period
    • 수동 Refresh
    • Sync와 Sync Policy
    • Sync Status
    • Health Status
    • Prune
    • Directory Recurse
    • Self healing
    • Ignore Difference
    • Non Cascade 삭제
    • ArgoCD로 관리되는지 확인
    • 기존 리소스 연결
    • helm chart
    • kustomize
  • Sync LifeCycle
    • Phases
  • private repository
    • 소개
    • git private repo 관리
  • User 관리
    • 소개
    • Argo CD user
    • Built-in user
    • Local user 생성
    • 권한(Role) 관리
  • Argo CD Project
    • Project란?
    • Project 생성 예제
    • Project 설정
    • Project 설정 예제
    • Project 권한(Role)과 예제
  • App of Apps
    • App of Apps 패턴
  • Multi cluster 관리
    • 클러스터 추가
  • 모니터링
    • 소개
    • Argo CD Metrics 추가
    • Prometheus Operator 설치
Powered by GitBook
On this page
  • Local user 관리 방법
  • User 생성
  • 비밀번호 생성
  • 참고자료
  1. User 관리

Local user 생성

PreviousBuilt-in userNext권한(Role) 관리

Last updated 2 years ago

Local user 관리 방법

local user는 쿠버네티스 configmap으로 관리됩니다. configmap이름은 argocd-cm입니다. 처음 설치하면 configmap에 아무런 데이터가 없습니다.

kubectl -n argocd get configmap argocd-cm

User 생성

argocd-cm configmap에서 account.<계정이름>필드를 추가하면 local user이 추가됩니다. 그리고 생성한 user의 인증 방법을 설정해야 합니다. admin 사용자는 login방법만 설정되어 있습니다.

  • apiKey방법은 JWT토큰 인증을 허용합니다.

  • login방법은 WEB UI 인증을 허용합니다.

apiVersion: v1
kind: ConfigMap
metadata:
  name: argocd-cm
  namespace: argocd
  labels:
    app.kubernetes.io/name: argocd-cm
    app.kubernetes.io/part-of: argocd
data:
  accounts.test: apiKey, login

수정한 configmap을 적용하면 계정이 생성됩니다.

kubectl apply -f new_user.yaml

argocd account list명령어로 추가된 test계정을 확인할 수 있습니다.

argocd account list

WEB UI에서도 추가한 test user를 확인할 수 있습니다.

비밀번호 생성

생성한 test사용자을 사용하려면 비밀번호를 생성해야 합니다. 사용자 생성하면 비밀번호가 없습니다. 비밀번호를 생성하려면 argocd login명령어로 로그인한 사용자 비밀번호가 필요합니다.

아래 예제는 비밀번호를 password1234로 설정했습니다.

argocd account update-password \
--account test \
--current-password <login한 user의 비밀번호> \
--new-password "password1234"

비밀번호를 생성했으니 Argo CD WEB UI에 로그인할 수 있습니다. 물론, test계정 생성시 login방법을 설정해야 WEB UI에 로그인할 수 있습니다.

test사용자는 아직 권한 설정이 아무것도 되어 있지 않으므로, Permission denied메세지를 볼 수 있습니다.

참고자료

https://argo-cd.readthedocs.io/en/stable/operator-manual/user-management/#create-new-user
https://rtfm.co.ua/en/argocd-users-access-and-rbac/