
Estoy usando pass como backend para aws-vault en una máquina remota y parece que necesito agregar manualmente la "contraseña" para el perfil en gpg-agent antes de que aws-vault pueda utilizarla. Sin descifrar primero la contraseña daría el error
$ aws-vault exec --no-session --debug default -- aws s3 ls
2023/02/02 19:35:53 aws-vault v6.6.2
2023/02/02 19:35:53 Loading config file /home/<user>/.aws/config
2023/02/02 19:35:53 Parsing config file /home/<user>/.aws/config
2023/02/02 19:35:53 [keyring] Considering backends: [pass]
2023/02/02 19:35:53 profile default: using stored credentials
2023/02/02 19:35:53 profile default: skipping GetSessionToken because disabled
2023/02/02 19:35:53 Looking up keyring for 'default'
gpg: decryption failed: No secret key
aws-vault: error: exec: Failed to get credentials for default: exit status 2
pero después de ejecutar pass default
e ingresar la pass
contraseña, funciona ya que (supongo) las credenciales ahora están almacenadas en gpg-agent durante algún tiempo y aws-vault puede verlas correctamente.
¿Cómo puedo hacer que aws-vault solicite la contraseña de acceso si la requiere? En lugar de tener que correr pass <profile>
primero.
Respuesta1
puede utilizar la variable de entorno AWS_VAULT_FILE_PASSPHRASE para pasar la frase de contraseña. ver la documentación aquíhttps://github.com/99designs/aws-vault/blob/master/USAGE.md#environment-variables