Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 데이터 공유
- In-app Billing
- 카카오톡
- contentprovider
- signing
- AccountManager
- Google Cloud Messasging
- Google Cloud Messasing
- Activity 수명 주기
- unreal
- NSURLConnection
- 페이스북
- ios
- HTTP
- 다른 앱에서 열기
- xcode
- BLOCK
- android studio
- Push
- Unchecked Exception
- Android O Preview
- 트위터
- GCM
- gradle
- Android O
- service
- 안드로이드 개발 레벨업 교과서
- ios9
- Android
- 배포
Archives
- Today
- Total
노블의 개발이야기
[iOS] KeyChain 본문
Storing values in the KeyChain
Then use the SecItemAdd function to add a new item to your app's keychain.
SecItemAdd 함수를 사용하여 키체인에 새로운 아이템을 추가한다.
kSecClass
The value of this key is usually equal to kSecClassGenericPassword for storage of secure pieces of data, such as strings.
이 키 값은 일반적으로 문자열들의 보안 데이터 조각을 저장을 위한 kSecClassGenericPassword와 동일하다.
kSecAttrService.
The value of this key is usually a string. This string usually is our app bundle identifier.
이 키 값은 일반적으로 문자열이다. 이 문자열은 일반적으로 응용 프로그램 번들 식별자이다.
kSecAttrAccount.
The value of this key is a string that specifies the key to the value that we want to store.
This is an arbitaty string that should make sense to you and your app.
이 키값은 우리가 저장하려고하는 값의 키에 해당하는 문자열이다.
이것은 응용프로그램에서 지정해야하는 임의의 문자열이다.
kSecAttrGeneric
The kSecAttrGeneric attribute is used to store a unique string that is used to easily identify and find this keychain item. The string is first converted to an NSData object.
kSecAttrGeneric 속성은 고유 문자열을 저장하는데 사용된다. 이는 키체인 아이템을 찾는데 쉽게 식별하는데 사용된다. 이 문자열은 NSData 객체에 첫번째로 변환된다.
kSetValueData
The value of this key is an instance of NSData that you want to store for a given key.
이 키의 값은 주어진 키에 저장하려는 NSData의 인스턴스이다.
kSecAttrAccessible
Predefined item attribute constants used to get or set values in a dictionary.
dictionary안에 값을 get or set 을 하기 위한 미리 정의된 아이템 속성 상수이다.
The kSecAttrAccessible constant is the key and its value is one of the constants defined here.
kSecAttrAccessible 상수는 키, 그리고 그 값은 여기에 정의된 상수 중에 하나이다.
When asking SecItemCopyMatching to return the item's data, the error errSecInteractionNotAllowed will be returned if the item's data is not available until a device unlock occurs.
만약, 디바이스가 unlock이 발생할 때까지 항목의 데이터를 사용할 수 없는 경우, SecItemCopyMatching는 errSecInteractionNotAllowed 에러를 리턴할 것이다.
- kSecAttrAccessibleWhenUnlocked
Item data can only be accessed while the device is unlocked.
This is recommended for items that only need be accesible while the application is in the foreground.
디바이스가 잠금 해제 상태일 동안만 데이터에 엑세스 할 수 있다.
어플리케이션이 포그라운드에 있는 동안만 엑세스가 요구되는 항목에 대해 권장한다.
Items with this attribute will migrate to a new device when using encrypted backups.
이 속성을 가진 항목은 암호화된 백업을 사용할 때 새장치로 마이그레이션된다. (다른장치로 이동이 가능하다?)
- kSecAttrAccessibleAfterFirstUnlock
Item data can only be accessed once the device has been unlocked after a restart.
장지가 다시 시작한 후 잠금이 해제되었을 때 한번만 엑세스 할 수 있다.
This is recommended for items that need to be accesible by background applications.
백그라운드 어클리케이션에서 엑세스가 요구되는 항목에 대해 권장한다.
Items with this attribute will migrate to a new device when using encrypted backups.
이 속성을 가진 항목은 암호화된 백업을 사용할 때 새장치로 마이그레이션된다.
- kSecAttrAccessibleAlways
Item data can always be accessed regardless of the lock state of the device.
장치의 잠금 상태와 관계없이 항상 엑세스 할 수 있다.
This is not recommended for anything except system use.
시스템 사용을 제외하고 아무것도 권장하지 않는다.
Items with this attribute will migrate to a new device when using encrypted backups.
이 속성을 가진 항목은 암호화된 백업을 사용할 때 새장치로 마이그레이션된다.
- kSecAttrAccessibleWhenPasscodeSetThisDeviceOnly
Item data can only be accessed while the device is unlocked.
이 항목 데이터는 장치가 잠금이 해제 상태 일 때만 엑세스 할 수 있다.
This class is only available if a passcode is set on the device.
이 클래스는 장치에 passcode가 설정되어 있을 때만 사용할 수 있다.
This is recommended for items that only need to be accessible while the application is in the foreground.
어플리케이션이 포그라운드에 있는 동안만 엑세스가 필요한 항목에 권장한다.
Items with this attribute will never migrate to a new device, so after a backup is restored to a new device, these items will be missing.
이 속성을 가진 항목은 새 장치에 마이그레이션되지 않는다. 그래서 새로운 장치에 복원된 후 이 항목은 누락된다.
No items can be stored in this class on devices without a passcode.
passcode없이 장치의 이 클래스 안에 저장 될 수 없다.
Disabling the device passcode will cause all items in this class to be deleted.
장치 passcode를 사용하지 않도록 설정하면 이 클래스의 모든 아이템은 삭제되어진다.
- kSecAttrAccessibleWhenUnlockedThisDeviceOnly
Item data can only be accessed while the device is unlocked.
이 아이템 데이터는 디바이스가 언락되어 있을 동안만 엑세스 할 수 있다.
This is recommended for items that only need be accesible while the application is in the foreground.
응용프로그램이 포그라운드에 있을 때만 엑세스가 요구되는 아이템에 권장한다.
Items with this attribute will never migrate to a new device, so after a backup is restored to a new device, these items will be missing.
이 속성을 가진 아이템은 새 장치에 마이그레이션되지 않는다. 따라서 새 장치에 복원된 후 이 아이템은 누락된다.
- kSecAttrAccessibleAfterFirstUnlockThisDeviceOnly
Item data can only be accessed once the device has been unlocked after a restart.
이 아이템 데이터는 장치가 다시 시작할 수 잠금이 해제되었을 때 한번만 엑세스 할 수 있다.
This is recommended for items that need to be accessible by background applications.
백그라운드 어플리케이션에 의해 엑세스가 필요한 아이템에 권장한다.
Items with this attribute will never migrate to a new device, so after a backup is restored to a new device these items will be missing.
이 속성을 가진 아이템은 새 장치에 마이그레이션되지 않는다. 따라서 새 장치에 복원된 후 이 아이템은 누락된다.
- kSecAttrAccessibleAlwaysThisDeviceOnly
Item data can always be accessed regardless of the lock state of the device.
장치의 잠금 상태와 관계없이 항상 엑세스 할 수 있다.
This option is not recommended for anything except system use.
이옵션은 시스템 사용을 제외하고 아무것도 권장하지 않는다.
Items with this attribute will never migrate to a new device, so after a backup is restored to a new device, these items will be missing.
이 속성을 가진 아이템은 새 장치에 마이그레이션되지 않는다. 따라서 새 장치에 복원된 후 이 아이템은 누락된다.
Return types are specified as follows:
- To obtain the data of the added item as an object of type CFDataRef, specify the return type key kSecReturnData with a value of kCFBooleanTrue.
- CFDataRef 타입으로 추가된 데이터를 얻으려면 kSecReturnData 키의 값으로 kCFBooleanTrue를 지정한다.
- To obtain all the attributes of the added item as objects of type CFDictionaryRef, specify kSecReturnAttributes with a value of kCFBooleanTrue.
- CFDictionaryRef 타입으로 추가된 데이터를 얻으려면 kSecReturnAttributes 키의 값으로 kCFBooleanTrue를 지정한다.
- To obtain a reference to the added item of type SecKeycahinItemRef, SecKeyRef, SecCertificateRef, or SecIdentityRef), specify kSecReturnRef with a value of kCFBooleanTrue. This is the default behavior if a return type is not explicitly specified.
- SecKeycahinItemRef, SecKeyRef, SecCertificateRef or SecIdentityRef 타입으로 추가된 데이터의 참조를 얻으려면 kSecReturnRef의 키 값으로 kCFBooleanTrue를 지정한다. 만약 리턴 타입을 명시적으로 지정하지 않은 경우 기본 동작이다.
- To obtain a persistent reference to the added item (an object of type CFDataRef), specify kSecReturnPersistentRef with a value of kCFBooleanTrue. Note that unlike normal references, a persistent reference may be stored on disk or passed between processes.
- CFDataRef 타입으로 추가된 지속적인 참조를 얻으려면 kSecReturnPersistentRef 키의 값으로 kCFBooleanTrue를 지정한다.
이것은 일반 참조와 달리 지속적인 참조는 디스크에 저장 또는 프로세스간에 전달될 수 있다.
- If more than one of these return types is specified, the result is returned as an object of type CFDictionaryRef containing all the requested data.
- 만약 리턴 타입을 하나 이상 지정하게되면 리턴되는 결과는 요청된 데이터를 포함한 CFDictionaryRef 타입으로 반환된다.
[참고]
'iOS' 카테고리의 다른 글
[iOS] GCD(Grand Central Dispatch) 사용하기 (0) | 2015.04.23 |
---|---|
[IOS] ARC - Toll-Free Bridging (348) | 2015.04.23 |
[iOS] 네트워크 상태 체크 (0) | 2015.04.23 |
[iOS] NSString에 URL Encoding과 URL Decoding 메소드 추가하기 (0) | 2015.04.20 |
[iOS] NSUserDefaults (0) | 2015.04.17 |
Comments