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
Implementare il throttling in ASP.NET Core
Supportare il sorting di dati tabellari in Blazor con QuickGrid
Eseguire le GitHub Actions offline
Eseguire operazioni con timeout in React
Evitare (o ridurre) il repo-jacking sulle GitHub Actions
Migrare una service connection a workload identity federation in Azure DevOps
Usare lo spread operator con i collection initializer in C#
Specificare il versioning nel path degli URL in ASP.NET Web API
Creazione di componenti personalizzati in React.js con Tailwind CSS
Utilizzare QuickGrid di Blazor con Entity Framework
Gestire domini wildcard in Azure Container Apps
Effettuare il binding di date in Blazor
I più letti di oggi
- Utilizzare Docker Compose con Azure App Service
- Utilizzare QuickGrid di Blazor con Entity Framework
- Modernizzare le applicazioni WPF e Windows Forms con Blazor
- ASP 3 per esempi
- annunciato #netstandard 2.1. .NET Core lo supporterà a partire da #netcore3, così come le prossime versione di #xamarin, #mono e #unity.il supporto per #netfx 4.8, invece, non ci sarà. https://aspit.co/bq2