Mantenimiento formulario con datos encriptados.
Descripción:
En el post anterior (https://codigo-programacion-17.blogspot.pe/2017/10/ejemplo-2017-10-logging-encriptado.html), utilicé el método AES para encriptar el texto del log. Entonces, la misma librería fue la que usé para grabar los datos encriptados de una tabla de registros.
Dado que teníamos una fecha límite (30 días) para tener el programa con las especificaciones requeridas, opté por usar Grails para construir el proyecto. En este ejemplo, quiero describir la forma de encriptar los datos. También aclarar, que otras formas de resolver esto era:
- Emplear los método de encriptación de MySql,
- Configurar Hibernate para que haga la conversión.
Antes de insert o actualizar (beforeInsert, beforeUpdate) se encripta las información. Y cuando se lee de la tabla (afterLoad) se desencripta.
Obviamente, este es un caso muy simple. Pero, si lo hubiera creando procedimiento de base de datos hubiera significado desencriptar en cada consulta. O, encriptar cada campo en cada transacción.
Finalmente, la ventaja que con GORM tenemos los métodos findBy* que son muy útiles.
Configuración:
Grails 3.3.1
Gradle 3.5
Java 1.8