2009-12-08 2 views
10

jail-broken 전화가 아닌 iPhone의 경우 다른 앱이 NSUserDefaults을 사용하여 설정 한 값을 읽을 수 있습니까? 서비스에 대한 고객의 사용자 ID/비밀번호를 저장하는 것을 고려 중이며 안전한 지 확인하고자합니다.다른 프로그램에서 내 NSUserDefaults 설정을 읽을 수 있습니까?

+0

좋은 질문입니다. 나는 내 머리 꼭대기에서 그것을 알지 못한다. – TechZen

+4

암호를 사용할 수 있는지 여부에 관계없이 암호를 일반 텍스트로 저장하면 안됩니다. –

답변

9

아니요, 다른 애플리케이션은 사용자의 데이터를 볼 수 없습니다. 즉, 사용자 이름과 암호 같은 중요한 데이터를 저장하려면 iPhone의 keychain을 사용하는 것이 좋습니다.

1

아니요, 응용 프로그램은 샌드 박스 처리됩니다. 여기에는 환경 설정 및 사용자 데이터를위한 자체 디렉토리가 포함됩니다.

참조 : 모든 http://developer.apple.com/iPhone/library/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/ApplicationEnvironment/ApplicationEnvironment.html#//apple_ref/doc/uid/TP40007072-CH7-SW44

+1

아, 누락 된 쉼표의 어리 석음. 내 생각에 "아니요, 응용 프로그램은 샌드 박스 처리됩니다." –

-2

먼저, 유저 디폴트, the keychain에 사용자 ID/비밀번호를하지 절약해야한다.

둘째로, 다른 응용 프로그램은 NSUserDefaults를 읽을 수 있습니다. 기본값은 유닉스 스타일입니다 사용자은 응용 프로그램 기본값이 아닙니다. 이전 NextStep OS에서는 개별 사용자 기본값이 네트워크 연결된 컴퓨터에서 네트워크로 연결된 컴퓨터까지 이어집니다. 사용자는 모든 응용 프로그램에서 사용해야하는 기본 글꼴과 같은 항목에 대한 기본 설정을 가지고 있습니다.

아이폰은 MacOS X의 슬림화 된 버전이기 때문에 아이폰을 계승했습니다. 아이폰 앱에서 샌드 박스가 얼마나 철저한 지 모르겠습니다. 도메인과 값에 대한 적절한 키를 알고 있다면 시스템을 통해 침입하는 것이 가능할 수도 있습니다.

물론, Apple은 사용자의 기본 설정에 민감한 정보를 유지하는 것을 강력히 권유합니다.

관련 문제