У macOS Big Sur SIP enable странное поведение

#swift #xcode #macos #code-signing #macos-big-sur

#swift #xcode — код #macos #подписание кода #macos-big-sur

Вопрос:

У меня есть приложение для Mac, которое работает на Big Sur с отключенным SIP. Но когда я запускаю то же приложение в системе с поддержкой SIP, оно выходит из строя.

В журнале сбоев говорится

 Crashed Thread : 0
Exception Type : EXC_CRASH(Code signature invalid)
Termination Reason : Namespace CODESIGNING, Code 0x1
 

Но когда я запускаю codesign --verify --verbose , я вижу следующее:

 myApp.app: valid on disk

myApp.app: satisfies its Designated Requirement
 

Любая помощь, рекомендации, предложения и т.д. очень приветствуются.

Если вам понадобится какая-либо другая информация, пожалуйста, дайте мне знать. Я все обеспечу.

Правка 1:

Использование -vvvd

 macos-11-big-sur:~ anoopvaidya$ codesign -vvvd /Applications/myApp.app/
Executable=/Applications/myApp.app/Contents/MacOS/myApp
Identifier=com.my.myapp
Format=app bundle with Mach-O thin (x86_64)
CodeDirectory v=20500 size=54276 flags=0x10000(runtime) hashes=1685 7 location=embedded
Hash type=sha256 size=32
CandidateCDHash sha256=92c7351b0b1f45fd1300dfa51b9aed595d895b56
CandidateCDHashFull sha256=92c7351b0b1f45fd1300dfa51b9aed595d895b5622218031ee28d0fbfde937b2
Hash choices=sha256
CMSDigest=92c7351b0b1f45fd1300dfa51b9aed595d895b5622218031ee28d0fbfde937b2
CMSDigestType=2
CDHash=92c7351b0b1f45fd1300dfa51b9aed595d895b56
Signature size=9029
Authority=Developer ID Application: MY TECHNOLOGIES, INC. (XXXXXXXXXX)
Authority=Developer ID Certification Authority
Authority=Apple Root CA
Timestamp=07-Feb-2021 at 10:20:19 PM
Info.plist entries=20
TeamIdentifier=XXXXXXXXXX
Runtime Version=11.1.0
Sealed Resources version=2 rules=13 files=181
Internal requirements count=1 size=184
macos-11-big-sur:~ anoopvaidya$
 

Комментарии:

1. попробуйте codesign -vvvd xxx.app для получения подробной информации

2. @season: обновил мой вопрос с выводом

3. просто догадайтесь… Включаете ли вы песочницу приложений / защищенную среду выполнения / etc в возможностях? И какие сертификаты подписи вы используете? Или запустите spctl -a -v xxx.app, чтобы увидеть результаты

4. @season: нет, он не изолирован. Но да, в нем включена улучшенная среда выполнения и расширения.