# Robot Account de Harbor para el pull secret ## El problema El secret `myregistrykey` del cluster guarda la contraseña personal de Harbor (en base64, que no es cifrado). Cualquiera con acceso al cluster puede leerla, y si se cambia la contraseña personal en Harbor, el despliegue deja de hacer pull sin motivo aparente. ## La solución Un *robot account* es un usuario artificial de Harbor pensado para máquinas: - Se crea dentro de un proyecto, con ámbito limitado - Permisos mínimos (solo *pull*) - Token independiente de la contraseña personal - Caducidad configurable - Revocable sin afectar al usuario real ## Crear el robot account 1. Entrar en Harbor → proyecto **reymota** → pestaña **Robot Accounts** → **New Robot Account** 2. Nombre: `regbrowser-pull` 3. Expiración: según preferencia (p. ej. 1 año) 4. Permisos: solo **Pull** sobre el proyecto 5. Copiar el token que se muestra una sola vez (y el nombre de usuario generado, con el formato `robot$reymota+regbrowser-pull`) ## Sustituir el secret en el cluster ```bash kubectl delete secret myregistrykey -n regbrowser kubectl create secret docker-registry myregistrykey \ --docker-server=harbor.reymota.es \ --docker-username='robot$reymota+regbrowser-pull' \ --docker-password='' \ -n regbrowser # Reiniciar para que haga pull con las nuevas credenciales kubectl rollout restart deploy/regbrowser -n regbrowser ``` ## Verificar ```bash kubectl get pods -n regbrowser # STATUS debe ser Running (no ImagePullBackOff) kubectl rollout status deploy/regbrowser -n regbrowser ```