SecureStorage Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Предоставляет простое безопасное хранилище для пар "ключ-значение".
public static class SecureStorage
- Наследование
-
System.ObjectSecureStorage
Комментарии
Каждая платформа использует собственные API платформы для безопасного хранения данных:
- iOS: данные хранятся в цепочке ключей. Дополнительные сведения о secAccessible по адресу: Security.SecAccessible:
- Android: ключи шифрования хранятся в хранилище ключей, а зашифрованные данные — в именованном контейнере общих предпочтений (PackageId.Xamarin.Essentials).:
- UWP: данные шифруются с помощью DataProtectionProvider и хранятся в с именем ApplicationDataContainer (с именем контейнера ApplicationId.Xamarin.Essentials).:
ПРИМЕЧАНИЕ. На устройствах Android под управлением API 23 (6.0 Marshmallow) нет AES, доступных в KeyStore. Рекомендуется, чтобы этот API создал пару ключей RSA/ECB/PKCS7Padding, хранящуюся в KeyStore (единственный тип, поддерживаемый в KeyStore этими более низкими уровнями API), которая используется для упаковки ключа AES, созданного во время выполнения. Этот упакованный ключ хранится в разделе Параметры.
Свойства
DefaultAccessible |
iOS: secAccessible по умолчанию используется для всех вызовов Get/Set в KeyChain. Значение по умолчанию — AfterFirstUnlock. |
LegacyKeyHashFallback |
Если пара |
Методы
GetAsync(String) |
Возвращает расшифрованное значение для заданного ключа. |
Remove(String) |
Удаляет зашифрованную пару "ключ-значение" для заданного ключа. |
RemoveAll() |
Удаляет все хранимые пары "ключ-значение". |
SetAsync(String, String) |
Сохраняет зашифрованное значение для заданного ключа. |
SetAsync(String, String, SecAccessible) |
Сохраняет зашифрованное значение для заданного ключа. Переопределите iOS, чтобы указать SecAccessible для цепочки ключей. |