Biométrico (Biometric)
Solicita al usuario autenticación biométrica en Android e iOS.
Plataformas Soportadas
Sección titulada “Plataformas Soportadas”Este plugin requiere una versión de Rust de al menos 1.77.2
| Plataforma | Nivel | Notas |
|---|---|---|
| windows | ||
| linux | ||
| macos | ||
| android | ||
| ios |
Configuración
Sección titulada “Configuración”Instala el plugin biometric para comenzar.
Usa el gestor de paquetes de tu proyecto para agregar la dependencia:
npm run tauri add biometricyarn run tauri add biometricpnpm tauri add biometricdeno task tauri add biometricbun tauri add biometriccargo tauri add biometric-
Ejecuta el siguiente comando en la carpeta
src-tauripara agregar el plugin a las dependencias del proyecto enCargo.toml:cargo add tauri-plugin-biometric --target 'cfg(any(target_os = "android", target_os = "ios"))' -
Modifica
lib.rspara inicializar el plugin:src-tauri/src/lib.rs #[cfg_attr(mobile, tauri::mobile_entry_point)]pub fn run() {tauri::Builder::default().setup(|app| {#[cfg(mobile)]app.handle().plugin(tauri_plugin_biometric::Builder::new().build());Ok(())}).run(tauri::generate_context!()).expect("error while running tauri application");} -
Instala los bindings de JavaScript utilizando tu gestor de paquetes de JavaScript preferido:
npm install @tauri-apps/plugin-biometricyarn add @tauri-apps/plugin-biometricpnpm add @tauri-apps/plugin-biometricdeno add npm:@tauri-apps/plugin-biometricbun add @tauri-apps/plugin-biometric
Configuración
Sección titulada “Configuración”En iOS el plugin biométrico requiere el valor de la propiedad de lista de información NSFaceIDUsageDescription, que debería describir por qué tu aplicación necesita usar autenticación biométrica.
En el archivo src-tauri/Info.ios.plist, agrega el siguiente fragmento:
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"><plist version="1.0"> <dict> <key>NSFaceIDUsageDescription</key> <string>Authenticate with biometric</string> </dict></plist>Este plugin te permite verificar la disponibilidad de Autenticación Biométrica en un dispositivo, solicitar al usuario autenticación biométrica y verificar el resultado para determinar si la autenticación fue exitosa o no.
Verificar Estado
Sección titulada “Verificar Estado”Puedes verificar el estado de la Autenticación Biométrica, incluyendo su disponibilidad y los tipos de métodos de autenticación biométrica soportados.
import { checkStatus } from '@tauri-apps/plugin-biometric';
const status = await checkStatus();if (status.isAvailable) { console.log('Yes! Biometric Authentication is available');} else { console.log( 'No! Biometric Authentication is not available due to ' + status.error );}use tauri_plugin_biometric::BiometricExt;
fn check_biometric(app_handle: tauri::AppHandle) { let status = app_handle.biometric().status().unwrap(); if status.is_available { println!("Yes! Biometric Authentication is available"); } else { println!("No! Biometric Authentication is not available due to: {}", status.error.unwrap()); }}Autenticar
Sección titulada “Autenticar”Para solicitar Autenticación Biométrica al usuario, utiliza el método authenticate().
import { authenticate } from '@tauri-apps/plugin-biometric';
const options = { // Set true if you want the user to be able to authenticate using phone password allowDeviceCredential: false, cancelTitle: "Feature won't work if Canceled",
// iOS only feature fallbackTitle: 'Sorry, authentication failed',
// Android only features title: 'Tauri feature', subtitle: 'Authenticate to access the locked Tauri function', confirmationRequired: true,};
try { await authenticate('This feature is locked', options); console.log( 'Hooray! Successfully Authenticated! We can now perform the locked Tauri function!' );} catch (err) { console.log('Oh no! Authentication failed because ' + err.message);}use tauri_plugin_biometric::{BiometricExt, AuthOptions};
fn bio_auth(app_handle: tauri::AppHandle) {
let options = AuthOptions { // Set True if you want the user to be able to authenticate using phone password allow_device_credential:false, cancel_title: Some("Feature won't work if Canceled".to_string()),
// iOS only feature fallback_title: Some("Sorry, authentication failed".to_string()),
// Android only features title: Some("Tauri feature".to_string()), subtitle: Some("Authenticate to access the locked Tauri function".to_string()), confirmation_required: Some(true), };
// if the authentication was successful, the function returns Result::Ok() // otherwise returns Result::Error() match app_handle.biometric().authenticate("This feature is locked".to_string(), options) { Ok(_) => { println!("Hooray! Successfully Authenticated! We can now perform the locked Tauri function!"); } Err(e) => { println!("Oh no! Authentication failed because : {e}"); } }}Permisos
Sección titulada “Permisos”De forma predeterminada, todos los comandos y alcances (scopes) potencialmente peligrosos del plugin están bloqueados y no se puede acceder a ellos. Debes modificar los permisos en tu configuración de capabilities para habilitarlos.
Consulta la Visión General de Capacidades para obtener más información y la guía paso a paso para usar permisos de plugins.
{ "$schema": "../gen/schemas/desktop-schema.json", "identifier": "main-capability", "description": "Capability for the main window", "windows": ["main"], "permissions": ["biometric:default"]}Permiso Predeterminado
Este conjunto de permisos configura qué características biométricas están expuestas de forma predeterminada.
Permisos Otorgados
Permite acceso a todos los comandos biométricos.
Este conjunto de permisos predeterminado incluye lo siguiente:
allow-authenticateallow-status
Tabla de Permisos
| Identificador | Descripción |
|---|---|
|
|
Habilita el comando authenticate sin ningún alcance preconfigurado. |
|
|
Deniega el comando authenticate sin ningún alcance preconfigurado. |
|
|
Habilita el comando status sin ningún alcance preconfigurado. |
|
|
Deniega el comando status sin ningún alcance preconfigurado. |
© 2026 Colaboradores de Tauri. CC-BY / MIT