2010-05-27 4 views
4

내 iPhone 앱용 키 체인을 제거 할 수있는 방법이 있습니까? 퍼지 명령이나 모든 키의 목록이므로 직접 삭제할 수 있습니다.iPhone 키 체인 퍼지

답변

9

제거 명령과 같은 것은 없습니다.
응용 프로그램에 액세스 할 수있는 키 체인이 응용 프로그램 전용이므로 어쨌든 쉽게 자신이 작성한 내용을 추적하고 삭제할 수 있습니다.

키 체인에 저장할 수있는 모든 가능한 데이터 유형을 하나씩 삭제하는 자체 제거 메소드를 구현할 수 있습니다.

- (BOOL)deleteKeychainData 
{ 
    /* delete custom data */ 
    NSMutableDictionary *searchData = [NSMutableDictionary new]; 
    [searchData setObject:(id)kSecClassGenericPassword forKey:(id)kSecClass]; 
    [searchData setObject:kTagKeychainService forKey:(id)kSecAttrService]; 

    OSStatus statusData = SecItemDelete((CFDictionaryRef)searchData); 
    [searchData release]; 

    CHECK_CONDITION1(statusData == errSecSuccess 
        || statusData == errSecItemNotFound, 
        @"Error while deleting keychain data, OSStatus == %d", statusData); 

    /* delete assymetric keys*/ 
    return [self deleteKeyPair]; 
} 

은 그래서 당신이해야 할 모든 가능한 kSecClass 값이 방법을 호출입니다 : 아래는 내 모든 GenericPassword 항목을 제거하는 방법이다.
다른 데이터 형식은 다른 사전 플래그를 설정해야합니다.

안부

관련 문제