Link các bài viết tham khảo:
https://faun.pub/create-argo-cd-local-users-9e830db3763f
https://ksummersill.medium.com/create-a-new-user-in-argocd-using-the-cli-and-configmap-8cbb27cf5904
Nếu bạn lười thì đến hướng dẫn chi tiết của mình:
Để create user chúng ta cần chỉnh config map và set password bằng cli
Tham khảo bài hướng dẫn cài argocd cli
Update the ConfigMap để tạo User
kubectl get configmap argocd-cm -n argocd -o yaml > argocd-cm.yml
Bạn thêm tên user bạn muốn tạo
data:
accounts.<new-username>: apiKey,login
ở đây chúng ta cho phép user process apiKey,login qua cli và UI
>>>>Giờ apply lại thôi
kubectl -n argocd apply -f argocd-cm.yml
>>>>Kiểm tra lại user
argocd account list
WARN[0000] Failed to invoke grpc call. Use flag --grpc-web in grpc calls. To avoid this warning message, use flag --grpc-web.
NAME ENABLED CAPABILITIES
admin true login
nim true apiKey, login
Set passwork cho user
argocd account update-password --account <new-username> --new-password <new-password>
Lúc này nó sẽ hỏi “*** Enter current password:” thì bạn điền pass user admin vào nhé (chúng ta đang login vào bằng user admin mà)
Update the Role Base Access Control (RBAC) for Local User
giờ chúng ta lại export file config map và sửa
kubectl get configmap argocd-rbac-cm -n argocd -o yaml > argocd-rbac.yml
>>>>> thêm cái này vào file:
data:
policy.csv: |
p, role:org-admin, applications, *, */*, allow
p, role:org-admin, clusters, get, *, allow
p, role:org-admin, repositories, get, *, allow
p, role:org-admin, repositories, create, *, allow
p, role:org-admin, repositories, update, *, allow
p, role:org-admin, repositories, delete, *, allow
g, <new-user>, role:org-admin
policy.default: role:''
các bạn cần đọc tài liệu tham khảo để hiều về role này
https://github.com/argoproj/argo-cd/blob/master/assets/builtin-policy.csv
Nếu có j hay ho mình sẽ cập nhật thêm giờ apply là xong rồi
kubectl -n argocd apply -f argcd-rbac.yml
Mình apply thì nó báo là error: the path “argcd-rbac.yml” does not exist
nên chắc edit thôi:
kubectl edit configmap argocd-rbac-cm -n argocd
Giờ login bằng ui và thưởng thức thôi.