Publicado en 23. marzo 2023 por Jan Bunk
¿Quieres mejorar la seguridad de tu aplicación manteniendo una gran usabilidad? La autenticación local puede ser el camino a seguir. Esta documentación te mostrará cómo puedes pedir a los usuarios de tu aplicación que introduzcan el PIN, la huella dactilar o el Face ID de su dispositivo antes de acceder a partes de tu aplicación.
Activa el permiso de biometría en tu configuración de permisos. De lo contrario, esta función podría funcionar solo parcialmente (sin Face ID) o romperse de forma inesperada.
executeWhenAppReady()
de nuestro script de ayuda de la aplicación. Garantiza que tu sitio web no intente interactuar con la aplicación antes de que esté lista o cuando tu sitio web se cargue utilizando un navegador normal (ReferenceError, function is not defined). requestLocalAuthentication
Utiliza esta función para pedir al usuario su autenticación.
<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>