Posté le 23. mars 2023 par Jan Bunk
Vous souhaitez améliorer la sécurité de votre application tout en conservant une grande facilité d'utilisation ? L'authentification locale peut être la solution. La présente documentation vous montrera comment vous pouvez inviter les utilisateurs de votre application à saisir leur code confidentiel/empreinte digitale/identification faciale avant d'accéder à certaines parties de votre application.
Activez l'autorisation de biométrie dans vos paramètres d'autorisation. Sans cela, cette fonctionnalité risque de ne fonctionner que partiellement (pas d'identification des visages) ou de dysfonctionner de manière inattendue.
executeWhenAppReady()
dans notre script d'aide de l'application. Elle garantit que votre site web n'essaie pas d'interagir avec l'application avant qu'elle ne soit prête ou lorsque votre site web est chargé à l'aide d'un navigateur normal (Erreur de référence, la fonction n'est pas définie). requestLocalAuthentication
Utilisez cette fonction pour demander à l'utilisateur de s'authentifier.
<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>