Estoy tratando de recuperar el token de sesión en la CLI de AWS así:
aws sts get-session-token --serial-number arn-string --token-code mfacode
donde
arn-string se copia desde la consola de administración de IAM, credenciales de seguridad para el dispositivo MFA asignado, formato como arn:aws:iam:<number>:mfa/<name>mfacode se toma del dispositivo mfa virtual registrado An error occurred (InvalidClientTokenId) when calling the GetSessionToken operation: The security token included in the request is invalid.
Sin embargo, uso ese dispositivo MFA para iniciar sesión en la consola en el navegador sin problemas.
Solo tengo un perfil predeterminado en mi ~/.aws/, pero no veo cómo esto podría influir.
--token-code con la esperanza de que me solicite el token del dispositivo MFA -- mismo errorarn:aws:iam:<number>:user/<name> -- el mismo error que se puede esperar ya que la aws get-session-id help indica claramente que debe ser el arn del dispositivo mfaMe imagino que esto tiene que ver con arn-string en lugar del token, pero ¿qué? Cualquier idea sobre qué causa este problema es bienvenida.
Saludos, Olaf
Resuelto. El comentario de maafk lo clava. Para los registros y para la próxima pobre alma que tropiece con este problema:
El perfil utilizado debe tener la entrada mfa_serial . En mi caso, agregué la cadena arn para el dispositivo mfa a mi perfil predeterminado local en ~/.aws/config así:
[default]
region = eu-central-1
mfa_serial = arn:aws:iam:<number>:mfa/<name>
Esta cadena se puede encontrar en la consola, servicio IAM bajo el usuario, credenciales de seguridad.