We are developing a Mac OS X application that we are going to distribute outside the Mac App Store. We ended up having these certificates in the Mac Developers program:
For development (for example, the Debug configuratino) use the Mac Developer
option, which will choose your local Mac Developer certificate (in your case "Mac Developer: José Fernández"), which is meant for team members working on your project (includes testing/debugging).
For Release, use "Developer ID: *" which will pick the standard application release certificate used outside the AppStore, in your case "Developer ID Application: Carousel Apps. I recommend doing a final test/debug after codesigning to ensure it's working as expected.
The way Xcode picks up certificates is by a simple substring matching.
(Name, Type, Description)
iOS Development
iOS Distribution
Mac Development
Mac App Distribution
Mac Installer Distribution
Developer ID Application
Developer ID Installer
Once codesigned you can also simulate the launch behavior of your app when Gatekeeper is enabled from Terminal.app
:
spctl -a -v Carousel.app
./Carousel.app: accepted
source=Developer ID
The
Developer ID Application
certificate allows your app to run withGatekeeper
on the setting "allow apps downloaded from Mac App Store and identified developers"
To code sign via the terminal (if not using Xcode):
codesign -s "Developer ID" -v Carousel.app # to sign with "Developer ID Application" for distribution
codesign -s "Mac Developer" -v CarouselDebug.app # to sign with "Mac Developer:*" for testing
spctl -a -v Carousel.app # to verify, look for "accepted"
spctl -a -v CarouselDebug.app # to verify, look for "accepted"
Codesign finds the correct certificate by looking for certificates in your keychain that have the -s string as a substring. If only more than one certificate matches, it will warn you and you can give a longer string.
Reference: https://developer.apple.com/library/content/documentation/Security/Conceptual/CodeSigningGuide/Procedures/Procedures.html#//apple_ref/doc/uid/TP40005929-CH4-SW4