Closed pavel-kalmykov closed 6 years ago
Sobre pedir contraseña al usuario: https://stackoverflow.com/questions/2137357/getpasswd-functionality-in-go
Para el parseo de argumentos vamos a usar https://github.com/alexflint/go-arg
Para comprobar la seguridad de la contraseña, usamos el agoritmo zxcvbn
a través de la librería https://github.com/nbutton23/zxcvbn-go
Desarrollando en registro-cliente
@rpairo, al pedir la contraseña, ¿prefieres que se muestren los asteriscos o que no se muestre nada (como cuando te piden la contraseña para el sudo
)?
Personalmente prefiero que se muestren los asteriscos para proporcionar una mejor experiencia de usuario.
Como no podemos almacenar ninguna variable de entorno que se pueda persistir una vez salgamos del programa (como se indica en esta respuesta de StackOverflow https://stackoverflow.com/a/36074920), vamos a guardarlo en el keychain (o llavero) del sistema. Para ello, usaremos la librería https://github.com/zalando/go-keyring. Se ha actualizado la descripción de la issue para conformar esto.
Descripción
Como el servidor tendrá un servicio de usuarios, tendremos que implementar la comunicación -el consumo de ese servicio- desde el cliente.
La intención es que el cliente inicialmente actúe como CLI que reciba comandos por argumentos y realice las acciones asociadas a los mismos.
Condiciones de satisfacción
mbox signup
.mbox login
mbox help
) que mostrará los comandos disponibles y una descripción de lo que hace cada uno. Si ejecutamos el comando de ayuda, no mostraremos ningún error, tan sólo la propia ayuda.Referencias