SecureStorage 类

定义

为键/值对提供简单的安全存储。

public static class SecureStorage
继承
System.Object
SecureStorage

注解

每个平台都使用平台提供的本机 API 安全地存储数据:

  • iOS:数据存储在 KeyChain 中。 有关 SecAccessible 的其他信息,请参阅: Security.SecAccessible
  • Android:加密密钥存储在 KeyStore 中,加密数据存储在 PackageId.Xamarin (命名的共享首选项容器中。Essentials) .
  • UWP:数据使用 DataProtectionProvider 进行加密,并存储在容器名称为 ApplicationId.Xamarin 的命名 ApplicationDataContainer (中。Essentials) .

注意:在运行低于 API 23 (6.0 Marshmallow) 的 Android 设备上,KeyStore 中没有 AES 可用。 作为最佳做法,此 API 将生成存储在 KeyStore 中的 RSA/ECB/PKCS7Padding 密钥对, (KeyStore 中这些较低 API 级别) 支持的唯一类型,用于包装运行时生成的 AES 密钥。 此包装的密钥存储在“首选项”中。

属性

DefaultAccessible

iOS:默认 Sec 可访问,用于对 KeyChain 的所有 Get/Set 调用。 默认值为 AfterFirstUnlock。

LegacyKeyHashFallback

如果未找到键/值对,则设置为 true 时,MD5 键哈希也用于尝试查找值。

方法

GetAsync(String)

获取给定密钥的解密值。

Remove(String)

删除给定密钥的加密密钥/值对。

RemoveAll()

删除所有存储的加密密钥/值对。

SetAsync(String, String)

存储给定密钥的加密值。

SetAsync(String, String, SecAccessible)

存储给定密钥的加密值。 iOS 重写以指定 KeyChain 的 SecAccessible。

适用于