Esto funciona bien si no está usando tokens de sesión, pero si lo está, falla porque mc no tiene un lugar para aceptar el token de sesión.
~$ env | grep AWS
AWS_SECRET_ACCESS_KEY=Fxxxxxxxxxxxxxxx8
AWS_DEFAULT_REGION=us-east-1
AWS_SESSION_TOKEN=XxxxxxxxxY
AWS_ACCESS_KEY_ID=AxxxxxxxxxxxxxxxQ
~$ aws s3 ls
# .. s3 output follows, successfully ..
~$ mc config host add s3 https://s3.amazonaws.com \
$AWS_ACCESS_KEY_ID \
$AWS_SECRET_ACCESS_KEY
~$ mc ls s3
mc: <ERROR> Unable to list folder. The AWS Access Key Id you provided does not exist in our records.
~$ mc version
Version: 2017-10-14T00:51:16Z
Release-tag: RELEASE.2017-10-14T00-51-16Z
Commit-id: 785e14a725357b39e22b74483cd202e7effa6195
Sí, necesitamos admitir esto ... actualmente solo admitimos claves a largo plazo.
@TJC planearemos esto para el futuro.
Cerraremos esto y lo marcaremos futuro. Reabrirá cuando hayamos terminado con las prioridades actuales.
¿Apoyará esta función?
@deekoder ¿Ha habido algún progreso en esto? Sería realmente bueno tener soporte para credenciales temporales de AWS.
Desafortunadamente no @varkey
Hola,
Me encantaría esta función para nuestra organización.
¿Alguna posibilidad de tener algún progreso en esto?
¿Aceptarías relaciones públicas para esto si envío una (no estoy seguro de si puedo manejarlo todavía)?
Gracias !
Claro, no dude en enviar un PR que actualmente no vemos que funcione en esta función.
mc
admite tokens de sesión temporales si está dispuesto a editar ~/.mc/config.json
directamente o usar la nueva configuración de alias ENV. El modelo de datos lo admite, simplemente no hay forma de configurar el token a través de la línea de comando.
Fui a hurgar para ver qué tan difícil sería agregar y descubrí que ya existía en configV10
Incluso podría generar un archivo temporal y cargarlo con mc --config-dir
si necesitara un script.
Aparentemente, también puede usar un nuevo modo ENV para establecer alias
Esto fue introducido hace 4 meses por @harshavardhana - ¡gracias por agregar sessionToken
soporte!
Aquí está mi archivo de configuración, funciona bien.
{
"version": "10",
"aliases": {
"local": {
"url": "http://localhost:9000",
"accessKey": "CHANGE",
"secretKey": "CHANGE",
"sessionToken": "CHANGE",
"api": "s3v4",
"path": "auto"
}
}
}
Editar: Sí, lo encontré mientras escribía.
solución alterna
No estoy seguro de por qué los mantenedores no han mencionado esto, pero
mc
admite tokens de sesión temporales si está dispuesto a editar~/.mc/config.json
directamente. El modelo de datos lo admite, simplemente no hay forma de configurar el token a través de la línea de comando.Fui a hurgar para ver qué tan difícil sería agregar y descubrí que ya existía en configV10
Incluso podría generar un archivo temporal y cargarlo con
mc --config-dir
si necesitara un script.Aquí está mi archivo de configuración, funciona bien.
{ "version": "10", "aliases": { "local": { "url": "http://localhost:9000", "accessKey": "CHANGE", "secretKey": "CHANGE", "sessionToken": "CHANGE", "api": "s3v4", "path": "auto" } } }
No es necesario modificar la configuración, eso no es recomendable que lo mencionemos abiertamente en los documentos.
https://github.com/minio/mc/blob/master/docs/minio-client-complete-guide.md#specify -temporary-host-configuration-through-environment-variable
No sé si leíste esta documentación.
Comentario más útil
Hola,
Me encantaría esta función para nuestra organización.
¿Alguna posibilidad de tener algún progreso en esto?
¿Aceptarías relaciones públicas para esto si envío una (no estoy seguro de si puedo manejarlo todavía)?
Gracias !