Search results for

“codesign”

3,221 results found

Post

Replies

Boosts

Views

Activity

Reply to security: SecKeychainItemImport: The user name or passphrase you entered is not correct.
Any updates on the bug ? Same issue. Sequoia 15.4.1 (24E263) OpenSSL 3.4.0 Steps for repoducing: Create .p12 without password openssl genpkey -algorithm RSA -out private_key.pem openssl req -new -key private_key.pem -out csr.pem openssl x509 -req -days 365 -in csr.pem -signkey private_key.pem -out certificate.pem openssl pkcs12 -export -out bundle.p12 -inkey private_key.pem -in certificate.pem Import .p12 to a keychain import bundle.p12 -k login.keychain -T /usr/bin/codesign -P And voila you've got the bug: security: SecKeychainItemImport: MAC verification failed during PKCS12 import (wrong password?)
Topic: Privacy & Security SubTopic: General Tags:
May ’25
Notarization Fails: “The binary is not signed with a valid Developer ID certificate” for Flutter macOS App Plugins (file_picker, file_saver, url_launcher_macos)
Hi all, I’m trying to notarize a Flutter macOS app built in CI (GitHub Actions). The app builds and signs fine locally—codesign --verify --deep --strict and spctl --assess both pass. However, Apple’s notarization service consistently rejects the app with errors like: The binary is not signed with a valid Developer ID certificate: file_picker.framework The binary is not signed with a valid Developer ID certificate: file_saver.framework The binary is not signed with a valid Developer ID certificate: url_launcher_macos.framework What I’ve tried: Explicitly re-signing all frameworks with my Developer ID Application certificate and --timestamp Removing existing signatures before re-signing Ensuring correct entitlements and bundle identifier Matching the app bundle name and identifier in all places Using both codesign --deep and manual signing of each binary Local validation always passes, but notarization fails in CI Certificate: I am using a “Developer ID Application” certificate (not a “Mac Dev
1
0
169
May ’25
Reply to Notarization Fails: “The binary is not signed with a valid Developer ID certificate” for Flutter macOS App Plugins (file_picker, file_saver, url_launcher_macos)
It’s really hard to read your post. Please take a look at Quinn’s Top Ten DevForums Tips, which has lots of suggestions for how to work effectively on the forums. Anyway, what I can see is this: [quote='784184021, BenAuerDev, /thread/784184, /profile/BenAuerDev'] Are there known issues with signing Flutter plugin frameworks for notarization? [/quote] I think you might have more luck asking that via the support channel for the third-party tool you’re using. However, my experience is that third-party tooling tends to bend the bundle placement rules outlined in Placing Content in a Bundle, and that causes all sorts of weird problems. [quote='784184021, BenAuerDev, /thread/784184, /profile/BenAuerDev'] Using both codesign --deep [/quote] I strongly recommend against using --deep when signing code. See --deep Considered Harmful. As to what you should do, you can find my general advice in: Creating distribution-signed code for macOS Packaging Mac software for distribution Beyond that, it’s hard to offer sp
Topic: Code Signing SubTopic: Notarization Tags:
May ’25
codesign wants to access key "access" in your bunch of keys
Hi,my apps run on the iOSSimulator without problems and used to run on devices as well, but after updating to latest XCode-Version I am getting the above error message when trying to run an app on my iPhone 7. It says :codesign wants to access key access in your bunch of keys . To allow this enter your password.... but my apple-Developer-ID-Password doesn't work. And until updating to latest XCode-Version I never had any problems with codesign when running an app on iPhone device.Any hints what's going wrong ?XCode Version 9.1 (9B55)iOS Version 11.1.2 (15B202)Latest High Sierra Version, macbook Pro 2015
38
0
138k
Oct ’23
Unsandboxed app can't modify other app
I work for Brave, a browser with ~80M users. We want to introduce a new system for automatic updates called Omaha 4 (O4). It's the same system that powers automatic updates in Chrome. O4 runs as a separate application on users' systems. For Chrome, this works as follows: An app called GoogleUpdater.app regularly checks for updates in the background. When a new version is found, then GoogleUpdater.app installs it into Chrome's installation directory /Applications/Google Chrome.app. But consider what this means: A separate application, GoogleUpdater.app, is able to modify Google Chrome.app. This is especially surprising because, for example, the built-in Terminal.app is not able to modify Google Chrome.app. Here's how you can check this for yourself: (Re-)install Chrome with its DMG installer. Run the following command in Terminal: mkdir /Applications/Google Chrome.app/test. This works. Undo the command: rm -rf /Applications/Google Chrome.app/test Start Chrome and close it again. mkdir /Applications/Google Chro
4
0
312
May ’25
Reply to Integrating CryptoTokenKit with productsign
I’ve not looked into the installer package side of this in depth but, in general, the transition from SHA1 to SHA256 is driven by the deployment target. If your product supports old releases, the system has to include both hashes to ensure compatibility with those systems. Now, with codesign I’m familiar with how that’s controlled, that is, via various Mach-O load commands. You can dump these using vtool. For installer packages, the productbuild man page described how you set the minimum supported OS version. Are you doing that? And just for testing, try setting it way up, to something silly like macOS 15. If that works, you can then step it back to determine the inflexion point. Share and Enjoy — Quinn “The Eskimo!” @ Developer Technical Support @ Apple let myEmail = eskimo + 1 + @ + apple.com
Topic: Privacy & Security SubTopic: General Tags:
May ’25
Disabling Hardened Runtime For Ad Hoc Signing Only
How can I disable Hardened Runtime in Xcode only when signing ad hoc? If I make a new project, Xcode will say Disabling hardened runtime with ad-hoc codesigning. at the beginning of the build logs. However, somehow my project isn't doing this -- it's still hardening the runtime when ad-hoc signing. What should I do to debug this?
5
0
183
May ’25
TKTokenSession not used
Hi, I'm working on developing my own CryptoTokenKit (CTK) extension to enable codesign with HSM-backed keys. Here's what I’ve done so far: The container app sets up the tokenConfiguration with TKTokenKeychainCertificate and TKTokenKeychainKey. The extension registers successfully and is visible via pluginkit when launching the container app. The virtual smartcard appears when running security list-smartcards. The certificate, key, and identity are all visible using security export-smartcard -i [card]. However, nothing appears in the Keychain. After adding logging and reviewing output in the Console, I’ve observed the following behavior when running codesign: My TKTokenSession is instantiated correctly, using my custom TKToken implementation — so far, so good. However, none of the following TKTokenSession methods are ever called: func tokenSession(_ session: TKTokenSession, beginAuthFor operation: TKTokenOperation, constraint: Any) throws -> TKTokenAuthOperation func tokenSession(_ session
3
0
147
Apr ’25
Issues Signing .app with Developer ID Certificate — Missing Private Key and Pipeline Concerns
I’m having issues trying to codesign a .app file. We generated the Developer ID Application certificate using the organization owner’s account. I downloaded the certificate to my Mac and imported it into my keychain, but when I run the codesign command below, I get the following error. Could you help me? What am I doing wrong? Is there any other way to sign the .app executable? From what I’ve seen in other posts, it looks like the certificate needs to have a private key, but the certificate I download from the developer portal doesn’t include the key. Also, about exporting it as a .p12 — I couldn’t quite understand if that’s considered a safe practice, since the organization owner’s private key would be included in this certificate that we plan to use in our pipeline.
1
0
185
May ’25
CodeSign : errSecInternalComponent
I’ve been wrestling with this for nearly a week now and none of the proposed fixes have worked. I’m trying to resign an app via Jenkins and have done the following: Created a custom keychain Imported the required .p12 certificates Installed the Apple WWDR certificate in the System keychain Made the login keychain my default Added my development keychain, the login keychain and the System keychain to the user keychain list Unlocked my development keychain Confirmed my signing identity is present Granted the appropriate partition list access to the keychain security set-key-partition-list -S apple-tool:,codesign: -k pwd /Users/ec2-user/Library/Keychains/development.keychain-db Yet when I invoke Fastlane’s resign action, I still see: _floatsignTemp/Payload/EverMerge.app/Frameworks/AppLovinSDK.framework: replacing existing signature _floatsignTemp/Payload/EverMerge.app/Frameworks/AppLovinSDK.framework: errSecInternalComponent Encountered an error, aborting! Any guidance on what might be causing this errS
1
0
172
May ’25
Reply to productbuild hangs with no output in github actions
also can confirm that I can take my bosses p12 files and set them up on my computer using this script KEYCHAIN_PATH1=$HOME/Library/Keychains/tmpsed1.keychain-db KEYCHAIN_PASSWORD1=$(openssl rand -base64 12) security create-keychain -p $KEYCHAIN_PASSWORD1 $KEYCHAIN_PATH1 security unlock-keychain -p $KEYCHAIN_PASSWORD1 $KEYCHAIN_PATH1 echo keychain-path=$KEYCHAIN_PATH1 echo keychain-password=$KEYCHAIN_PASSWORD1 #DEV_ID_APPLICATION=$(mktemp) #echo $DEV_ID_APPLICATION #base64 -i app.p12 | base64 -d >$DEV_ID_APPLICATION #cat $DEV_ID_APPLICATION security import app.p12 -f pkcs12 -k $KEYCHAIN_PATH1 -P password -T /usr/bin/codesign -T /usr/bin/security export DEV_ID_INSTALLER=$(mktemp) base64 -i installer.p12 | base64 -d >$DEV_ID_INSTALLER security import installer.p12 -f pkcs12 -k $HOME/Library/Keychains/tmpsed1.keychain-db -P “password” -T /usr/bin/pkgbuild -T /usr/bin/security -T /usr/bin/productbuild rm $DEV_ID_INSTALLER security set-key-partition-list -S apple-tool:,apple: -s -k $KEYCHAIN_PATH1 $K
May ’25
CodeSign with out Certificate and Profile
We are facing issue with resigning the app which is developed by 3rd party. In this app we have Sharing functionality feature for which we have enabled Associated Domains capability. When we are signing the app with our certificate and profile this functionality is not working i.e when we are clicking on shared link in the app it is redirecting to app store page instead of content link. However, when 3rd party is directly using our certificate & profile then that functionality is working as expected. Could you please help us with the above issue why it is not working when we are resigning with our certificate and profile?
2
0
190
May ’25
Reply to Gatekeeper "bundle_id: NOT_A_BUNDLE" rejection
[quote='837189022, LinuxProg, /thread/782331?answerId=837189022#837189022, /profile/LinuxProg'] It would be very useful for Apple to add a test VM creation CLI to the developer toolkit [/quote] I tend to agree but, given that current reality, I encourage you to explore the raft of third-party options out there [1]. As to your original issue, adding an extension is the right option here. macOS draws a clear distinction between bundled and non-bundle code. This really matters when comes to code signing. See the discussion is Creating distribution-signed code for macOS. That Java runtime is signed as a bundle: % codesign -d -vvv jdk-21.0.7+6-jre Executable=/Users/quinn/Desktop/jdk-21.0.7+6-jre/Contents/MacOS/libjli.dylib Identifier=net.java.openjdk.jre Format=bundle with Mach-O thin (arm64) ^^^^^^ However, the exact definition of what constitutes a bundle is more squishy then it should be. It seems that codesign and Gatekeeper disagree as to whether the file name extension is required, which is
Topic: Code Signing SubTopic: Notarization Tags:
Apr ’25
Gatekeeper "bundle_id: NOT_A_BUNDLE" rejection
Context: large platform-agnostic CLI tool built as a handcrafted bundle (not via an Xcode project) that has been successfully codesigned, stapled, and zipped; macOS 14.7.5 syspolicy_check reports App passed all pre-distribution checks and is ready for distribution. However, running the executable in the Terminal produces a cannot be opened because the developer cannot be verified popup. The executable does succeed after manually clearing its quarantine attribute. Having worked through Resolving Gatekeeper Problems, the only detail logged in the Console is Adding Gatekeeper denial breadcrumb (direct): ... bundle_id: NOT_A_BUNDLE. Experimental observations: a minimized trivial CLI executable with a similar bundle layout and name successfully executes without being rejected, and oddly, renaming the original bundle from name to name.suffix allows it to be successfully executed. It's unclear why the bundle name would affect Gatekeeper only in some circumstances, and we'd greatly prefer not to rename the b
3
0
190
Apr ’25
Reply to macOS 11.x system reported an error when using endpoint security
Yeah, this stuff is complex )-: Let me clarify this by example. My go-to suggestion for setting this up is to do what Xcode does. In fact, we have that in the official documentation, namely Signing a daemon with a restricted entitlement. If you follow that process and build the test project with Xcode, you see this: % codesign -d --entitlements - Test782415.app … [Dict] [Key] com.apple.application-identifier [Value] [String] SKMME9E2Y8.com.example.apple-samplecode.Test782415 [Key] com.apple.developer.endpoint-security.client [Value] [Bool] true [Key] com.apple.developer.team-identifier [Value] [String] SKMME9E2Y8 [Key] com.apple.security.get-task-allow [Value] [Bool] true % security cms -D -i Test782415.app/Contents/embedded.provisionprofile | plutil -p - { … Entitlements => { com.apple.application-identifier => SKMME9E2Y8.com.example.apple-samplecode.Test782415 com.apple.developer.endpoint-security.client => 1 com.apple.developer.team-identifier => SKMME9E2Y8 keychain-access-groups =>
Topic: Code Signing SubTopic: Entitlements Tags:
Apr ’25
Reply to security: SecKeychainItemImport: The user name or passphrase you entered is not correct.
Any updates on the bug ? Same issue. Sequoia 15.4.1 (24E263) OpenSSL 3.4.0 Steps for repoducing: Create .p12 without password openssl genpkey -algorithm RSA -out private_key.pem openssl req -new -key private_key.pem -out csr.pem openssl x509 -req -days 365 -in csr.pem -signkey private_key.pem -out certificate.pem openssl pkcs12 -export -out bundle.p12 -inkey private_key.pem -in certificate.pem Import .p12 to a keychain import bundle.p12 -k login.keychain -T /usr/bin/codesign -P And voila you've got the bug: security: SecKeychainItemImport: MAC verification failed during PKCS12 import (wrong password?)
Topic: Privacy & Security SubTopic: General Tags:
Replies
Boosts
Views
Activity
May ’25
Notarization Fails: “The binary is not signed with a valid Developer ID certificate” for Flutter macOS App Plugins (file_picker, file_saver, url_launcher_macos)
Hi all, I’m trying to notarize a Flutter macOS app built in CI (GitHub Actions). The app builds and signs fine locally—codesign --verify --deep --strict and spctl --assess both pass. However, Apple’s notarization service consistently rejects the app with errors like: The binary is not signed with a valid Developer ID certificate: file_picker.framework The binary is not signed with a valid Developer ID certificate: file_saver.framework The binary is not signed with a valid Developer ID certificate: url_launcher_macos.framework What I’ve tried: Explicitly re-signing all frameworks with my Developer ID Application certificate and --timestamp Removing existing signatures before re-signing Ensuring correct entitlements and bundle identifier Matching the app bundle name and identifier in all places Using both codesign --deep and manual signing of each binary Local validation always passes, but notarization fails in CI Certificate: I am using a “Developer ID Application” certificate (not a “Mac Dev
Replies
1
Boosts
0
Views
169
Activity
May ’25
Reply to Notarization Fails: “The binary is not signed with a valid Developer ID certificate” for Flutter macOS App Plugins (file_picker, file_saver, url_launcher_macos)
It’s really hard to read your post. Please take a look at Quinn’s Top Ten DevForums Tips, which has lots of suggestions for how to work effectively on the forums. Anyway, what I can see is this: [quote='784184021, BenAuerDev, /thread/784184, /profile/BenAuerDev'] Are there known issues with signing Flutter plugin frameworks for notarization? [/quote] I think you might have more luck asking that via the support channel for the third-party tool you’re using. However, my experience is that third-party tooling tends to bend the bundle placement rules outlined in Placing Content in a Bundle, and that causes all sorts of weird problems. [quote='784184021, BenAuerDev, /thread/784184, /profile/BenAuerDev'] Using both codesign --deep [/quote] I strongly recommend against using --deep when signing code. See --deep Considered Harmful. As to what you should do, you can find my general advice in: Creating distribution-signed code for macOS Packaging Mac software for distribution Beyond that, it’s hard to offer sp
Topic: Code Signing SubTopic: Notarization Tags:
Replies
Boosts
Views
Activity
May ’25
codesign wants to access key "access" in your bunch of keys
Hi,my apps run on the iOSSimulator without problems and used to run on devices as well, but after updating to latest XCode-Version I am getting the above error message when trying to run an app on my iPhone 7. It says :codesign wants to access key access in your bunch of keys . To allow this enter your password.... but my apple-Developer-ID-Password doesn't work. And until updating to latest XCode-Version I never had any problems with codesign when running an app on iPhone device.Any hints what's going wrong ?XCode Version 9.1 (9B55)iOS Version 11.1.2 (15B202)Latest High Sierra Version, macbook Pro 2015
Replies
38
Boosts
0
Views
138k
Activity
Oct ’23
Unsandboxed app can't modify other app
I work for Brave, a browser with ~80M users. We want to introduce a new system for automatic updates called Omaha 4 (O4). It's the same system that powers automatic updates in Chrome. O4 runs as a separate application on users' systems. For Chrome, this works as follows: An app called GoogleUpdater.app regularly checks for updates in the background. When a new version is found, then GoogleUpdater.app installs it into Chrome's installation directory /Applications/Google Chrome.app. But consider what this means: A separate application, GoogleUpdater.app, is able to modify Google Chrome.app. This is especially surprising because, for example, the built-in Terminal.app is not able to modify Google Chrome.app. Here's how you can check this for yourself: (Re-)install Chrome with its DMG installer. Run the following command in Terminal: mkdir /Applications/Google Chrome.app/test. This works. Undo the command: rm -rf /Applications/Google Chrome.app/test Start Chrome and close it again. mkdir /Applications/Google Chro
Replies
4
Boosts
0
Views
312
Activity
May ’25
Reply to Integrating CryptoTokenKit with productsign
I’ve not looked into the installer package side of this in depth but, in general, the transition from SHA1 to SHA256 is driven by the deployment target. If your product supports old releases, the system has to include both hashes to ensure compatibility with those systems. Now, with codesign I’m familiar with how that’s controlled, that is, via various Mach-O load commands. You can dump these using vtool. For installer packages, the productbuild man page described how you set the minimum supported OS version. Are you doing that? And just for testing, try setting it way up, to something silly like macOS 15. If that works, you can then step it back to determine the inflexion point. Share and Enjoy — Quinn “The Eskimo!” @ Developer Technical Support @ Apple let myEmail = eskimo + 1 + @ + apple.com
Topic: Privacy & Security SubTopic: General Tags:
Replies
Boosts
Views
Activity
May ’25
Disabling Hardened Runtime For Ad Hoc Signing Only
How can I disable Hardened Runtime in Xcode only when signing ad hoc? If I make a new project, Xcode will say Disabling hardened runtime with ad-hoc codesigning. at the beginning of the build logs. However, somehow my project isn't doing this -- it's still hardening the runtime when ad-hoc signing. What should I do to debug this?
Replies
5
Boosts
0
Views
183
Activity
May ’25
TKTokenSession not used
Hi, I'm working on developing my own CryptoTokenKit (CTK) extension to enable codesign with HSM-backed keys. Here's what I’ve done so far: The container app sets up the tokenConfiguration with TKTokenKeychainCertificate and TKTokenKeychainKey. The extension registers successfully and is visible via pluginkit when launching the container app. The virtual smartcard appears when running security list-smartcards. The certificate, key, and identity are all visible using security export-smartcard -i [card]. However, nothing appears in the Keychain. After adding logging and reviewing output in the Console, I’ve observed the following behavior when running codesign: My TKTokenSession is instantiated correctly, using my custom TKToken implementation — so far, so good. However, none of the following TKTokenSession methods are ever called: func tokenSession(_ session: TKTokenSession, beginAuthFor operation: TKTokenOperation, constraint: Any) throws -> TKTokenAuthOperation func tokenSession(_ session
Replies
3
Boosts
0
Views
147
Activity
Apr ’25
Issues Signing .app with Developer ID Certificate — Missing Private Key and Pipeline Concerns
I’m having issues trying to codesign a .app file. We generated the Developer ID Application certificate using the organization owner’s account. I downloaded the certificate to my Mac and imported it into my keychain, but when I run the codesign command below, I get the following error. Could you help me? What am I doing wrong? Is there any other way to sign the .app executable? From what I’ve seen in other posts, it looks like the certificate needs to have a private key, but the certificate I download from the developer portal doesn’t include the key. Also, about exporting it as a .p12 — I couldn’t quite understand if that’s considered a safe practice, since the organization owner’s private key would be included in this certificate that we plan to use in our pipeline.
Replies
1
Boosts
0
Views
185
Activity
May ’25
CodeSign : errSecInternalComponent
I’ve been wrestling with this for nearly a week now and none of the proposed fixes have worked. I’m trying to resign an app via Jenkins and have done the following: Created a custom keychain Imported the required .p12 certificates Installed the Apple WWDR certificate in the System keychain Made the login keychain my default Added my development keychain, the login keychain and the System keychain to the user keychain list Unlocked my development keychain Confirmed my signing identity is present Granted the appropriate partition list access to the keychain security set-key-partition-list -S apple-tool:,codesign: -k pwd /Users/ec2-user/Library/Keychains/development.keychain-db Yet when I invoke Fastlane’s resign action, I still see: _floatsignTemp/Payload/EverMerge.app/Frameworks/AppLovinSDK.framework: replacing existing signature _floatsignTemp/Payload/EverMerge.app/Frameworks/AppLovinSDK.framework: errSecInternalComponent Encountered an error, aborting! Any guidance on what might be causing this errS
Replies
1
Boosts
0
Views
172
Activity
May ’25
Reply to productbuild hangs with no output in github actions
also can confirm that I can take my bosses p12 files and set them up on my computer using this script KEYCHAIN_PATH1=$HOME/Library/Keychains/tmpsed1.keychain-db KEYCHAIN_PASSWORD1=$(openssl rand -base64 12) security create-keychain -p $KEYCHAIN_PASSWORD1 $KEYCHAIN_PATH1 security unlock-keychain -p $KEYCHAIN_PASSWORD1 $KEYCHAIN_PATH1 echo keychain-path=$KEYCHAIN_PATH1 echo keychain-password=$KEYCHAIN_PASSWORD1 #DEV_ID_APPLICATION=$(mktemp) #echo $DEV_ID_APPLICATION #base64 -i app.p12 | base64 -d >$DEV_ID_APPLICATION #cat $DEV_ID_APPLICATION security import app.p12 -f pkcs12 -k $KEYCHAIN_PATH1 -P password -T /usr/bin/codesign -T /usr/bin/security export DEV_ID_INSTALLER=$(mktemp) base64 -i installer.p12 | base64 -d >$DEV_ID_INSTALLER security import installer.p12 -f pkcs12 -k $HOME/Library/Keychains/tmpsed1.keychain-db -P “password” -T /usr/bin/pkgbuild -T /usr/bin/security -T /usr/bin/productbuild rm $DEV_ID_INSTALLER security set-key-partition-list -S apple-tool:,apple: -s -k $KEYCHAIN_PATH1 $K
Replies
Boosts
Views
Activity
May ’25
CodeSign with out Certificate and Profile
We are facing issue with resigning the app which is developed by 3rd party. In this app we have Sharing functionality feature for which we have enabled Associated Domains capability. When we are signing the app with our certificate and profile this functionality is not working i.e when we are clicking on shared link in the app it is redirecting to app store page instead of content link. However, when 3rd party is directly using our certificate & profile then that functionality is working as expected. Could you please help us with the above issue why it is not working when we are resigning with our certificate and profile?
Replies
2
Boosts
0
Views
190
Activity
May ’25
Reply to Gatekeeper "bundle_id: NOT_A_BUNDLE" rejection
[quote='837189022, LinuxProg, /thread/782331?answerId=837189022#837189022, /profile/LinuxProg'] It would be very useful for Apple to add a test VM creation CLI to the developer toolkit [/quote] I tend to agree but, given that current reality, I encourage you to explore the raft of third-party options out there [1]. As to your original issue, adding an extension is the right option here. macOS draws a clear distinction between bundled and non-bundle code. This really matters when comes to code signing. See the discussion is Creating distribution-signed code for macOS. That Java runtime is signed as a bundle: % codesign -d -vvv jdk-21.0.7+6-jre Executable=/Users/quinn/Desktop/jdk-21.0.7+6-jre/Contents/MacOS/libjli.dylib Identifier=net.java.openjdk.jre Format=bundle with Mach-O thin (arm64) ^^^^^^ However, the exact definition of what constitutes a bundle is more squishy then it should be. It seems that codesign and Gatekeeper disagree as to whether the file name extension is required, which is
Topic: Code Signing SubTopic: Notarization Tags:
Replies
Boosts
Views
Activity
Apr ’25
Gatekeeper "bundle_id: NOT_A_BUNDLE" rejection
Context: large platform-agnostic CLI tool built as a handcrafted bundle (not via an Xcode project) that has been successfully codesigned, stapled, and zipped; macOS 14.7.5 syspolicy_check reports App passed all pre-distribution checks and is ready for distribution. However, running the executable in the Terminal produces a cannot be opened because the developer cannot be verified popup. The executable does succeed after manually clearing its quarantine attribute. Having worked through Resolving Gatekeeper Problems, the only detail logged in the Console is Adding Gatekeeper denial breadcrumb (direct): ... bundle_id: NOT_A_BUNDLE. Experimental observations: a minimized trivial CLI executable with a similar bundle layout and name successfully executes without being rejected, and oddly, renaming the original bundle from name to name.suffix allows it to be successfully executed. It's unclear why the bundle name would affect Gatekeeper only in some circumstances, and we'd greatly prefer not to rename the b
Replies
3
Boosts
0
Views
190
Activity
Apr ’25
Reply to macOS 11.x system reported an error when using endpoint security
Yeah, this stuff is complex )-: Let me clarify this by example. My go-to suggestion for setting this up is to do what Xcode does. In fact, we have that in the official documentation, namely Signing a daemon with a restricted entitlement. If you follow that process and build the test project with Xcode, you see this: % codesign -d --entitlements - Test782415.app … [Dict] [Key] com.apple.application-identifier [Value] [String] SKMME9E2Y8.com.example.apple-samplecode.Test782415 [Key] com.apple.developer.endpoint-security.client [Value] [Bool] true [Key] com.apple.developer.team-identifier [Value] [String] SKMME9E2Y8 [Key] com.apple.security.get-task-allow [Value] [Bool] true % security cms -D -i Test782415.app/Contents/embedded.provisionprofile | plutil -p - { … Entitlements => { com.apple.application-identifier => SKMME9E2Y8.com.example.apple-samplecode.Test782415 com.apple.developer.endpoint-security.client => 1 com.apple.developer.team-identifier => SKMME9E2Y8 keychain-access-groups =>
Topic: Code Signing SubTopic: Entitlements Tags:
Replies
Boosts
Views
Activity
Apr ’25