SecureStorage 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
提供金鑰/值組的簡單安全記憶體。
public static class SecureStorage
- 繼承
-
System.ObjectSecureStorage
備註
每個平台都會使用平臺提供的原生 API 安全地儲存資料:
- iOS:數據會儲存在 KeyChain 中。 SecAccessible 的其他資訊:: Security.SecAccessible
- Android:加密密鑰會儲存在 KeyStore 中,而加密的數據會儲存在名為 的共用喜好設定容器中, (PackageId.Xamarin。Essentials) .:
- UWP:數據會使用 DataProtectionProvider 加密,並儲存在具名 ApplicationDataContainer (中,且容器名稱為 ApplicationId.Xamarin。Essentials) .:
注意:在低於 API 23 的 Android 裝置上, (6.0 Marshmallow) KeyStore 中沒有 AES 可用。 最佳做法是,此 API 會產生儲存在 KeyStore 中的 RSA/ECB/PKCS7Padding 密鑰組, (這些較低 API 層級所支援的唯一類型) ,用來包裝在運行時間產生的 AES 密鑰。 這個包裝的金鑰會儲存在 [喜好設定] 中。
屬性
DefaultAccessible |
iOS:預設的 Sec可存取用於 KeyChain 的所有 Get/Set 呼叫。 預設值為 AfterFirstUnlock。 |
LegacyKeyHashFallback |
|
方法
GetAsync(String) |
取得指定金鑰的解密值。 |
Remove(String) |
拿掉指定金鑰的加密金鑰/值組。 |
RemoveAll() |
拿掉所有儲存的加密金鑰/值組。 |
SetAsync(String, String) |
儲存指定金鑰的加密值。 |
SetAsync(String, String, SecAccessible) |
儲存指定金鑰的加密值。 iOS 覆寫以指定 KeyChain 的 SecAccessible。 |