Saltar al contenido principal

Permitir que los visitantes activen el inicio de sesión en dos pasos

Objetivo​

Permitir que alguien que inicia sesión en su portal active el inicio de sesión en dos pasos: una aplicación de autenticación en su teléfono a la que se le pide un código de seis dígitos cada vez que inicia sesión.

Antes de empezar​

Todo se reduce a un botón​

Dibuje un botón en cualquier pantalla de su portal y asígnele este controlador:

openAccountSecurity();

Eso es todo. La plataforma abre su propio panel sobre su página, y el visitante escanea un código, escribe seis dígitos y guarda sus códigos de recuperación sin que usted tenga que dibujar nada de ello.

O dibújelo usted​

Si prefiere que la página se parezca al resto de su sitio, dibuje una pantalla propia (detrás del inicio de sesión, puesto que trata sobre la cuenta del visitante) y dele estas llamadas, en este orden:

CuándoLlamada
Se carga la pantallaloadAccountSecurity("mfa"); state.mfa.enabled indica si está activado
Se pulsa ActivarlostartAuthenticator("enrol")
Se pulsa Comprobar el códigoverifyAuthenticator(getState("code"), "codes")
Se pulsa Ya los he guardadocompleteAuthenticator("done")
Se pulsa DesactivarlodisableAuthenticator(getState("offCode"))
  • El código QR es state.enrol.qrCode: agregue una imagen y enlace su origen a él. Ponga state.enrol.sharedKey al lado para quien tenga una cámara que no lea el código.
  • Los códigos de recuperación llegan a state.codes como una lista; repita una línea sobre ella que muestre row.code.
  • El inicio de sesión en dos pasos no está activado hasta completeAuthenticator. Comprobar el código solo demuestra que la aplicación funciona. Así que dibuje los códigos con una frase que indique al visitante que los guarde ahora (no se volverán a mostrar) y un botón para confirmar que lo ha hecho. Si su página olvidara ese paso, el factor simplemente seguiría desactivado en lugar de activarse con unos códigos que nadie vio.

El código QR se dibuja en el propio navegador del visitante; nunca se envía a ningún sitio para convertirlo en una imagen, porque contiene el secreto que usará su aplicación.

El ejemplo portal-landing-page incluye esto como su pantalla Sign-in security.

Qué ve el visitante​

El panel indica cómo está configurada su cuenta y ofrece la única opción disponible:

Su cuentaQué ofrece el panel
Inicio de sesión en dos pasos desactivadoActivar el inicio de sesión en dos pasos: escanear, demostrar, guardar los códigos
Inicio de sesión en dos pasos activadoCuántos códigos de recuperación quedan, y un cuadro para desactivarlo con un código actual

El orden es escanear → demostrar → anotar los códigos, y el factor no se activa hasta que se ha confirmado que se han guardado. Quien cierra la pestaña a mitad no ha cambiado nada de su cuenta, que es precisamente la razón de hacerlo en tres pasos en lugar de en uno.

Desactivarlo requiere un código​

Un visitante puede desactivar su propio inicio de sesión en dos pasos (es su cuenta), pero solo escribiendo un código actual o uno de sus códigos de recuperación. Es deliberado: desactivar un segundo factor es exactamente lo que haría alguien que hubiera robado una sesión.

Su propio personal no puede desactivar el suyo

Quienes inician sesión en el Shell de Parsware y en el Centro de control de administración deben tener un segundo factor, y en su lugar se les ofrece una manera de trasladarlo a un teléfono nuevo. Es una decisión sobre la superficie que contiene los registros de todos los clientes; no es una que tomemos en nombre de sus clientes.

Qué ocurre en el siguiente inicio de sesión​

Nada que tenga que dibujar. El formulario de inicio de sesión de la plataforma pide el código él mismo, junto a la dirección y la contraseña, y acepta un código de recuperación en el mismo cuadro: un código de recuperación no tiene seis dígitos, así que la plataforma sabe cuál de los dos recibe.

Si dibujó su propia página de inicio de sesión, necesita un cuadro de código que aparezca cuando signIn indique que la cuenta lo requiere; esa página explica cómo.

Lo que esto no hace​

  • No traslada una aplicación de autenticación a un teléfono nuevo en un solo paso. Un visitante que ya no tiene su teléfono desactiva el factor con un código de recuperación y lo vuelve a activar, lo que supone un paso más y no pierde nada.
  • No obliga a nadie. El inicio de sesión en dos pasos se ofrece a sus visitantes y nunca se les exige. Si su portal necesita exigirlo, es algo que hay que hablar con nosotros, no una pantalla que dibujar.
  • No hace nada en un portal que cualquiera puede abrir. No hay ninguna cuenta a la que pueda pertenecer un segundo factor, así que el botón lo indica en lugar de aparentar que funciona.

Pruébelo​

La solución de ejemplo portal-sign-in-and-accounts incluye esto en una pantalla llamada Sign-in security, con una página How this sample works que lo recorre paso a paso.

Temas relacionados​