Share via


SecureStorage Classe

Definizione

Fornisce un'archiviazione sicura semplice per coppie chiave/valore.

public static class SecureStorage
Ereditarietà
System.Object
SecureStorage

Commenti

Ogni piattaforma usa la piattaforma fornita dall'API nativa per l'archiviazione sicura dei dati:

  • iOS: i dati vengono archiviati in KeyChain. Altre informazioni su SecAccess in: Security.SecAccessible
  • Android: le chiavi di crittografia vengono archiviate in KeyStore e i dati crittografati vengono archiviati in un contenitore di preferenze condiviso denominato (PackageId.Xamarin.Essentials).:
  • UWP: i dati vengono crittografati con DataProtectionProvider e archiviati in un nome ApplicationDataContainer (con un nome contenitore applicationId.Xamarin.Essentials).:

NOTA: nei dispositivi Android in esecuzione sotto l'API 23 (6.0 Marshmallow) non è disponibile AES in KeyStore. Come procedura consigliata, questa API genererà una coppia di chiavi RSA/BCE/PKCS7Padding archiviata in KeyStore (l'unico tipo supportato in KeyStore da questi livelli di API inferiori), che viene usato per eseguire il wrapping di una chiave AES generata in fase di esecuzione. Questa chiave con wrapping viene archiviata in Preferenze.

Proprietà

DefaultAccessible

iOS: impostazione predefinita secAccessibile da usare per tutte le chiamate Get/Set a KeyChain. Il valore predefinito è AfterFirstUnlock.

LegacyKeyHashFallback

true Se la coppia chiave/valore non viene trovata, viene usato anche l'hash della chiave MD5 per tentare di individuare un valore.

Metodi

GetAsync(String)

Ottiene il valore decrittografato per una determinata chiave.

Remove(String)

Rimuove la coppia chiave/valore crittografata per la chiave specificata.

RemoveAll()

Rimuove tutte le coppie chiave/valore crittografate archiviate.

SetAsync(String, String)

Archivia il valore crittografato per una determinata chiave.

SetAsync(String, String, SecAccessible)

Archivia il valore crittografato per una determinata chiave. Override di iOS per specificare SecAccess per KeyChain.

Si applica a