SecureStorage Klasse

Definition

Bietet eine einfache sichere Speicherung für Schlüssel-Wert-Paare.

public static class SecureStorage
Vererbung
System.Object
SecureStorage

Hinweise

Jede Plattform verwendet die plattformseitig bereitgestellten nativen API's zum sicheren Speichern von Daten:

  • iOS: Daten werden in KeyChain gespeichert. Weitere Informationen zu SecAccessible unter : Security.SecAccessible
  • Android: Verschlüsselungsschlüssel werden in KeyStore gespeichert, und verschlüsselte Daten werden in einem benannten Container mit freigegebenen Einstellungen (PackageId.Xamarin.Essentials) gespeichert:
  • UWP: Daten werden mit DataProtectionProvider verschlüsselt und in einem benannten ApplicationDataContainer gespeichert (mit dem Containernamen ApplicationId.Xamarin.Essentials).:

HINWEIS: Auf Android-Geräten, die unter API 23 (6.0 Marshmallow) ausgeführt werden, ist kein AES in KeyStore verfügbar. Als bewährte Methode generiert diese API ein RSA/ECB/PKCS7Padding-Schlüsselpaar, das in KeyStore gespeichert ist (der einzige Typ, der in KeyStore von diesen niedrigeren API-Ebenen unterstützt wird), das verwendet wird, um einen zur Laufzeit generierten AES-Schlüssel zu umschließen. Dieser umschlossene Schlüssel wird in Einstellungen gespeichert.

Eigenschaften

DefaultAccessible

iOS: Standardmäßiges SecAccessible-Element, das für alle Get/Set-Aufrufe von KeyChain verwendet werden soll. Der Standardwert ist AfterFirstUnlock.

LegacyKeyHashFallback

Wenn auf true festgelegt ist, wenn das Schlüssel-Wert-Paar nicht gefunden wird, wird der MD5-Schlüsselhash auch verwendet, um zu versuchen, einen Wert zu suchen.

Methoden

GetAsync(String)

Ruft den entschlüsselten Wert für einen bestimmten Schlüssel ab.

Remove(String)

Entfernt das verschlüsselte Schlüssel-Wert-Paar für den angegebenen Schlüssel.

RemoveAll()

Entfernt alle gespeicherten verschlüsselten Schlüssel-Wert-Paare.

SetAsync(String, String)

Speichert den verschlüsselten Wert für einen bestimmten Schlüssel.

SetAsync(String, String, SecAccessible)

Speichert den verschlüsselten Wert für einen bestimmten Schlüssel. iOS überschreiben, um SecAccessible für die KeyChain anzugeben.

Gilt für: