Hi Team,
I have created multiple certificates for macOS application. Below are the certificates created-
Apple Development Certificate
DeveloperID Installer Certificate
Apple Distribution Certificate
others certificates
Later, I have imported the all these above certificates in keychain-access.
Now, I tried to compile the code through Xcode. I am getting error for code signing certificate.
Warning: unable to build chain to self-signed root for signer "Apple Development: Amit (M2WMF2YERI)”
....
Command CodeSign failed with a nonzero exit code
When I checked the TeamID of User(Amit) I can see that his current TeamID is [P8ZW3W9R2Q].
There is mismatch of teamID in apple development certificate generation.
Note-
All certificates are generated with current TeamID[P8ZW3W9R2Q] of user (Amit) except Apple Development certificate which has been generated with TeamID [M2WMF2YERI] which is generated with old TeamID of user (Amit).
I attempted to generate the apple development certificate multiple times but it is getting generated with old TeamID TeamID[M2WMF2YERI] of user(Amit)
Summary-
While creating a developer certificate using apple developer account and mapping it in keychain, the certificate is being generated with old apple account details (Inactive) instead of the current one. This is causing issues when using the certificate in keychain.
If anyone has encountered this issue, how it was resolved?
Thanks
Demystify code signing and its importance in app development. Get help troubleshooting code signing issues and ensure your app is properly signed for distribution.
Selecting any option will automatically load the page
Post
Replies
Boosts
Views
Activity
The problem is the following:
We create a keychain item called NotaryTool (There are multiple accounts that use Notary tool and we created it for all of them )
This is created in the following way:
$ xcrun notarytool store-credentials
This process stores your credentials securely in the Keychain. You reference these credentials later using a profile name.
Profile name:
NotaryTool
We recommend using App Store Connect API keys for authentication. If you'd like to authenticate with an Apple ID and app-specific password instead, leave this unspecified.
Path to App Store Connect API private key:
//AuthKey_ABCDEFGH.p8
App Store Connect API Key ID:
<ABCDEFGH>
App Store Connect API Issuer ID:
ABCDEF-ABCD-1234-1234-1234567
Validating your credentials...
Success. Credentials validated.
Credentials saved to Keychain.
To use them, specify `--keychain-profile "NotaryTool"`
The key is downloaded from Apple and some other IDs are provided alongside.
These should remain in the keychain for as long as the user process is running (just like any other process)
A few runs are successful when we run with the profile that was created.
After a few runs we start seeing a failure.
Now we are seeing the following issue where the keychain item just vanishes:
Error: No Keychain password item found for profile: NotaryTool\n\nRun 'notarytool store-credentials' to create another credential profile.\nError during the not process\nTue Aug 26 06:02:09 2025 Notarization failed with notarytool with exit code 17664: \nTue Aug 26 06:02:09 2025 could not upload for notarization!!!
Topic:
Code Signing
SubTopic:
Notarization
hey, trying to notarize my mac app rn. maybe servers are down. earlier today super fast but now slow and i need to ship.
anyone having similar issue?
My notary service has been stuck for more than 5 hours. Is it because i am a new user or there is an notary service outage.
Hi Team,
I have created multiple certificates for macOS application. Below are the certificates created-
Apple Development Certificate
DeveloperID Installer Certificate
Apple Distribution Certificate
others certificates
Later, I have imported the all these above certificates in keychain-access.
Now, I tried to compile the code through Xcode. I am getting error for code signing certificate.
Warning: unable to build chain to self-signed root for signer "Apple Development: Amit (M2WMF2YERI)”
....
Command CodeSign failed with a nonzero exit code
When I checked the TeamID of User(Amit) I can see that his current TeamID is [P8ZW3W9R2Q].
There is mismatch of teamID in apple development certificate generation.
Note-
All certificates are generated with current TeamID[P8ZW3W9R2Q] of user (Amit) except Apple Development certificate which has been generated with TeamID [M2WMF2YERI] which is generated with old TeamID of user (Amit).
I attempted to generate the apple development certificate multiple times but it is getting generated with old TeamID TeamID[M2WMF2YERI] of user(Amit)
Summary-
While creating a developer certificate using apple developer account and mapping it in keychain, the certificate is being generated with old apple account details (Inactive) instead of the current one. This is causing issues when using the certificate in keychain.
If anyone has encountered this issue, how it was resolved?
Topic:
Code Signing
SubTopic:
Certificates, Identifiers & Profiles
Tags:
iCloud Keychain Verification Codes
I am facing an issue while trying to staple a notarization ticket to my signed macOS installer package.
Details of my setup:
The .pkg file is signed using my Developer ID Installer certificate.
The app inside the package is signed using my Developer ID Application certificate.
Notarization via xcrun notarytool completes successfully with status: Accepted.
However, the stapler command fails with the following error:
xcrun stapler staple -v /Users/mac-test/Desktop/IPMPlus_Arm_Installer_signed.pkg
Processing: /Users/mac-test/Desktop/IPMPlus_Arm_Installer_signed.pkg
Could not validate ticket for /Users/mac-test/Desktop/IPMPlus_Arm_Installer_signed.pkg
The staple and validate action failed! Error 65.
I verified that all other Apple notarization-related servers (api.apple-cloudkit.com, gs.apple.com, ocsp.apple.com, ocsp2.apple.com, crl.apple.com, developer.apple.com) are reachable.
However, the domain cdn-apple-cloudkit.apple.com cannot be resolved from any network, including mobile or public Wi-Fi.
Both dig and nslookup return “No answer” even when using external DNS servers like 8.8.8.8 or 1.1.1.1.
It appears that cdn-apple-cloudkit.apple.com might be required during the stapler validation process, but the DNS for this domain is not resolving.
Could you please confirm whether this CDN endpoint is required for stapling, and if there is currently an outage or configuration issue with cdn-apple-cloudkit.apple.com?
Hello Quinn and Apple Developer Support,
We are encountering an issue where our notarization queue appears to be stuck, and we would greatly appreciate your help.
A few days ago, we assisted another team by submitting their app for notarization using our own Apple Developer account, because their own notarization attempts were getting stuck. However, the submission we made for them under our account has now been stuck in the “In Progress” state for about 5 days.
Later, their own submission (using their account) was rejected after 2–3 days, but our submission for them (under our account) has never completed.
Since then, all our subsequent notarization requests have also remained “In Progress”, which strongly suggests that the stuck submission is blocking our entire notarization queue.
Here are the details from our submission history:
xcrun notarytool history --apple-id "xxx" --team-id "xxx" --password "xxx"
Partial results:
id: 0bafa66f-4f47-4327-811f-a05481be5d0b status: In Progress
id: 2d00b75a-a17a-44fc-afa1-71e0e39ec2cd status: In Progress
The first ID is our own app’s submission.
The second ID belongs to the submission we made for the other team.
Both have been stuck in “In Progress” for several days, which seems abnormal.
Could you please help us clear or reset the notarization queue for our account so that we can continue submitting our own apps?
Thank you very much for your time and assistance!
Best regards,
gongcj
Topic:
Code Signing
SubTopic:
Notarization
Hi guys,
Is there any good up-to-date tutorial about publishing a Python based app on Apple Store?
Now, I have developed a standalone Python app from PyCharm, and it's using Pyside6 for UI and some major Python libraries. It's a productivity app with a little A.I. features. I used PyInstaller to prepare the app. Currently, I am stuck at the stage of codesign and Apple Review process, because I am manually doing codesign and building the package from command-line. Without using Xcode, things can get messy or miss easily.
It would be nice to follow a up-to-date tutorial about how to complete the codesign and Apple Review process for a Python based app. For example, what to do, how to do, what to be careful during the Apple Review process, etc. Thanks!
In the past it was relatively easy to download from the developer portal both the app signing and installer signing certs so that I could sign AppleScripts from Script Editor when exporting them and when building packages in Jamf Composer.
I went to set that up today and it seems things have changed in the last few years since I've had to set this up. I've been unable to sort this out and would love some help.
I'm looking for a tutorial on doing this that walks someone step-by-step through the process for obtaining the certs (yes, I have dev account) and setting them up in keychain and then making use of them.
Thanks!
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.
Topic:
Code Signing
SubTopic:
Certificates, Identifiers & Profiles
Tags:
Signing Certificates
Developer ID
Hello,
I had a successful attempt at notarization earlier today in my build pipeline. I've been using the same system for building my macOS application for over a year now. However, subsequent builds seemed to fail. I found a couple similar topics which makes this seem not not an isolated incident:
https://developer.apple.com/forums/thread/782950
https://developer.apple.com/forums/thread/783347
https://developer.apple.com/forums/thread/783283
In my case I use the following command to submit the notarization:
xcrun notarytool submit FilePath.dmg --apple-id "myappleid@gmail.com" --password "redacted_obviously" --team-id "my-team-id" --wait
I left a previous run go for over an hour and the "Current status: In Progress.................. etc" filled the whole terminal.
I manually checked the progress of the submissions using the command below:
xcrun notarytool log --apple-id "myappleid@gmail.com" --password "redacted_obviously_again" --team-id "my-team-id" [run id]
And they all result in the following output:
Submission log is not yet available or submissionId does not exist
Is anyone else experiencing this? Are there any possible solutions?
Topic:
Code Signing
SubTopic:
Notarization
Hello,
We have a working application with several entitlements - com.apple.developer.endpoint-security.client and com.apple.developer.team-identifier.
Recently, the Developer ID signing certificate expired and we created a new one according to the instructions on the website. Also the provisioning profile for those entitlements expired so we edited it to use the new certificate.
We built using xcodebuild in a script and signed with codesign, We supply the certificate id and the entitlement in a plist file like this :
codesign --timestamp --force --sign "${application_signature}" --options=runtime "${obj}" --entitlements "${SR_ENTITLEMENT_PATH}"
(those env vars hold the correct values for the cert id and plist path as far as we checked).
The signing works and looks ok with "codesign -dvvv":
(XXXX replaces the real file name for privacy)
Signature size=9050
Authority=Developer ID Application: XXXXXX. (XXXXX)
Authority=Developer ID Certification Authority
Authority=Apple Root CA
Timestamp=16 Oct 2025 at 11:09:53 AM
Info.plist=not bound
TeamIdentifier=XXXXX
Runtime Version=14.5.0
Sealed Resources=none
Internal requirements count=1 size=184
[Dict]
[Key] com.apple.application-identifier
[Value]
[String] XXXXX.com.XXXX.XXXX
[Key] com.apple.developer.endpoint-security.client
[Value]
[Bool] true
[Key] com.apple.developer.team-identifier
[Value]
[String] XXXXXX`
But when the app need to run it is killed and the console shows the following:
amfid: /private/tmp/XXXXX not valid: Error Domain=AppleMobileFileIntegrityError Code=-420 "The signature on the file is invalid" UserInfo={NSURL=file:///private/tmp/XXXXX, NSLocalizedDescription=The signature on the file is invalid} kernel: mac_vnode_check_signature: /private/tmp/CybereasonSensor: code signature validation failed fatally: When validating /private/tmp/XXXXX: Code has restricted entitlements, but the validation of its code signature failed.
We didn't change any code or build differently (it's done by a CI jenkins job.
So if the file is signed and the and has the entitlements why does it fail? what should be done?
Thanks,
Boaz
Topic:
Code Signing
SubTopic:
Entitlements
I have attempted all upgrades:
updated xcode to 16.4
downloaded and installed Command Line Tools for Xcode 16.4
I have no issues with the installs, however when I run:
> xcrun notarytool --version
1.0.0 (38)
I need to be running v2.x
How can I resolve this issue.
Command failed: codesign --sign 142DA07B8371F5C9BCE0FFEC6B23CDEB84F48E52 --force --timestamp --options runtime --entitlements /Users/mymac/Desktop/ElectronApp/node_modules/app-builder-lib/node_modules/@electron/osx-sign/entitlements/default.darwin.plist /Users/mymac/Desktop/ElectronApp/dist/mas-arm64/electron.app/Contents/Library/LoginItems/electron Login Helper.app/Contents/MacOS/electron Login Helper
/Users/mymac/Desktop/ElectronApp/dist/mas-arm64/electron.app/Contents/Library/LoginItems/electron Login Helper.app/Contents/MacOS/electron Login Helper: replacing existing signature
/Users/mymac/Desktop/ElectronApp/dist/mas-arm64/electron.app/Contents/Library/LoginItems/electron Login Helper.app/Contents/MacOS/electron Login Helper: resource fork, Finder information, or similar detritus not allowed
failedTask=build stackTrace=Error: Command failed: codesign --sign 142DA07B8371F5C9BCE0FFEC6B23CDEB84F48E52 --force --timestamp --options runtime --entitlements /Users/mymac/Desktop/ElectronApp/node_modules/app-builder-lib/node_modules/@electron/osx-sign/entitlements/default.darwin.plist /Users/mymac/Desktop/ElectronApp/dist/mas-arm64/electron.app/
I'm not entirely sure what's causing this issue. Has anyone else encountered this error while signing their macOS app? I’d really appreciate any guidance or solutions you can share.
Topic:
Code Signing
SubTopic:
Notarization
Hey all,
I’m experiencing a consistent issue with notarizing a signed .pkg file that contains a macOS screen saver (.saver) bundle.
Nothing online so far except 1 thread on the form from the altool time pre-2023 so i thought it worth another update.
Here is what I did:
I signed the .saver bundle using my Developer ID Application certificate.
I packaged it into a .pkg using pkgbuild with my Developer ID Installer certificate:
I submitted the resulting .pkg via xcrun notarytool:
xcrun notarytool submit saver-name.pkg --apple-id email@email.com --password [app-specific-password] --team-id xxxxxxxxx
The submission appears to be accepted and uploads successfully.
However, the notarization status remains stuck at “In Progress” for hours (over 12h), with no update.
I also tried:
Repackaging the .pkg with a new name
using a zip
Resubmitting it under a new submission ID
All attempts are stuck in the same “In Progress” state indefinitely.
Did anyone solve this yet?
The Developer App Certificate is not trusted.
Topic:
Code Signing
SubTopic:
General
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 Developer” or “Apple Development” certificate). The output of codesign -dvv for the problematic frameworks shows:
Authority=Developer ID Application: [My Name/Team] ([Team ID])
So I believe I am not making the common mistake of using the wrong certificate type.
CI Environment:
GitHub Actions, macos-latest runner
Flutter 3.27.2, stable channel
All secrets (cert, Apple ID, app-specific password, team ID) are set up
Questions:
Has anyone encountered this with Flutter plugins or CI builds?
Are there known issues with signing Flutter plugin frameworks for notarization?
Is there a way to get more detailed feedback from Apple’s notarization service?
Any advice or pointers would be greatly appreciated. I’m happy to provide logs, scripts, or a minimal project if needed.
Thanks!
Dear Apple Developer Support,
I am experiencing a critical issue with Developer ID certificates issued for Turkish (C=TR) developer accounts that prevents code signing on macOS.
Issue Summary
All Turkish Developer ID certificates issued on October 4, 2025, contain an Apple proprietary extension (OID 1.2.840.113635.100.6.1.13) marked as "critical" that both OpenSSL and codesign cannot handle.
Technical Details
Team ID: 4B529G53AG
Certificate Country: TR (Turkey)
Issue Date: October 4, 2025
macOS Version: 15.6.1 (24G90)
Problematic Extension OID: 1.2.840.113635.100.6.1.13 (marked as critical)
Evidence
I have verified this issue across THREE different Turkish Developer ID certificates:
Serial: 21F90A51423BA96F74F23629AD48C4B1
Serial: 461CBAF05C9EDE6E
Serial: 184B6C2222DB76A376C248EC1E5A9575
All three certificates contain the same critical extension.
Error Messages
OpenSSL: error 34 at 0 depth lookup: unhandled critical extension
Codesign: unable to build chain to self-signed root for signer
errSecInternalComponent
Comparison with Working Certificate
My previous Developer ID certificate from Singapore (before revocation) worked perfectly and did NOT contain this critical extension. This confirms the issue is specific to Turkish certificates.
Impact
Cannot sign applications for distribution, which blocks:
DMG signing for distribution
Notarization process
App distribution to users
Questions
What is the purpose of OID 1.2.840.113635.100.6.1.13?
Why is it marked as critical only for Turkish certificates?
Is this related to Turkish regulatory requirements?
Can you issue a certificate without this critical extension?
Is there a macOS update planned to support this extension?
Request
Please either:
Issue a Developer ID certificate without the critical extension OID 1.2.840.113635.100.6.1.13
Provide a workaround for signing with current Turkish certificates
Update the codesign tool to handle this extension
This appears to be a systematic issue affecting all Turkish developers as of October 2025.
Thank you for your urgent attention to this matter.
Best regards,
Topic:
Code Signing
SubTopic:
Certificates, Identifiers & Profiles
*** Error: ERROR: [ContentDelivery.Uploader] Validation failed (409) Invalid Provisioning Profile. The provisioning profile included in the com.baiyun-shuniu.scss bundle [Payload/HBuilder.app] is invalid. [Missing code-signing certificate]. A distribution provisioning profile should be used when uploading apps to App Store Connect. (ID: e21c7a63-520f-49c5-8298-9afa3aa14dd5)
2025-05-13 09:23:20.382 INFO: [ContentDelivery.Uploader]
Topic:
Code Signing
SubTopic:
Certificates, Identifiers & Profiles
I believe that this is related to the post https://developer.apple.com/forums/thread/790880.
I essentially have the same problem that they did. I submit my Distribution PKG for notarization but the notarization fails and when I attempt to install the PKG user the UI I get a "External component packages (3) trustLevel=0 (trust evaluation failed; treating as invalid due to higher trust level for parent product archive)"
However if I install using "sudo installer -verboseR -pkg ConcealDistribution.pkg -target /" everything works as expected.
The difference between me and the other post is that when I expand my PKG using pkgutil --expand I do not have a Resources folder within my top level distribution. Instead my structure looks like
ConcealDistribution
├── Distribution
├── ConcealConnect.pkg
├── ConcealBrowse.pkg
└── ConcealUpdate.pkg
The specific notary service errors I receive are as follows
{
"logFormatVersion": 1,
"jobId": "7e30e3fd-1739-497c-a02e-64fbe357221d",
"status": "Invalid",
"statusSummary": "Archive contains critical validation errors",
"statusCode": 4000,
"archiveFilename": "ConcealDistribution.pkg",
"uploadDate": "2025-10-08T19:41:33.491Z",
"sha256": "40aacfacf25c6da0be8fe31ae9c145a25ddf9ed1f38be714687c74d95b26619d",
"ticketContents": null,
"issues": [
{
"severity": "error",
"code": null,
"path": "ConcealDistribution.pkg",
"message": "Package ConcealDistribution.pkg has no signed executables or bundles. No tickets can be generated.",
"docUrl": null,
"architecture": null
},
{
"severity": "warning",
"code": null,
"path": "ConcealDistribution.pkg",
"message": "The contents of the package at ConcealDistribution.pkg could not be extracted.",
"docUrl": null,
"architecture": null
}
]
}
For what its worth all the inner PKGs have their executables signed, the PKGs are signed themselves and they are all notarized and stapled without issue. Then I am attempting to sign and notarize the outer PKG and that is where the problems pop up.
Additionally I'm not sure when this stopped working as I expected but just a few months ago I was able to do this exact same process and install with the UI and have it work.
Topic:
Code Signing
SubTopic:
Notarization