Welcome to the Linux Foundation Forum!

Unable to update ArgoCD account password

Posts: 4
edited April 2024 in LFS256 Class Forum

Lab 3.3 Argo CD Security and RBAC says to set the password with the following command. I've included the errors and my other attempts

  1. $ argocd account update-password --account developer --new-password Developer123
  2. FATA[0000] Argo CD server address unspecified
  3.  
  4. $ argocd account update-password --account developer --new-password Developer123 --server localhost:8080
  5. FATA[0000] Failed to establish connection to localhost:8080: tls: failed to verify certificate: x509: certificate signed by unknown authority

Then I tried to trust the cert on my Mac via the following steps
1. export cert by going to my ArgoCD server URL via https://localhost:8080 on my browser
2. Added certificate to login keychain in Keychain Access utility.
3. Configure cert to "Always Trust"

Then when I try to update the password again, I get the following error

  1. $ argocd account update-password --account developer --new-password Developer123 --server localhost:8080
  2. FATA[0000] rpc error: code = Unauthenticated desc = no session information

I am using a work computer with a vpn that has caused me issues in the past with minikube, k3d, etc. Don't know if it is related.

Welcome!

It looks like you're new here. Sign in or register to get started.
Sign In

Answers

  • Posts: 4

    Using the username and password from the previous section, I logged in before executing the update-password command.

    1. argocd login localhost:8080 --name admin --password <secret:argocd-initial-admin-secret>
  • Hi @johchung
    I tried to reproduce the issue on a kind cluster as shown below:

    1. kind version
    2. kind v0.22.0 go1.21.7 darwin/arm64
    3.  
    4. kubectl get no
    5. NAME STATUS ROLES AGE VERSION
    6. kind-control-plane Ready control-plane 3d21h v1.29.2
    7. kind-worker Ready <none> 3d21h v1.29.2
    8. kind-worker2 Ready <none> 3d21h v1.29.2
    1. kubectl create namespace argocd
    2. kubectl apply --namespace argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml
    3.  
    4. kubectl --namespace argocd get po
    5. NAME READY STATUS RESTARTS AGE
    6. argocd-application-controller-0 1/1 Running 0 2m
    7. argocd-applicationset-controller-6c8fbc69b5-2kfkn 1/1 Running 0 2m
    8. argocd-dex-server-b6fc796d7-glsbp 1/1 Running 0 2m
    9. argocd-notifications-controller-6b66d47b45-gh9zr 1/1 Running 0 2m
    10. argocd-redis-76748db5f4-vfdp7 1/1 Running 0 2m
    11. argocd-repo-server-6f87db89c7-g92df 1/1 Running 0 2m
    12. argocd-server-7cbbdb87d7-84vg6 1/1 Running 0 2m
    13.  
    14. kubectl port-forward svc/argocd-server --namespace argocd 8080:443
    15. Forwarding from 127.0.0.1:8080 -> 8080
    16. Forwarding from [::1]:8080 -> 8080
    17.  

    Then I tried to log in using the admin credentials:

    1. kubectl --namespace argocd get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -d; echo
    2. <PASSWORD>
    3.  
    4. argocd login localhost:8080
    5. WARNING: server certificate had error: tls: failed to verify certificate: x509: certificate signed by unknown authority. Proceed insecurely (y/n)? y
    6. Username: admin
    7. Password:
    8. 'admin:login' logged in successfully
    9. Context 'localhost:8080' updated

    Then I added a new user to the ArgoCD config map as follows:

    1. kubectl edit cm argocd-cm --namespace argocd
    2. apiVersion: v1
    3. data:
    4. accounts.developer: login
    5. kind: ConfigMap
    6. metadata:
    7. labels:
    8. app.kubernetes.io/name: argocd-cm
    9. app.kubernetes.io/part-of: argocd
    10. name: argocd-cm
    11. namespace: argocd

    Finally, I updated the password for the new user:

    1. argocd account update-password --account developer --new-password Developer123
    2. *** Enter password of currently logged in user (admin):
    3. Password updated

    And I tried to log in using the new user:

    1. argocd login localhost:8080
    2. WARNING: server certificate had error: tls: failed to verify certificate: x509: certificate signed by unknown authority. Proceed insecurely (y/n)? y
    3. Username: developer
    4. Password:
    5. 'developer:login' logged in successfully
    6. Context 'localhost:8080' updated

    Here is the version of the ArgoCD and the CLI I used:

    1. argocd version
    2. argocd: v2.10.7+b060053.dirty
    3. BuildDate: 2024-04-15T12:31:39Z
    4. GitCommit: b060053b099b4c81c1e635839a309c9c8c1863e9
    5. GitTreeState: dirty
    6. GoVersion: go1.22.2
    7. Compiler: gc
    8. Platform: darwin/arm64
    9. argocd-server: v2.10.6+d504d2b
    10. BuildDate: 2024-04-05T00:27:47Z
    11. GitCommit: d504d2b1d92f0cf831a124a5fd1a96ee29fa7679
    12. GitTreeState: clean
    13. GoVersion: go1.21.3
    14. Compiler: gc
    15. Platform: linux/arm64
    16. Kustomize Version: v5.2.1 2023-10-19T20:13:51Z
    17. Helm Version: v3.14.3+gf03cc04
    18. Kubectl Version: v0.26.11
    19. Jsonnet Version: v0.20.0

    Can you please confirm that you have done the same steps?
    Thanks

  • Posts: 4

    Yup, after I logged in everything worked. Unfortunately, that step was not included in the lesson.

  • Posts: 4

    Hey @johchung,
    thank you for pointing this out. We will make sure to update the course material accordingly.

  • Posts: 490

    Hi @johchung,

    Thank you for flagging this. The course content has been updated to include this missing step.

    Best regards,
    Magda
    The Linux Foundation Training Team

Welcome!

It looks like you're new here. Sign in or register to get started.
Sign In

Welcome!

It looks like you're new here. Sign in or register to get started.
Sign In

Categories

Upcoming Training