SecureStorage Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Bietet eine einfache sichere Speicherung für Schlüssel-Wert-Paare.
public static class SecureStorage
- Vererbung
-
System.ObjectSecureStorage
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 |
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. |