You can now easily request access to managed capabilities for your App IDs directly from the new Capability Requests tab in Certificates, Identifiers & Profiles > Identifiers. With this update, view available capabilities in one convenient location, check the status of your requested capabilities, and see any notes from Apple related to your requests. Learn more about capability requests.
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
Created
General:
Forums topic: Code Signing
Forums subtopics: Code Signing > General, Code Signing > Certificates, Identifiers & Profiles, Code Signing > Notarization, Code Signing > Entitlements
Forums tags: Code Signing, Signing Certificates, Provisioning Profiles, Entitlements
Developer Account Help — This document is good in general but, in particular, the Reference section is chock-full of useful information, including the names and purposes of all certificate types issued by Apple Developer web site, tables of which capabilities are supported by which distribution models on iOS and macOS, and information on how to use managed capabilities.
Developer > Support > Certificates covers some important policy issues
Bundle Resources > Entitlements documentation
TN3125 Inside Code Signing: Provisioning Profiles — This includes links to the other technotes in the Inside Code Signing series.
WWDC 2021 Session 10204 Distribute apps in Xcode with cloud signing
Certificate Signing Requests Explained forums post
--deep Considered Harmful forums post
Don’t Run App Store Distribution-Signed Code forums post
Resolving errSecInternalComponent errors during code signing forums post
Finding a Capability’s Distribution Restrictions forums post
Signing code with a hardware-based code-signing identity forums post
New Capabilities Request Tab in Certificates, Identifiers & Profiles forums post
Isolating Code Signing Problems from Build Problems forums post
Investigating Third-Party IDE Code-Signing Problems forums post
Determining if an entitlement is real forums post
Mac code signing:
Forums tag: Developer ID
Creating distribution-signed code for macOS documentation
Packaging Mac software for distribution documentation
Placing Content in a Bundle documentation
Embedding nonstandard code structures in a bundle documentation
Embedding a command-line tool in a sandboxed app documentation
Signing a daemon with a restricted entitlement documentation
Defining launch environment and library constraints documentation
WWDC 2023 Session 10266 Protect your Mac app with environment constraints
TN2206 macOS Code Signing In Depth archived technote — This doc has mostly been replaced by the other resources linked to here but it still contains a few unique tidbits and it’s a great historical reference.
Manual Code Signing Example forums post
The Care and Feeding of Developer ID forums post
TestFlight, Provisioning Profiles, and the Mac App Store forums post
For problems with notarisation, see Notarisation Resources. For problems with the trusted execution system, including Gatekeeper, see Trusted Execution Resources.
Share and Enjoy
—
Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"
Topic:
Code Signing
SubTopic:
General
Tags:
Entitlements
Code Signing
Provisioning Profiles
Signing Certificates
Hello, I sent this in as a feedback several weeks ago about watchOS 26.2 beta 2 but since the issue is still active now that watchOS 26.2 is in production I'm reposting here for the community. I would also like to submit a DTS about this issue but honestly don't know the best way to go about it and would appreciate advice about that.
There seems to be an issue with VPP distribution for our app on watchOS 26.2. When our watchOS companion app is launched after being installed through VPP to a supervised iPhone, it encounters a dyld error before main() or any application code is even called. The same app launches correctly in every other circumstance we could imagine and test:
– Installed through VPP on supervised devices running watchOS 26.1.
– Installed from the app store (using an apple id) on a supervised iPhone and paired watch running iOS 26.2 / watchOS 26.2.
– Installed through Testflight on a supervised iPhone and paired watch running iOS 26.2 / watchOS 26.2.
– Installed through the app store on unsupervised devices running watchOS 26.1 and 26.2.
This strongly appears to be a VPP signing issue because we even did the following experiment:
Install iPhone and Watch apps through the App Store on a supervised device pair running public iOS 26.2 beta 2 / watchOS 26.2 beta 2.
Verify that both apps launch successfully.
Use an MDM command to install from VPP over the existing installations
Verify that the watch app fails to launch (the iOS app is unaffected)
My feedback included some crash logs which I won't be reposting publicly here. Any feedback or ideas appreciated.
I'm developing an app that receives push notifications, and writes the contents of the push notification to a shared location between the main app and a Notifications Message Extension, through App Groups. This all seems to work on my phone, with developer mode turned on, but when I archive my app as an Enterprise IPA and distribute it, the users can install the app on their phones and they receive the push notifications, but it doesn't appear that the message extension is running as my app displays the content of the shared data in the App Groups on the main screen and nothing is showing. I have tried on 3 phones, and it only works on the phone with developer mode turned on. I can't tell at this point whether it's because of a signing issue, or build phase order issue, or something else?
I want to be able to retrieve payment form wallet, I've used the PKPassLibrary but it hasn't worked
Topic:
Code Signing
SubTopic:
General
I'm starting a new project in Xcode, but the Team ID in the "Signing and Capabilities" section for iOS is different from the one on the website. Is this a problem? Why does Xcode automatically send a different ID when signing?
Hello,
I'm currently developing an iOS app that uses SensorKit.
Everything works fine in development and testing — the app correctly requests and receives SensorKit permissions on test devices.
In my App ID configuration, the SensorKit Reader Access entitlement (com.apple.developer.sensorkit.reader.allow) is included and visible in Xcode under the project’s entitlements list.
However, when I try to archive and distribute the app, I get the following errors in Xcode:
Provisioning profile failed qualification
Profile doesn't support SensorKit Reader Access.
Provisioning profile failed qualification
Profile doesn't include the com.apple.developer.sensorkit.reader.allow entitlement.
Even though my provisioning profile includes this entitlement, Xcode still refuses to distribute the app.
Here’s what I’ve confirmed so far:
The provisioning profile lists com.apple.developer.sensorkit.reader.allow in its entitlements.
SensorKit works perfectly in debug and development builds.
The issue only occurs when attempting to distribute (Archive → Distribute App).
Could this be because my account has only development entitlement for SensorKit and not the distribution entitlement?
If so, how can I verify or request the proper distribution entitlement for SensorKit Reader Access?
Thank you for any guidance or confirmation from Apple regarding this entitlement behavior.
When submitting my new build to app store connect directly from dreamflow, I get this error:
Failed Step: Flutter build ipa and automatic versioning
Building com.pinpictu for device (ios-release)...
════════════════════════════════════════════════════════════════════════════════
No valid code signing certificates were found
You can connect to your Apple Developer account by signing in with your Apple ID
in Xcode and create an iOS Development Certificate as well as a Provisioning
Profile for your project by:
1- Open the Flutter project's Xcode target with
open ios/Runner.xcworkspace
2- Select the 'Runner' project in the navigator then the 'Runner' target
in the project settings
3- Make sure a 'Development Team' is selected under Signing & Capabilities > Team.
You may need to:
- Log in with your Apple ID in Xcode first
- Ensure you have a valid unique Bundle ID
- Register your device with your Apple Developer Account
- Let Xcode automatically provision a profile for your app
4- Build or run your project again
5- Trust your newly created Development Certificate on your iOS device
via Settings > General > Device Management > [your new certificate] > Trust
For more information, please visit:
https://developer.apple.com/library/content/documentation/IDEs/Conceptual/
AppDistributionGuide/MaintainingCertificates/MaintainingCertificates.html
Or run on an iOS simulator without code signing
════════════════════════════════════════════════════════════════════════════════
No development certificates available to code sign app for device deployment
Build failed :|
Step 10 script Flutter build ipa and automatic versioning exited with status code 1
Please not I am on a windows pc, not a mac. I'm not sure how to clear this error and I am not an experinced coder, so any advice would be greatly appreciated, especially if it is simple and easy to follow.
I'm currently observing a problem similar to this thread https://developer.apple.com/forums/thread/737334
The difference is that this is happening after updating a system extension.
Basically same error, sysextd complains it can not check that the system extension is notarized: macOS Error 3 + Error code=-67050.
I think macOS (Sequoia 15.3.2 or 15.7.2 if it matters) is wrong in this case for the following reasons:
when using spctl assess -t install, the system extension is reported to be correctly notarized.
when restarting the Mac, the updated system extension is correctly checked and staged.
if I run spctl assess before sysextd tries to check the system extension, it works.
I'm currently thinking of 2 reasons why the check does not work:
sysextd is somehow trying to work with a cached assessment that has become invalid after the system extension was updated.
macOS needs way more time between the update of the files and the request to update the staged extension. I tried adding a 5-second delay. This does not seem to work or at least reliably.
I tried just touching the system extension, no positive result. Unfortunately, in macOS Sequoia, it is not possible anymore to reset-default using spctl and see if it solves the issue, at least the next time the update is performed.
[Q] Is there some magic operation that would help macOS correctly check the notarization of an updated system extension?
I have two apps - say A and B in my AppStore account, deployed in the AppStore.
App A has obtained the com.apple.developer.usernotifications.filtering entitlement and this is added to my AppStore account by Apple after approval. Note that this is added for the account, and not for the specific app.
Now, my app B also wants this functionality.
Followed all the steps as done for app A - adding the already approved entitlement to my app B's identifier, regenerating the profiles, adding the key in the entitlements file, calling the completion handler with empty content like - contentHandler(UNNotificationContent())
Still the notifications show, the filtering is not working.
Do I have to request the entitlement for App B separately?
Even if I do request again, I am not sure if there is going to be any difference in the steps already done. The difference can only be if Apple has a mapping with the app id internally in their system, for the filtering to work?
If I have white-labelled versions of apps A or B, do I have to request again then?
Or does Apple restrict only one app to have this entitlement from one AppStore account?
Please guide on the next steps here.
i encountered an error when i distributing my app on xcode 26.0.1. Below is error log.
{
"logFormatVersion": 1,
"jobId": "ed2b622b-61f6-4c8a-90b7-7c3cdfbafc7a",
"status": "Rejected",
"statusSummary": "Team is not yet configured for notarization. Please contact Developer Programs Support at developer.apple.com under the topic Development and Technical / Other Development or Technical Questions.",
"statusCode": 7000,
"archiveFilename": "mychm.zip",
"uploadDate": "2025-12-10T01:50:34.198Z",
"sha256": "b61e224154823c8e06c3db904d67a78969f1564c7602f1fa77335fdd12a8d22b",
"ticketContents": null,
"issues": null
}
Dear support team,
is it possible to rename a notarized ZIP package and not to loose the notarized status?
One of our ZIP package contains resources and binaries which are code signed. The archive itself is accepted after submitting and uploading during the notarization process (online notarization).
Unfortunately, the ZIP cannot be stapled (offline verification). So, is the filename part of the notarized ZIP package or can a ZIP package be renamed?
Best regards,
Stefan
I can create an ipa file with vs using the wildcard bundle identifier but this is rejected by apple when I upload with the Transporter app saying invalid identifier and no distribution profile/certificate. When I create a new distribution profile with the correct XC identifier and distribution certificate and try to archive with visual studio publish says the bundle id is not a match for the distribution profile with iOS? This is a net 10 net maui project and my first build attempt
Hello Apple Developer Forum Community,
I’ve got a problem with the signing process of my AppClip Test App. Can someone help me? As I don’t know hot to get the certificate...
I've been trying to have an app I've built notarized by Apple. The processing hangs there for hours just waiting.
I even tried with a tiny 1KB test file, it has been stuck for 25+ minutes, and I have 7 real submissions stuck for 24+ hours.
Any Apple representative can help please? I need to publish and release my app asap.
Topic:
Code Signing
SubTopic:
Notarization
Error 7000 "Team is not yet configured for notarization" - Cannot notarize any apps
I'm trying to notarize macOS apps for Developer ID distribution and consistently getting error 7000 on every submission.
Error Details:
{
"status": "Rejected",
"statusSummary": "Team is not yet configured for notarization. Please contact Developer Programs Support at developer.apple.com under the topic Development and Technical / Other Development or Technical Questions.",
"statusCode": 7000
}
What I've tried:
Completed enrollment verification
Created new App Store Connect API key with Admin access
Created fresh App-Specific Password
Submitted via both API key and App-Specific Password authentication
All submissions are accepted and uploaded successfully, but after processing they're rejected with error 7000
Technical Details:
Active Developer ID Application certificate
Hardened runtime enabled
Apps are properly code-signed (codesign -vvv passes)
Behavior:
Over 15 submissions since December 2nd - ALL rejected with the same error 7000. The submissions upload successfully and show "In Progress" for extended periods (sometimes hours) before eventually being rejected.
Questions:
Has anyone encountered error 7000 and resolved it? What was the fix?
Are there any account settings or agreements required specifically for notarization that aren't obvious in the developer portal?
Should I contact Apple Developer Support directly, or is there a self-service solution?
Any guidance would be greatly appreciated.
App Notarization got stuck, showing In-Progress from last 24 hrs.
This is really frustrating. Can anyone plz update on this?
Hi, I was sent here by Apple developer account, it seems here is the only option for me, so your help is very much appreciated!
Basically we are building a chromium based browser on iOS, we applied the "com.apple.developer.web-browser" entitlement, and it shows up in our identifier, profile etc.
The app is signed with the new entitlement and published to the app store. However it is not listed as an option for default browser, doesn't matter which device I tried.
I did verified that the Info.plist contains http/https urlschemes as required. In fact a few of us checked all available documents multiple times and still couldn't see why.
Topic:
Code Signing
SubTopic:
Entitlements
Hi
First, I hope I'm in the right place, I'm not certain. I'm having my first attempt at IOS development and want to see the progress I've made on my phone. I plugged it in to my Mac and selected it as a preview device and got the following messages in the Signing & Capabilities screen:
Your team has no devices from which to generate a provisioning profile. Connect a device to use or manually add device IDs in Certificates, Identifiers & Profiles. https://developer.apple.com/account/
No profiles for '...' were found: Xcode couldn't find any iOS App Development provisioning profiles matching '...'.
My account and personal team are shown in the Xcode settings, but it says 0 Provisioned Devices. I also tried restarting, and enabled developer mode on the phone. I checked the provided link, but saw nowhere to add a device ID. Clearly I don't understand what I'm doing. Can anyone help me make sense of this?
Topic:
Code Signing
SubTopic:
Certificates, Identifiers & Profiles
Hi,
This is my first time notarizing an app with Developer ID.
I have submitted multiple notarization requests, and all of them have been
stuck in "In Progress" status. The oldest one was submitted over 24 hours ago.
Is this normal for first-time submissions?
How long should I wait before contacting support?
Thanks!
Topic:
Code Signing
SubTopic:
Notarization
Hi All,
I am building my own MDM server. It seems that in order for the MDM commands to function an MDM Push Certificate for the APNS framework. And in order to get the MDM Push Certificate from the Apple Push Certificates Portal (https://identity.apple.com/pushcert/) you need to upload your CSR usually provided and sign by the MDM Vendor of your choosing. I am familiar with this process.
But now that I am the MDM Vendor, I am not sure where to get this MDM Vendor CSR Signing Certificate.
I've already submitted a formal request via the "contact us" form. Apple's response pointed me to the documentation on Setting Up Push Notifications and the MDM Vendor CSR Signing Certificate help page (which I had already reviewed):
https://developer.apple.com/documentation/devicemanagement/setting-up-push-notifications-for-your-mdm-customers
https://developer.apple.com/help/account/certificates/mdm-vendor-csr-signing-certificate/
The issue is that these documents describe using the signing certificate, but not the process for obtaining it as a new, independent vendor.
So does anyone know of a portal or method of generating this “MDM Vendor Certificate”?
or maybe I'm going about this all wrong and there is a simpler way… the again, its apple, so I’m probably on the right path just beed a little direction please. (I am not sure where to get this MDM Vendor CSR Signing Certificate.)
Hi everyone,
Has anyone seen notarization behave like this?
We have one specific app (let’s call it App A) with a Network Extension system extension. Whenever we submit App A for notarization:
• Its submission stays “In Progress” indefinitely
• The provisioning profile for its system extension becomes Invalid on its own
• All our other apps suddenly fail notarization
• And the whole team immediately gets:
StatusCode 7000 – “Team is not yet configured for notarization.”
Apple Support restored notarization once(Case 102738171569), and we confirmed other apps notarize fine — until we submit App A again, which instantly triggers the same team-wide block. This cycle has repeated twice.
We verified:
• Hardened runtime
• Proper system extension signing
• No private API usage
• No get-task-allow
• No ATS violations
What’s confusing is that this doesn’t look like a normal notarization rejection. Normal failures don’t invalidate provisioning profiles or disable notarization for the entire team. It feels more like an automated security heuristic or misclassification.
My questions:
1. Can a single app or system extension trigger an automated team-wide notarization disable?
2. Can an entitlement or NE configuration issue cause StatusCode 7000 instead of a standard rejection?
3. If this could be a false positive, is there a specific team at Apple who can manually review/clear it?
Any insight would be greatly appreciated.