Closed pavel-kalmykov closed 6 years ago
Desarrollando en servicio-registro-login
Se utilizará una implementación de AES en modo CTR, basada en la solución proporcionada en el Gist https://gist.github.com/manishtpatel/8222606.
La clave de este pepper o pimienta de momento la guardamos en el propio fichero fuente en donde reside esta implementación. Se deberá de diseñar un sistema a través del cual podamos recuperar esta clave de forma externa, pero en otra issue diferente.
Debido a la migración que se hizo en #4, la columna password
de la tabla users
es de tipo varchar(60)
. Usando el cifrado AES, la contraseña cifrada queda en 104 caracteres usando Base64, haciendo la inserción de usuarios imposible de esta forma.
Vamos a cambiar el tipo de esa columna por varchar
(o text
), que viene siendo exactamente el mismo tipo que varchar(60)
pero sin límite de carácteres (PostgreSQL no penaliza el no tener límite)
Descripción
Debemos de externalizar el modelo del usuario, y para ello crearemos un servicio tipo REST.
Condiciones de aceptación
Creación de usuarios
User
descrita en el diagrama con el nombre de usuario y la contraseña ya hasheada (con SHA-512) desde el cliente. Si falta algún dato o la contraseña viene sin cifrar, se devolverá un HTTP 400 Bad Request especificando cuál ha sido exactamente el error producido.Listado, detalles, edición, borrado
De momento no requeriremos autenticación para acceder a estos endpoints.
Referencias