Tengo un script que controla a ssh en una Mac. El script original, que funcionó en El Capitán, desbloquearía el llavero con esto:
security unlock-keychain -p mypassword
El comando anterior da un error en Sierra, así que lo actualicé a esto:
security unlock-keychain -p mypassword ~/Library/Keychains/login.keychain
El comando de arriba parece funcionar pero luego, cuando enumero los llaveros, el llavero de inicio de sesión todavía no está allí y mi secuencia de comandos falla al intentar firmar mi código porque no puede obtener los certificados.
(~)$ security list-keychains
"/Library/Keychains/System.keychain"
"/Library/Keychains/System.keychain"
Todo esto funciona perfectamente en una ventana de terminal en el host, pero necesito que funcione de forma remota en SSH.
Gracias por cualquier ayuda o sugerencia.
Actualización del 10 de octubre de 2016: cambié la autenticación ssh de la contraseña a la clave rsa y comenzó a funcionar. Después de que pude acceder al llavero de inicio de sesión, comencé a recibir un error en el shell ssh: La API de SecKey devolvió: -25308 desde codesign. Esto resultó ser un error de permisos. Cuando lo probé en el host en un terminal, apareció un diálogo del llavero que me pedía que permitiera el acceso.