Proving where software came from.
WHAT CODE SIGNING IS
Attaching a cryptographic signature proving origin and integrity.
WHAT IT REQUIRES
A certificate issued by Apple to an enrolled developer.
WHAT CERTIFICATE TYPES EXIST
Development, for testing on your own devices Distribution, for release
WHAT A PROVISIONING PROFILE DOES
Links an application identifier, certificates, entitlements and permitted devices.
WHY BUILD FAILURES ARE SO COMMON HERE
Any mismatch between the identifier, the certificate, the profile and the entitlements causes failure, and the messages are frequently unclear.
WHAT TO CHECK WHEN SIGNING FAILS
That the identifier matches everywhere That the certificate is valid and present in the keychain That the profile includes the device and the entitlements That the team is correct
WHAT NOTARISATION IS
Submitting software to Apple, which scans it and issues a ticket permitting it to run.
WHERE IT APPLIES
macOS software distributed outside the store.
WHAT IT IS NOT
A review of functionality. It is an automated malware check.
WHAT STAPLING DOES
Attaches the ticket to the software, so it runs without checking online.
WHAT TO AUTOMATE
Signing and notarisation, in the build pipeline.