다음을 통해 공유


SecureStorage 클래스

정의

키/값 쌍에 대한 간단한 보안 스토리지를 제공합니다.

public static class SecureStorage
상속
System.Object
SecureStorage

설명

각 플랫폼은 데이터를 안전하게 저장하기 위해 플랫폼 제공 네이티브 API를 사용합니다.

  • iOS: 데이터가 KeyChain에 저장됩니다. SecAccessible에 대한 추가 정보: : Security.SecAccessible
  • Android: 암호화 키는 KeyStore에 저장되고 암호화된 데이터는 명명된 공유 기본 설정 컨테이너(PackageId.Xamarin.Essentials)에 저장됩니다.
  • UWP: 데이터는 DataProtectionProvider로 암호화되고 명명된 ApplicationDataContainer에 저장됩니다(ApplicationId.Xamarin.Essentials 컨테이너 이름 포함).

참고: API 23(6.0 Marshmallow) 아래에서 실행되는 Android 디바이스에는 KeyStore에서 사용할 수 있는 AES가 없습니다. 모범 사례로 이 API는 런타임에 생성된 AES 키를 래핑하는 데 사용되는 KeyStore에 저장된 RSA/ECB/PKCS7Padding 키 쌍(이러한 하위 API 수준에서 KeyStore에서 지원되는 유일한 형식)을 생성합니다. 이 래핑된 키는 기본 설정에 저장됩니다.

속성

DefaultAccessible

iOS: KeyChain에 대한 모든 Get/Set 호출에 사용할 기본 SecAccessible입니다. 기본값은 AfterFirstUnlock입니다.

LegacyKeyHashFallback

키/값 쌍을 찾을 수 없는 경우 로 설정 true 하면 MD5 키 해시를 사용하여 값을 찾습니다.

메서드

GetAsync(String)

지정된 키의 암호 해독된 값을 가져옵니다.

Remove(String)

지정된 키에 대한 암호화된 키/값 쌍을 제거합니다.

RemoveAll()

저장된 암호화된 키/값 쌍을 모두 제거합니다.

SetAsync(String, String)

지정된 키에 대해 암호화된 값을 저장합니다.

SetAsync(String, String, SecAccessible)

지정된 키에 대해 암호화된 값을 저장합니다. iOS는 KeyChain에 대해 SecAccessible을 지정하도록 재정의합니다.

적용 대상