Estoy almacenando varias contraseñas (por ejemplo, para servidores de correo electrónico remotos) en mi llavero. Desde la línea de comandos, cuando inicie sesión localmente, puedo recuperarlos a través de:
security unlock-keychain ~/Library/Keychains/login.keychain
<enter password>
security find-internet-password -s smtp.gmail.com -a [email protected]
<dumps keychain attributes, not including password>
security find-internet-password -s smtp.gmail.com -a [email protected] -g
<dumps keychain attributes, including password>
Sin embargo, los resultados no se pueden lograr cuando se ejecutan de forma remota (por ejemplo, caja de otro lugar):
security unlock-keychain ~/Library/Keychains/login.keychain
<enter password>
security find-internet-password -s smtp.gmail.com -a [email protected]
<dumps keychain attributes, not including password>
security find-internet-password -s smtp.gmail.com -a [email protected] -g
<nothing printed, to stdout or stderr>
Además, el valor de retorno del comando final (con -g) es 36.
He vaciado la salida de set
de un inicio de sesión local y lo he comparado con un control remoto
uno, y las variables de entorno que faltan son:
Apple_PubSub_Socket_Render
GPG_AGENT_INFO
SECURITYSESSIONID
TERM_PROGRAM
TERM_PROGRAM_VERSION
TERM_SESSION_ID
XPC_FLAGS
XPC_SERVICE_NAME
¿Qué me estoy perdiendo? Tengo SSH_AUTH_SOCK
establecido en un valor válido (devuelto
de ssh-agent
).