Login de QR para visão geral de autenticação sem senha
Um aplicativo pode iniciar uma transação de verificação de qrlogin, em seguida, esperar a conclusão dessa solicitação de verificação pelo usuário com o IBM Verify e, em seguida, continuar o acesso de tempo de execução.
Observação: este fator de autenticação não exige um cadastro específico, mas requer que o usuário registre pelo menos uma instância do aplicativo de autenticação móvel IBM Verify.
Fluxo de trabalho
O fluxo de trabalho de QRLogin consiste em três etapas principais.
- Criar um novo registro de verificação de login de Código QR
- Esta etapa cria um novo registro de verificação de qrlogin.
- A solicitação é gerada por meio de um contexto não autenticado.
- A resposta inclui o Código QR que deve ser varrido com os detalhes para que o aplicativo autenticador conclua a verificação.
- Pesquisar a conclusão de uma verificação de Login de QR existente
- Esta etapa determina se o dispositivo de varredura concluiu a verificação, varrendo o Código QR ou se a solicitação de verificação foi movida para algum outro estado concluído. Por exemplo, Sucesso, Tempo limite ou Com falha.
- A solicitação é gerada por meio de um contexto não autenticado.
- A resposta inclui o estado da solicitação de verificação, que determina se a transação de verificação foi concluída.
- Tentativa de concluir uma verificação de Login de QR existente
- Esta etapa muda o estado de uma transação de verificação PENDENTE para um estado de SUCESSO.
- A solicitação deve ser gerada por meio de um contexto autenticado. As autorizações de segurança da Api são necessárias para fazer uma verificação de qrlogin.
- A resposta conterá o código de Status Http 204 se a solicitação for processada com sucesso.
Pré-requisitos
- Deve-se solicitar do administrador um ID do cliente e um segredo do cliente para o cliente da API. Consulte “Criação de clientes de API ”.
- Obtenha um token de acesso OIDC.
Procedimento
- Obtenha as propriedades de QRLogin. Cons ulte as propriedades do QRLogin.
- Atualize as propriedades de QRLogin. Consulte Atualizar as propriedades do QRLogin.
Sobre esta tarefa
- Variáveis
- As variáveis a seguir são usadas neste exemplo. Substitua essas variáveis
nos comandos cURL pelos valores reais recebidos de suas solicitações.
Tabela 1. Valores de variáveis e exemplos Variáveis Descrição Valores de exemplo {{access_token}} Retornado como um resultado durante a troca de {{client_id}} e {{client_secret}} que são designados ao cliente da API. 4hFZq9U73P3MPEA40KcF54i77Z0mDhZba0InrzUe {{tenant}} O nome de domínio completo atribuído à sua Verify assinatura. Consiste no nome do hostverify.ibm.com... companyAppTest.verify.ibm.com - Definições
Tabela 2. Acrônimo Descrição LSI O LSI é um código único que é usado pelo autenticador móvel na tentativa de verificação subsequente e significa índice de sessão de login.É uma sequência alfanumérica aleatória. Essa sequência é gerada usando o modelo de dados de configuração para o índice da sessão de login. As opções de configuração são o comprimento do identificador de índice da sessão de login e o conjunto de caracteres que é usado para gerar o identificador alfanumérico. DSI O DSI é usado para pesquisa e significa índice de sessão de dispositivo.Essa sequência de caracteres é gerada usando o modelo de dados de configuração para o índice de sessão do dispositivo. As opções de configuração são o comprimento do identificador de índice de sessão do dispositivo e o conjunto de caracteres que é usado para gerar o identificador alfanumérico.
Obter as propriedades de QRLogin
Para obter as propriedades de QRlogin, use o seguinte comando cURL.
Comando cURL
curl -X GET \
https://{{tenant}}/config/v2.0/factors/qr \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {{access_token}}'
exemplocurl -X GET \
https://companyAppTest.verify.ibm.com/config/v2.0/factors/qr \
-H 'Accept: application/json' \
-H 'Authorization: Bearer 4hFZq9U73P3MPEA40KcF54i77Z0mDhZba0InrzUe'
Resposta de saída de exemplo{
"lsi": {
"charset": "134BCDAE",
"length": 6
},
"dsi": {
"charset": "12389EFGHIJKLMN",
"length": 40
},
"expiry": 60,
"enabled": false
}
Atualizar as propriedades de QRLogin
Crie um arquivo de propriedades que contenha as propriedades obtidas com o comando Get the QRLogin properties e nomeie-o config-payload.jsoncomo. Edite
os valores para atender a seu requisito. Por exemplo,
{
"lsi": {
"charset": "ABCDEFG123456789",
"length": 6
},
"dsi": {
"charset": "ABCDEFGHIJKLMNOPQRSTqrstuvwxyz0123456789",
"length": 40
},
"expiry": 60,
"enabled": true
}
Use o seguinte comando cURL para atualizar as propriedades de QRLogin.
Comando 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
exemplocurl -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
Resposta de saída de exemploHttp Status Code: 204