restablecer quitar mac llaveros llavero está dónde cómo contraseña acceso acceder ios xcode key keychain

ios - llaveros - quitar contraseña llavero mac



No se pueden importar claves públicas o privadas de firma de código mediante el acceso al llavero(Mac OS X Mavericks) (1)

En un intento de compilar un proyecto de iOS (en XCode), debo importar las claves públicas y privadas de mi colega para la identidad de firma de código, pero no puedo hacerlo porque recibo un error en Keychain Access que dice "Un error ha No se puede importar un elemento. / El contenido de este elemento no se puede recuperar "

TODOS LOS DETALLES:

Tengo dos llaves de la computadora de mi colega, las he exportado de su Llavero como dos archivos:

Roomer Inc.p12 (la clave privada)

Roomer Inc.pem (la clave pública)

Cuando los exportó, dejó la contraseña en blanco (aunque también probamos con una contraseña de "prueba" y obtuvimos los mismos resultados).

Cuando hago doble clic en Roomer Inc.p12 (para la clave privada), se abre en Keychain Access y me pide que elija el llavero ("inicio de sesión" está seleccionado de forma predeterminada)

Hago clic en "Agregar" y luego se me solicita la contraseña del llavero (que dejo en blanco)

A continuación siempre veo este mensaje en el acceso de Llavero:

Sin embargo, a pesar de que aparece este mensaje, cuando hago clic en Aceptar, veo una nueva entrada de clave privada para "Roomer Inc". Tenga en cuenta que esta entrada es una clave privada en la cadena de "inicio de sesión", como es de esperar, pero no tiene fecha de caducidad (¿debería hacerlo?)

A continuación, para el archivo Roomer Inc.pem (la clave pública) se me pide que elija el llavero ("inicio de sesión") y hago clic en Agregar

Luego, también aparece el mensaje "Se produjo un error. No se puede importar un elemento. / El contenido de este elemento no se puede recuperar" para la clave pública también. Sin embargo, en este caso (a diferencia de la clave privada), no veo ninguna entrada correspondiente a lo que acabo de agregar.

Por lo tanto, parece que la entrada de la clave privada puede o no estar bien (no tengo forma de verificar), y la entrada de la clave pública para Roomer no se puede instalar en el llavero sin este mensaje de error. Tenga en cuenta que también intenté usar el comando de importación de seguridad para importar la clave pública:

$ security import Roomer / Inc.pem -f pkcs12 ~ / Library / Keychains / login.keychain

1 llave importada.

Cuando hago esto, aunque el comando devuelve "1 clave importada", no veo una clave pública para "Roomer Inc" en la ventana de Acceso a Llavero (cerré el Acceso a Llavero y lo volví a abrir).

De cualquier manera, hemos identificado que este es nuestro bloqueador. (El síntoma, por supuesto, es que el proyecto XCode no se construirá para el perfil de aprovisionamiento AdHoc que se usará con TestFlight). He dejado de lado los pasos adicionales con respecto a la creación de XCode y la configuración de TestFlight, porque creemos que el problema principal tiene que ver con importar las claves como se explicó anteriormente.


Descubrimos nuestro problema y estoy publicando mi respuesta aquí para que otros puedan encontrarla útil.

El problema es realmente un problema de UX con Keychain Access. Permítame hacer una copia de seguridad y darle un poco de contexto: cuando crea un certificado de distribución con Apple, lo crea en base a una CLAVE PRIVADA y permisos basados ​​en la aplicación.

En Keychain Access, el certificado de distribución aparece como un hijo debajo del nombre de la clave privada desde la que se creó. Aquí está el problema: cuando usa el cuadro de búsqueda en el acceso de Llavero (en mi caso, estábamos escribiendo "Roomer" porque ese es el nombre en nuestro certificado de distribución), no buscará un certificado con ese nombre, buscará un certificado adjunto a una clave privada para ese nombre.

Así que mi colega creó un certificado de distribución basado en una clave privada que se llamó "Jorge Davila" (su nombre), a pesar de que el certificado de distribución se llamó "iPhone Distribution: Roomer Inc."

Cuando buscó "Roomer" en Keychain Access, NO se mostró el correcto en los resultados de búsqueda porque la clave de la cual se creó este certificado se llamó "Jorge Davila" y no "Roomer". Por lo tanto, él estaba exportando el certificado incorrecto y no se dio cuenta porque había otros (algunos expiraron) con ese nombre.

Así es como se ve el correcto:

Este es un problema relativamente matizado con la UX de Keychain Access y el hecho de que la herramienta de búsqueda no le da los resultados que espera. Estoy publicando esta respuesta con la esperanza de que otros puedan encontrarla útil.