Cómo Implementar A2F usando Swivel en una aplicación Scriptcase? Quiero empezar hablando de Swivel, Swivel es un proveedor de soluciones de autenticación quienes han sido galardonados años atrás con el Premio SC Magazine Europe Award a la mejor solución de autenticación multifactor.

Dentro de sus productos de factores de autenticación se encuentran: OneTouch PUSH, SMS, Token, PINpad, TURing y PINsafe. En esta publicación usaremos TURing aunque realmente cambiando unos parámetros podríamos usar PINsafe enviando un SMS por ejemplo.

Cómo funciona TURing ?

Primero, a cada usuario que usará esta opción se le asignará previamente un pin, el cual es un código de 4 dígitos, el cual el usuario deberá recordar – tal y como la clave de nuestra tarjeta débito  -. Esta labor la realiza el administrador de servidor Swivel.

La aplicación web para poder hacer la doble autenticación (A2F) del usuario requiere de un OTC –  One Time Code, el cual solicitará que el usuario digite. Si no sabes que es te invito a leer mi anterior publicación “Autenticación de 2 factores con Scriptcase”.

Para poder determinar cual es el OTC que el usuario debe ingresar e como implementar , en el momento de la autenticación y luego de hacer la conexión al servidor Swivel, un código de 10 dígitos son enviados al navegador del usuario en forma de una  imagen rectangular, luego, el usuario toma los números representados por su PIN en dicha imagen – el pin que previamente el administrador de Swivel le asignó -. Es decir, que si el PIN es 5273, entonces simplemente debe escribir el número que en la imagen está en la 5a posición, luego el número que está en la 2a posición, luego el número de la 7a posición y finalmente el número de la 3a posición, todo esto basado en la imagen que el servidor ha enviado.

 Ejemplo TURing. Con base en el ejemplo descrito anteriormente, el OTC sería 3507

Cabe anotar que obviamente las imágenes generadas por el servidor son dinámicas,  distintas cada vez que se solicita un OTC.

Otro punto a tener en cuenta, y lo mencionaba en la publicación anterior, es que cada proveedor indica cómo debe integrarse y en muchos casos coloca a disposición del desarrollador recursos en diferentes lenguajes de programación. Pues en el caso de Swivel, tenía ejemplos en PHP, los cuales bajé y empecé a entender cómo funcionaba para luego hacer la adaptación en Scriptcase. Les recomiendo que siempre prueben por aparte los demos o ejemplos de los proveedores asegurándose de que funcionan bien antes de ir a Scriptcase a implementarlo, esto les puede evitar grandes dolores de cabeza. ?

En resumen, lo que primero que hice fué entender el funcionamiento del ejemplo y lo adapté a mis necesidades creando una librería php, la cual usaría en Scriptcase por medio de 2 aplicaciones de tipo blank, decidí que fueran 2 aplicaciones diferentes por la manera en que trabaja el TURing. Una aplicación llamada Token, la cual es llamada luego de la validación del Login y Password normal ( primer factor) y que gestiona la configuración de conexión al servidor, como también su interfaz gráfica de solicitud del segundo factor y por último, la validación del código ingresado por el usuario. La segunda aplicación podría ser considerada como un procedimiento el cual se encarga explícitamente de mostrar la imagen generada por el servidor por medio de una url en la plantilla de la aplicación 1.

Tal vez la anterior explicación puede ser algo confusa, por tal razón hice el siguiente video en donde explico con más detalle, la manera en la cual se hizo la implementación.

Es evidente que existen diferentes maneras de implementar, pero el objetivo de esta publicación es mostrarles cual es una de ellas y que pueda servir de ejemplo en sus proyectos.

En mi siguiente publicación les hablaré de cómo Implementar A2F usando un Desarrollo Propio en NodeJS.

¡Vea más artículos en nuestro blog!

Por ,

8 de February de 2019

Compartir esta publicacion

a

También podría gustarte…

Desarrollo de software impulsado por IA: el papel de ChatGPT

En el mundo en constante evolución de la tecnología, la inteligencia artificial (IA) está desemp...

Low-Code: La Clave para una Transformación Digital Accesible

La transformación digital es un imperativo para las empresas que desean mantenerse competitivas en...

Tendencias de TI y Desarrollo Web para 2024: Hacia Nuevos Horizontes Tecnológicos

El mundo de la Tecnología de la Información (TI) y el Desarrollo Web está en constante evolució...

También podría gustarte…

Obtenga nuevas publicaciones, recursos, ofertas y más cada semana.

Utilizaremos la información provista para enviarle por correo electrónico boletines y ofertas. Puede darse de baja de los correos electrónicos en cualquier momento simplemente haciendo clic en el enlace "unsubscribe" en la parte inferior de cualquier correo electrónico o contactándonos a privacy @ scriptcase.net . Obtenga más información sobre nuestra Privacy Police .