La identidad de firma en macOS
Los tipos de certificado de Apple, cuál necesitas según dónde distribuyas, y el identificador de equipo del que cuelga todo lo demás.
Los tipos de certificado
El error habitual es firmar con el de desarrollo y publicar: la aplicación funciona en tu máquina y el sistema la rechaza en las demás — que es exactamente el fallo que el nivel 51.5 dice que solo aparece instalado.
El identificador de equipo
El dato central, y conviene entenderlo porque aparece en todas partes:
Y por eso cambiar de equipo —una empresa que se reorganiza, un proyecto que cambia de manos— es una migración de las serias, con el diálogo del llavero y todo lo del nivel 35.3.
Preparar el entorno
Lo que hace falta antes de poder firmar:
- Una cuenta de desarrollador de Apple, que es de pago y anual.
- El certificado creado y descargado, instalado en el llavero de la máquina que firma.
- Y su clave privada, que se genera al crear el certificado y no se puede recuperar si se pierde: hay que exportarla y guardarla a salvo.
El tercer punto merece énfasis: perder la clave privada significa no poder firmar más con ese certificado, y aunque se puede crear otro, se pierde la continuidad de identidad — con las consecuencias del llavero.
Y para la máquina de construcción automática del nivel 59.3, hay que exportar certificado y clave a un fichero protegido con contraseña, guardarlo como secreto, e importarlo a un llavero temporal durante la construcción. Es el procedimiento estándar y merece hacerse con cuidado: es la operación donde más fácil es filtrar la clave.
Comprobar la identidad
Y la comprobación del nivel 35.3, que aquí es la operación básica:
# qué identidades de firma hay disponibles en esta máquinasecurity find-identity -v -p codesigning# con qué está firmado un artefacto ya construidocodesign -dv --verbose=4 MiApp.appLa segunda es la que hay que ejecutar antes de publicar, comparando el identificador y el equipo con los de la versión anterior. Es la puerta del nivel 35.3.