Partager via


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 les API natives fournies par la plateforme 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érences partagées nommé (PackageId.Xamarin.Essentials).
  • UWP : les données sont chiffrées avec DataProtectionProvider et stockées dans une application nommée ApplicationDataContainer (avec un nom de conteneur ApplicationId.Xamarin.Essentials).

REMARQUE : Sur les appareils Android exécutant l’API 23 (6.0 Marshmallow), aucun AES n’est 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ée 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

DefaultAccessible

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

LegacyKeyHashFallback

Lorsqu’il est défini sur true si la paire clé/valeur est introuvable, le hachage de clé MD5 est également utilisé pour tenter de localiser une valeur.

Méthodes

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)

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

SetAsync(String, String, SecAccessible)

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

S’applique à