Mac 앱 스토어에서 Xee라는이 앱을 구입했습니다. 파일을 완벽하게 열 수는 있지만 Xee 앱 내에서 폴더를 탐색하려고하면 권한을 요청해야합니다. (아래 스크린 샷 참조) 처음 탐색 할 때 모든 폴더에 대해이 작업을 수행해야합니다.
나는 이것이 앱 스토어에 의해 부과 된 제한이라고 가정합니다. 이것을 우회하고 응용 프로그램 (내 컴퓨터에 설치됨)에 디렉토리를 볼 수있는 권한을 부여하거나 원하는 모든 작업을 수행 할 수있는 방법이 있습니까?
Mac 앱 스토어에서 Xee라는이 앱을 구입했습니다. 파일을 완벽하게 열 수는 있지만 Xee 앱 내에서 폴더를 탐색하려고하면 권한을 요청해야합니다. (아래 스크린 샷 참조) 처음 탐색 할 때 모든 폴더에 대해이 작업을 수행해야합니다.
나는 이것이 앱 스토어에 의해 부과 된 제한이라고 가정합니다. 이것을 우회하고 응용 프로그램 (내 컴퓨터에 설치됨)에 디렉토리를 볼 수있는 권한을 부여하거나 원하는 모든 작업을 수행 할 수있는 방법이 있습니까?
답변:
약간 까다 롭지 만 16 진수 편집기로 <key>com.apple.security.app-sandbox</key>
값 (< true
/>으로 설정)을 변경하여 샌드 박스를 제거 할 수 있습니다 .
맥 OS 시에라 10.12 세트에에에 < false
/>
에서 맥 OS 엘 캐피 10.11 또는 이전 세트 그것에 < fals
/>
Xee의 경우 다음 바이너리를 편집해야합니다.
chmod a+x
16 진수 편집기를 사용하여 새 파일을 만든 경우 파일을 잊지 마십시오 .
앱이 샌드 박스로되어 있습니다. 이는 응용 프로그램이 일련의 권한으로 코드 서명되었음을 의미합니다. 이러한 권한은 Mac OS X에 의해 시행되고 있습니다. 샌드 박싱에 관한 Apple의 개발자 문서 는 자세한 내용을 제공합니다.
다음 Terminal.app 명령을 사용하여 Xee의 샌드 박스 권한을 볼 수 있습니다.
codesign --display --entitlements - /Applications/Xee.app
Ole Begemann의 기사 코드에서 코드 서명 및 샌드 박싱 상태 확인에서 자세한 내용을 설명합니다.
인 타이틀먼트를 제거하려면 인 타이틀먼트 없이 애플리케이션 을 다시 코딩하여 서명 하거나 애플리케이션 codesign
에서 코드 서명을 제거해야합니다.
Mac 응용 프로그램을 수정하지 않는 것이 좋습니다. Xee 개발자에게이 동작을 해결하는 방법에 대한 도움을 요청하십시오. 이 문제를 해결하기위한 적절한 지식 만 가지고 있습니다.
Xee의 개발자 는이 문제를 알고있는 것으로 보입니다.
(App Store 버전은 샌드 박스이며, 비 App Store 평가판 및 정식 버전은 샌드 박스가 아닙니다. OS X 샌드 박스의 안전성을 원한다면 App Store 버전을 가져와야합니다. 그러나 샌드 박스 버전은 특정 작업에 대한 권한을 요청 하고이 성가신 경우 앱 스토어가 아닌 버전을 가져와야합니다.)
이 제한 사항 및 워크 플로 제한 방법에 대한 피드백을 Apple 에 제공 하십시오. 고객 의견은 향후 Mac App Store 앱이 할 수있는 것과 할 수없는 것을 구체화하는 데 도움이됩니다. 현재로서는 Apple Mac App Store를 통해 구입 한 앱은 제한되어 있습니다.