Autenticação

O AppStudio AppFramework fornece um complemento de Autenticação que autentica usuários através de sua assinatura biométrica em dispositivos suportados. Você pode utilizar isto em conjunto com armazenamento seguro para armazenar e acessar credenciais, tokens ou qualquer informação sensível. Para utilizar esta funcionalidade, primeiro você precisa incluir a seguinte declaração de importação:

import ArcGIS.AppFramework.Authentication 1.0

Para obter um exemplo desta funcionalidade, consulte o aplicativo de amostra disponível em ArcGIS AppStudio ou no repositório de GitHub das amostras do AppStudio.

Autenticador Biométrico

O componente BiometricAuthenticator suporta autenticação via escaneamento de impressão digital nas plataformas do iOS, macOS, Android e Windows, como também, face ID no iPhone 10 e posterior. Para utilizar este recurso, seu aplicativo deve ter Autenticação Biométrica habilitada, que pode ser feito em Configurações > Recursos.

Para utilizar autenticação de impressão digital, o dispositivo do usuário deve ter um sensor de impressão digital incorporado ou um leitor portátil para habilitar este recurso em seu dispositivo e suas impressões digitais devem estar inscritas no seu dispositivo. A seguinte amostra de código utiliza as propriedades supported, activated e errorMessage para mostrar se esta funcionalidade é suportada. Se o autenticador não puder ser utilizado, uma mensagem de erro será exibida.

Text {
    id: supportCheck
    text: BiometricAuthenticator.supported ? "Fingerprint supported" : "Fingerprint not supported"
}
Text {
    id: activeCheck
    text: BiometricAuthenticator.activated ? "Fingerprint activated" : "Fingerprint not activated"
    anchors.top: supportCheck.bottom
}
Text {
    id: errormessage
    text: BiometricAuthenticator.errorMessage
    anchors.top: activeCheck.bottom
}

O componente BiometricAuthenticator tem um método authenticate que exibe uma caixa de diálogo de autenticação de impressão digital nativa e a propriedade message que define a mensagem de autenticação na caixa de diálogo. Para utilizar a autenticação biométrica, você deve definir a propriedade message e solicitar o método authenticate , estando ciente que message precisa ser definida antes de solicitar authenticate. A seguinte amostra de código mostra como utilizar o método authenticate ,juntamente com uma mensagem especificada:

Component.onCompleted: {
    BiometricAuthenticator.message = "Authenticate to log into your account"
    BiometricAuthenticator.authenticate()
}

O componente BiometricAuthenticator contém dois sinais para exibir o resultado do processo de autenticação. O sinal aceito é emitido quando a autenticação é bem sucedida, enquanto o sinal rejeitado é emitido, com explicação, quando a autenticação falhou devido a um erro ou cancelamento. A seguinte amostra de código utiliza estes sinais para retornar os resultados de uma varredura, com cada possível condição de falha sendo fornecida para uma string curta legível pelo usuário:

Text {
    id: status    anchors.top: errormessage.bottom
}
Connections {
    target: BiometricAuthenticator
    onAccepted: {
        status.text = "Success"
    }
    onRejected: {
        status.text = constructMessage(reason)    }
}
function constructMessage(reason) {
    var result = "";
    switch (reason)    {
    case 1:
        result = qsTr("Cancelled By User");
        break;
    case 2:
        result = qsTr("Invalid Credentials");
        break;
    case 3:
        result = qsTr("Not Configured");
        break;
    case 4:
        result = qsTr("User Fallback");
        break;
    case 5:
        result = qsTr("Permission Denied");
        break;
    case 6:
        result = qsTr("Biometric Not Supported");
        break;
    case 7:
        result = qsTr("Bad Capture");
        break;
    case 8:
        result = qsTr("Platform Not Supported");
        break;
    default:
        result = qsTr("Unknown");
    }
    return result;
}

Neste tópico
  1. Autenticador Biométrico