Abbiamo già affrontato in precedenza il tema dell'autenticazione e della sicurezza, parlando di come Windows Hello aiuti ad identificare l'utente senza però richiedere l'uso di username e password, ma mantenendo altissimi gli standard di sicurezza. Parlando di Windows Hello abbiamo però parlato solo di una tipologia di autenticazione, quella basata sul riconoscimento facciale, ma abbiamo completamente tralasciato un altro pezzo che riguarda un settore che sta crescendo molto, visibile soprattutto nei nuovi device che vengono rilasciati in questo periodo: il riconoscimento biometrico tramite lettura d'impronte.
All'interno di Windows 10 ci sono le API di Windows.Security.Credentials che gestiscono tutta la parte di autenticazione per noi, così che ci si debba preoccupare solo della logica applicativa e non del riconoscimento stesso:
private async Task<bool> AuthenticateWithFingerprintAsync() { try { // controllo della disponibilità del device var isAvailable = await UserConsentVerifier.CheckAvailabilityAsync(); // device disponibile all'uso if (isAvailable == UserConsentVerifierAvailability.Available) { // verifica dell'utente var consentResult = await UserConsentVerifier.RequestVerificationAsync("La mia app vuole assicurarsi che sei tu, Matteo..."); // utente riconosciuto if (consentResult == UserConsentVerificationResult.Verified) return true; } else { await new MessageDialog($"Non è stato possibile autenticarsi. Stato: {isAvailable}").ShowAsync(); } } catch (Exception ex) { await new MessageDialog($"Si è verificato un errore durante la richiesta: {ex}").ShowAsync(); } return false; }
Come si può vedere dall'esempio, il codice è molto simile a quanto abbiamo già visto in precedenza nello script relativo a Windows Hello: le API sono esattamente le stesse ma è il sistema operativo a prendersi carico di gestire i device disponibili e di capire con una certa accuratezza se il device è libero, se è stato bloccato da group policy oppure se l'utente è riconoscibile con una certa percentuale di sicurezza.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Visualizzare le change sul plan di Terraform tramite le GitHub Actions
Configurare il nome della run di un workflow di GitHub in base al contesto di esecuzione
Implementare l'infinite scroll con QuickGrid in Blazor Server
Utilizzare il nuovo modello GPT-4o con Azure OpenAI
Bloccare l'esecuzione di un pod in mancanza di un'artifact attestation di GitHub
Sfruttare MQTT in cloud e in edge con Azure Event Grid
Le novità di Angular: i miglioramenti alla CLI
Gestire eccezioni nei plugin di Semantic Kernel in ASP.NET Core Web API
Miglioramenti nell'accessibilità con Angular CDK
Filtrare i dati di una QuickGrid in Blazor con una drop down list
Garantire la provenienza e l'integrità degli artefatti prodotti su GitHub
Paginare i risultati con QuickGrid in Blazor
I più letti di oggi
- Microsoft aggiorna WinFS beta 1 per VS 2005
- Utilizzare CLEditor per consentire l'input di HTML in ASP.NET MVC
- Build 2015: segui con noi tutte le novità per gli sviluppatori in diretta da San Francisco
- VS 2005 e SQL Server 2005 Express da scaricare
- WS-I approva Basic Profile 1.0
- Utilizzare il metodo reduce in JavaScript