Inicio de sesión de QR para la descripción general de la autenticación sin contraseñas
Una aplicación puede iniciar una transacción de verificación qrlogin y, después, esperar hasta que el usuario con IBM Verify complete la solicitud de verificación y continúa el acceso de tiempo de ejecución.
Nota: Este factor de autenticación no requiere una inscripción específica, pero sí requiere que el usuario registre al menos una instancia de la aplicación de autenticador móvil IBM Verify .
Flujo de trabajo
El flujo de trabajo QRLogin consta de tres pasos principales.
- Crear un nuevo registro de verificación de inicio de sesión de código QR.
- Este paso crea un nuevo registro de verificación qrlogin.
- La solicitud se genera a través de un contexto autenticado.
- La respuesta incluye el código QR que se va a examinar con los detalles para que la aplicación autenticadora complete la verificación.
- Sondear en búsqueda de la finalización de una verificación de inicio de sesión de QR existente
- Este paso determina si el dispositivo de exploración ha completado la verificación, ya sea examinando el código QR o porque la solicitud de verificación se ha trasladado a otro estado de finalización. Por ejemplo, Éxito, Tiempo de espera agotado o Error,
- La solicitud se genera a través de un contexto autenticado.
- La respuesta incluye el estado de la solicitud de verificación, que determina si la transacción de la verificación se ha completado.
- Intentar completar una verificación de inicio de sesión de QR existente
- Este paso cambia el estado de una transacción de verificación PENDING a un estado SUCCESS.
- La solicitud se debe generar a través de un contexto autenticado. Son necesarias titularidades de la seguridad de API para verificar una verificación qrlogin.
- La respuesta contiene el código de estado Http 204 si la solicitud se ha procesado correctamente.
Requisitos previos
- Debe solicitar un ID de cliente y un secreto de cliente para el cliente de API del administrador. Consulte Creación de clientes API.
- Obtenga un token de acceso OIDC.
Procedimiento
- Obtenga las propiedades de QRLogin. Consulte Obtener las propiedades de QRLogin.
- Actualice las propiedades QRLogin. Consulte Actualizar las propiedades de QRLogin.
Acerca de esta tarea
- Variables
- En este ejemplo se utilizan las variables siguientes. Sustituya estas variables en los mandatos cURL con los valores reales que haya recibido de las solicitudes.
Tabla 1. Valores variables y ejemplos Variables Descripción Valores de ejemplo {{access_token}} Se devuelve como un resultado cuando se intercambian los valores {{client_id}} y {{client_secret}} que se han asignado al cliente de API. 4hFZq9U73P3MPEA40KcF54i77Z0mDhZba0InrzUe {{tenant}} El nombre de dominio completo asignado a la suscripción de Verify . Consta de hostname.verify.ibm.com. companyAppTest.verify.ibm.com - Definiciones
Tabla 2. Acrónimo Descripción LSI LSI es un código único que utiliza el autenticador móvil en el siguiente intento de verificación y representa el índice de sesión de inicio de sesión.Es una serie alfanumérica aleatoria. Esta serie se genera utilizando el modelo de datos de configuración para el índice de sesión de índice de inicio de sesión. Las opciones de configuración son la longitud del identificador de índice de sesión de inicio de sesión y el conjunto de caracteres que se utiliza para generar el identificador alfanumérico. DSI DSI se utiliza para el sondeo y representa el índice de sesión de dispositivo.Esta serie se genera utilizando el modelo de datos de configuración para el índice de sesión de dispositivo. Las opciones de configuración son la longitud del identificador de índice de sesión de dispositivo y el conjunto de caracteres que se utilizan para generar el identificador alfanumérico.
Obtener las propiedades de QRLogin
Para obtener las propiedades QRlogin, utilice el mandato cURL siguiente.
Mandato cURL
curl -X GET \
https://{{tenant}}/config/v2.0/factors/qr \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {{access_token}}'
Ejemplocurl -X GET \
https://companyAppTest.verify.ibm.com/config/v2.0/factors/qr \
-H 'Accept: application/json' \
-H 'Authorization: Bearer 4hFZq9U73P3MPEA40KcF54i77Z0mDhZba0InrzUe'
Respuesta de salida de ejemplo{
"lsi": {
"charset": "134BCDAE",
"length": 6
},
"dsi": {
"charset": "12389EFGHIJKLMN",
"length": 40
},
"expiry": 60,
"enabled": false
}
Actualizar las propiedades de QRLogin
Cree un archivo de propiedades que contenga las propiedades que ha recuperado de Obtener las propiedades de QRLogin y asignarle el nombre config-payload.json. Edite los valores para cumplir el requisito. Por ejemplo:
{
"lsi": {
"charset": "ABCDEFG123456789",
"length": 6
},
"dsi": {
"charset": "ABCDEFGHIJKLMNOPQRSTqrstuvwxyz0123456789",
"length": 40
},
"expiry": 60,
"enabled": true
}
Utilice el mandato cURL siguiente para actualizar las propiedades QRLogin.
Mandato cURL
curl -X PUT \
https://{{tenant}}/config/v2.0/factors/qr \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {{access_token}}' \
-H 'Content-Type: application/json' \
-d @config-payload.json
Ejemplocurl -X PUT \
https://companyAppTest.verify.ibm.com/config/v2.0/factors/qr \
-H 'Accept: application/json' \
-H 'Authorization: Bearer 4hFZq9U73P3MPEA40KcF54i77Z0mDhZba0InrzUe' \
-H 'Content-Type: application/json' \
-d @config-payload.json
Respuesta de salida de ejemploHttp Status Code: 204