SecureStorage Classe

Définition

Fournit un stockage sécurisé simple pour les paires clé/valeur.

public static class SecureStorage
Héritage
System.Object
SecureStorage

Remarques

Chaque plateforme utilise la plateforme fournie par l’API native pour stocker les données en toute sécurité :

  • iOS : les données sont stockées dans KeyChain. Informations supplémentaires sur SecAccessible à l’adresse : Security.SecAccessible
  • Android : les clés de chiffrement sont stockées dans keyStore et les données chiffrées sont stockées dans un conteneur de préférence partagée nommé (PackageId.Xamarin. Essentials). :
  • UWP : les données sont chiffrées avec DataProtectionProvider et stockées dans un applicationDataContainer nommé (avec un nom de conteneur d’ApplicationId.Xamarin. Essentials). :

REMARQUE : Sur les appareils Android exécutant l’API 23 (6.0 Marshmallow) il n’existe aucun AES disponible dans KeyStore. Comme bonne pratique, cette API génère une paire de clés RSA/ECB/PKCS7Padding stockée dans KeyStore (le seul type pris en charge dans KeyStore par ces niveaux d’API inférieurs), qui est utilisé pour encapsuler une clé AES générée au moment de l’exécution. Cette clé encapsulée est stockée dans Préférences.

Propriétés

Nom Description
DefaultAccessible

iOS : SecAccessible par défaut à utiliser pour tous les appels Get/Set à KeyChain. La valeur par défaut est AfterFirstUnlock.

LegacyKeyHashFallback

true Si la paire clé/valeur est introuvable, le hachage de clé MD5 est également utilisé pour tenter de localiser une valeur.

Méthodes

Nom Description
GetAsync(String)

Obtient la valeur déchiffrée d’une clé donnée.

Remove(String)

Supprime la paire clé/valeur chiffrée pour la clé donnée.

RemoveAll()

Supprime toutes les paires clé/valeur chiffrées stockées.

SetAsync(String, String, SecAccessible)

Stocke la valeur chiffrée pour une clé donnée. Remplacement iOS pour spécifier SecAccessible pour le trousseau.

SetAsync(String, String)

Stocke la valeur chiffrée pour une clé donnée.

S’applique à