distribucion developer desarrollador crear certificado apple ios xcode certificate ipa

ios - developer - crear certificado de distribucion apple



¿Cómo saber qué perfil/certificado de firma se utilizó para firmar.ipa? (6)

Tengo un montón de archivos .ipa y he usado un script para renunciar a ellos.

Entonces, ¿cómo se puede verificar el perfil de aprovisionamiento / certificado de firma para cumplir que están utilizando la información correcta?

Idealmente, me gustaría poder tomar cualquier archivo .ipa e indicar qué perfil de provisión / certificado de firma se utilizó para firmarlo.

Antecedentes: nuestro certificado de distribución empresarial está por vencer y quiero volver a firmar nuestras cosas. Es una toma simple para todas las cosas que hemos hecho y archivado en Xcode, pero para los distribuidores de terceros no puedo hacer eso. Quiero evitar solicitar un archivo .ipa re-firmado porque un .ipa nuevo puede incluir cambios desconocidos e introducir problemas y probablemente nos lo cobren también ... pero estoy más preocupado por el primer problema.

Dado que tanto nuestros certificados de distribución antiguos como los nuevos siguen siendo válidos (obtienes un solapamiento de 6 meses) necesito poder confirmar que el nuevo se usa, de lo contrario me vería muy tonto cuando el antiguo caduque y el guión "resignar" no lo hiciera en realidad hace el trabajo.


Basado en la respuesta de Bobjt, utilicé IPCU para obtener los detalles del perfil:

  1. Cambia el nombre de tu .ipa a .zip
  2. Descomprimirlo con Finder
  3. Encuentra el archivo .app en / Payload.
  4. "Mostrar contenido del paquete" en el archivo .app y encuentre el perfil de aprovisionamiento con el nombre embedded.mobileprovision.

  5. Arrastre el archivo de suministro móvil a la Utilidad de configuración del iPhone

IPCU muestra el nombre / fecha de caducidad, etc. del perfil.


He podido probar con éxito utilizando el siguiente proceso.

  1. Instala .ipa original en el dispositivo.
  2. Vaya a Configuración-> General-> Perfiles (vea el antiguo perfil de aprovisionamiento)
  3. Eliminar la aplicación y el perfil anterior del dispositivo
  4. Renunciar a la aplicación.
  5. Instalar la aplicación re-signed en el dispositivo
  6. Vaya a Configuraciones-> General-> Perfiles (vea el nuevo perfil de aprovisionamiento)

Esto parece ser una forma a prueba de balas para confirmar que el perfil de aprovisionamiento se ha actualizado y dado que el perfil solo tiene el certificado de 1 firma en él ... entonces debemos firmar con el nuevo certificado.

(pero aún quiero encontrar una mejor manera)


Los perfiles de aprovisionamiento tienen un UUID que se puede ver con el comando Terminal:

seguridad cms -D -i (vía_a_su_perfil_de_provisionamiento)

Vea la sección UUID del resultado del comando como:

<key>UUID</key> <string>A008C022-7B82-4E40-8B37-172763E1E3CC</string>

Xcode inserta el perfil de aprovisionamiento utilizado para firmar la aplicación dentro del paquete .app. Para encontrarlo, cambie el nombre de su .ipa a .zip, descomprímalo con Finder, busque el archivo .app en / Payload. "Mostrar contenido del paquete" en el archivo .app y encuentre el perfil de aprovisionamiento con el nombre embedded.mobileprovision .

Vuelque sus derechos utilizando el comando anterior y compárelo con el UUID que se encuentra dentro de sus perfiles en su Xcode Organizer> pestaña Dispositivos> sección Perfil de suministro en "Biblioteca". Puede usar "Mostrar en el buscador" para revelar su ubicación en el disco.


Tarde a la fiesta ...

Pero esta herramienta me ahorra algo de tiempo: nomad/shenzhen

$ ipa info /path/to/app.ipa +-----------------------------+----------------------------------------------------------+ | ApplicationIdentifierPrefix | DJ73OPSO53 | | CreationDate | 2014-03-26T02:53:00+00:00 | | Entitlements | application-identifier: DJ73OPSO53.com.nomad.shenzhen | | | aps-environment: production | | | get-task-allow: false | | | keychain-access-groups: ["DJ73OPSO53.*"] | | CreationDate | 2017-03-26T02:53:00+00:00 | | Name | Shenzhen | | TeamIdentifier | S6ZYP4L6TY | | TimeToLive | 172 | | UUID | P7602NR3-4D34-441N-B6C9-R79395PN1OO3 | | Version | 1 | +-----------------------------+----------------------------------------------------------+


Terminé usando una mezcla de propuestas de soluciones Bobjt y HaemEternal.

  1. Encuentra archivo
  2. Mostrar contenido del paquete
  3. Copie el archivo .app
  4. Muestra el contenido del paquete del archivo .app.
  5. Copie el archivo embedded.mobileprovision.
  6. Ejecute "security cms -D -i (path_to_your_provisioning_profile)"
  7. Encuentre el número de UUID del resultado de la llamada en el paso 6.
  8. Abre la Utilidad de configuración de Iphone y mira los perfiles para encontrar el que tenga el mismo número de UUID.

mira esto: tool

Al tocar espacio en un archivo IPA o perfil de aprovisionamiento se mostrarán detalles