Publicado em 23. março 2023 por Jan Bunk
Você quer melhorar a segurança do seu aplicativo enquanto ainda mantém uma grande usabilidade? A autenticação local pode ser o caminho a seguir. Esta documentação lhe mostrará como você pode solicitar aos usuários de seu aplicativo que digitem o PIN do dispositivo, a impressão digital e a identificação da face antes de acessar partes do seu aplicativo.
Habilite a permissão biométrica em suas configurações de permissão. Caso contrário, este recurso pode funcionar apenas parcialmente (sem identificação facial) ou quebrar de maneiras inesperadas.
executeWhenAppReady()
do
nosso script auxiliar de aplicação. Ele garante que seu site não tente interagir com o aplicativo antes que ele esteja pronto ou quando o site for carregado usando um navegador comum (ReferenceError, function is not defined).
requestLocalAuthentication
Use esta função para solicitar a autenticação do usuário.
<script>
try {
// This message will be displayed to the user along with the prompt.
let reason = "Please authenticate to access this part of the app";
// returns a boolean. True if the authentication was successful, false if it failed (e.g. because the user
// canceled it by pressing the back button).
let authenticationResult = (await requestLocalAuthentication(reason))["result"];
}
catch (e) {
switch(e) {
case "NotAvailable":
// The user has not configured an authentication method on the device.
// Occurred on Android in this case, difference to PasscodeNotSet is not completely clear.
break;
case "PasscodeNotSet":
// The user has not configured a passcode (iOS) or PIN/pattern/password (Android) on the device
break;
case "LockedOut":
// Authentication is temporarily locked due to too many attempts.
break;
case "PermanentlyLockedOut":
// Authentication is more persistently locked out than with "LockedOut".
// Strong authentication like PIN/Pattern/Password is required to unlock.
break;
}
}
</script>