99designs / aws-vault

A vault for securely storing and accessing AWS credentials in development environments

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

mfa_process does not seem to be working with Windows

kariya1111 opened this issue · comments

  • I am using the latest release of AWS Vault: v7.2.0.
  • I have provided my .aws/config (redacted if necessary)
  • I have provided the debug output using aws-vault --debug (redacted if necessary)

emvironment:
Windows 10, command prompt

.aws/config file:

[profile common]
region=ap-northeast-1
output=json
mfa_serial=arn:aws:iam::111111111111:mfa/xxxxxxxxx
mfa_process=op read "op://Private/xxxxxxxx?attribute=otp"
role_session_name=xxxxxxxxx`

executed command:
aws-vault exec common --json --prompt=terminal

result:
aws-vault: error: exec: Failed to get credentials for common: process provider: exec: "/bin/sh": file does not exist

note:
If I delete mfa_process=op read "op://Private/xxxxxxxx?attribute=otp"from config, it worked.

I believe the issue lies in specifying only "/bin/sh" in the code below.

cmd := exec.Command("/bin/sh", "-c", processCmd)

I think it will work if it support multiple OS like the code below.

aws-vault/cli/exec.go

Lines 327 to 331 in e22aea1

if runtime.GOOS == "windows" {
command = "cmd.exe"
} else {
command = "/bin/sh"
}