Conceptos

Términos y definiciones básicas utilizados en toda la documentación de ZofToken.

Definiciones

ZofToken

La Solución ZofToken se compone de una Instancia ZofToken (que usualmente se implementa con un un único ZofToken Server pero puede incluir varios) y un número ilimitado de aplicaciones instaladas en smartphones Android o Apple (ya sea ZofToken Universal App o aplicaciones integradas con el ZofToken SDK).

Un ZofToken (o simplemente un token) está compuesto por un Identificador de Usuario enrolado a un Servicio (ver las definiciones abajo) dentro de una instancia específica y contiene el secreto de autenticación correspondiente.

ZofToken as a Service (ZaaS)

Si bien en general no recomendamos tercerizar aspectos críticos de seguridad y por lo tanto consideramos superior la implementación de una instancia privada de ZofToken Server, a efectos de pruebas técnicas, proyectos de entusiastas o para organizaciones cuyos requerimientos de negocio sean compatibles con este modelo, ofrecemos ZaaS como una forma rápida de disponibilizar una instancia cloud.

Clientes y usuarios

Un cliente es una organización que opera una instancia ZofToken (ya sea en forma privada o a través de ZaaS) mientras que un usuario es alguien que cuenta con uno o más tokens enrolados.

Servicios

Cada instancia ZofToken puede gestionar un número ilimitado de servicios que sirven para múltiples objetivos incluyendo la agrupación de usuarios, segregación de accesos a distintos activos o permitir implementar diferentes configuraciones dentro de la misma instancia.

Identificadores de Usuario

Cada identificador de usuario es una cadena de carácteres (con soporte UTF-8) seleccionada por el cliente para cierto usuario. Los identificadores de usuario más comunes son nombres de usuario en activos o sistemas ya existentes, direcciones de correo electrónico o números de documento o pasaporte, pero en general no existen limitaciones técnicas para el tipo de identificadores que puede utilizarse.

Enrolamiento

Este es el proceso a través del cual un cliente y un usuario establecen un token para proteger el acceso a algún activo. Tiene dos fases: primero el cliente crea una solicitud dentro de su instancia ZofToken y le provee al usuario la información de enrolamiento. Luego el usuario configura el token dentro de la aplicación correspondiente ya sea escaneando un código QR, accediendo a un deeplink o introduciendo un código de uso único según la modalidad que se haya elegido.

PIN y PIN de Coacción

En el caso de usar ZofToken Universal App, durante el proceso de enrolamiento, el usuario deberá seleccionar un PIN de 4 dígitos para autorizar las operaciones con el token.

Si la configuración del servicio realizada por el cliente lo permite, el usuario podrá opcionalmente seleccionar otro PIN de 4 dígitos para indicar que la operación en el token está siendo realizada bajo coacción.

En el caso de aplicaciones ya existentes o diseñadas a medida que implementen el ZofToken SDK, este proceso que es crítico para proteger el secreto de autenticación puede realizarse de igual forma (utilizando las funciones provistas por el propio SDK) o por mecanismos alternativos como, por ejemplo, biometría).

Estado

En cualquier momento dentro de su ciclo de vida, un token estará en uno de los estados descritos por la siguiente lista:

  • Esperando enrolamiento – el token fue creado dentro de la instancia ZofToken, pero el usuario aún no ha terminado el proceso de enrolamiento.
  • Cerrado – el usuario tiene su token en el estado cerrado/desactivado.
  • Abierto – luego de que el usuario abre/activa su token, y durante un período de tiempo configurado en el servicio, el token se encontrara en el estado abierto.
  • Coacción – (únicamente disponible si está habilitado por la configuración del servicio) indica que la última operación realizada por el usuario (ya sea una apertura o cierre del token) fue realizada utilizando la funcionalidad de coacción.
  • Bloqueado – el token ha sido bloqueado ya sea por 3 intentos erróneos de acceso consecutivos o manualmente por un administrador de la instancia.
Authkeys

Cada instancia puede tener un número ilimitado de authkeys que permiten el acceso a la API.

Estos authkeys pueden ser configurados con toda la granularidad que sea necesaria, aplicando solamente a algunos servicios o identificadores de usuario específicos, y permitiendo el uso de todas las operaciones disponibles en la API o simplemente la consulta del estado de los tokens.