In un mondo sempre più connesso, diventa via via più normale avere tanti account creati per utilizzare i vari servizi di cui necessitiamo. Per questione di sicurezza, inoltre, non è consigliato condividere la stessa password su più servizi, così come è buona norma utilizzare password complesse: per questo diventa necessario l'uso di password manager oppure di servizi che ci ricordano quali password sono state utilizzate in un determinato contesto.
All'interno della Universal Windows Platform c'è il servizio del Credential Locker che si occupa proprio di salvare e recuperare le password in modo sicuro, ma non solo: è anche in grado di fare il roaming delle credenziali su tutti i device nella quale l'utente è loggato (tramite domain account) ed ha la nostra applicazione installata.
Per utilizzarlo è sufficiente creare un nuovo oggetto di tipo PasswordVault dove andremo ad aggiungere le PasswordCredentials, come mostrato nell'esempio seguente:
private void SaveCredentials(string username, string password) { var vault = new Windows.Security.Credentials.PasswordVault(); vault.Add(new Windows.Security.Credentials.PasswordCredential("Facebook", username, password)); } private void GetCredentials() { var vault = new Windows.Security.Credentials.PasswordVault(); var facebook = vault.FindAllByResource("Facebook"); // ... }
Sebbene dal codice sia piuttosto evidente che vengono salvati username e password, nulla vieta di salvare contenuti diversi, purché non siano blob di grandi dimensioni: il password manager nonostante il meccanismo di roaming automatico non va ad intaccare la quota di 100kb, pertanto possiamo aggiungere tutti i valori necessari, ma non bisogna approfittarsene poiché questo sistema diventerebbe inefficiente. Va considerato inoltre che per mantenere l'efficienza, non si possono salvare più di dieci valori per applicazione.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Recuperare automaticamente un utente e aggiungerlo ad un gruppo di Azure DevOps
Utilizzare la funzione EF.Parameter per forzare la parametrizzazione di una costante con Entity Framework
Utilizzare QuickGrid di Blazor con Entity Framework
Migliorare la scalabilità delle Azure Function con il Flex Consumption
Proteggere le risorse Azure con private link e private endpoints
Utilizzare EF.Constant per evitare la parametrizzazione di query SQL
Come EF 8 ha ottimizzato le query che usano il metodo Contains
Creare una libreria CSS universale: Immagini
Utilizzare gRPC su App Service di Azure
Utilizzare il metodo CountBy di LINQ per semplificare raggruppamenti e i conteggi
Selettore CSS :has() e i suoi casi d'uso avanzati
Supportare lo HierarchyID di Sql Server in Entity Framework 8
I più letti di oggi
- Utilizzare gli schematics di Capacitor per Angular
- Ottenere il riferimento alla finestra che ha aperto un'altra finestra con HTML5 e JavaScript
- Una chat P2P con Windows Communication Foundation
- Mostrare un Popup di Feedback nella Universal Windows Platform
- Applicare effetti di luce nella Universal Windows Platform