Pour accéder à MinIO via l'API STS, on peut ajouter une commande à mc telle que :
mc sts ENDPOINT <sts-type> <sts-specific-args>
pour imprimer la clé d'accès, la clé secrète et le jeton de session.
Par exemple pour LDAP, cela pourrait être :
mc sts ENDPOINT ldap ldapuser=myusername ldappasswd=yyy
En plus de cela, nous pouvons ajouter un mode à mc pour récupérer et configurer les alias MinIO/S3 avec les API STS.
Par exemple, avec mc config sts ldap add ALIAS URL ldapuser=xx ldappasswd=yy
,
récupère les informations d'identification temporaires via STS à partir du serveur MinIO, puis configure l'alias pour utiliser les informations d'identification d'accès renvoyées. L'utilisateur peut désormais utiliser d'autres commandes mc pour accéder au serveur MinIO.
Ce que nous avons décidé de mettre en œuvre était de proposer ce style
mc sts ldap myminio ldap_url= ldapuser= ldappassword=
mc sts assume-role myminio username= password=
mc sts client-grants myminio client_url= client_id= client_secret=
mc sts web-identity myminio web_identity_url= (this will throw a login page by opening browser)
Maintenant, cela affichera "accessKey, secretKey, sessionToken" sous forme json avec l'indicateur --json ou imprime les variables d'environnement que les utilisateurs doivent définir pour commencer à utiliser les jetons de session, comme avec aws sdks
AWS_SECRET_ACCESS_KEY
AWS_SESSION_TOKEN
Les mêmes jetons à utiliser par mc
nous n'avons pas besoin de les ajouter dans config
en faisant mc config host add
mais il suffit de dire aux utilisateurs d'exploiter la variable d'environnement.
export MC_HOST_mytemp=http://${accessKey}:${secretKey}@${url}/
export MC_HOST_SESSION_TOKEN_mytemp=${sessionToken}
mc ls mytemp
https://github.com/minio/minio/pull/8501 exemple d'identité Web est mis à jour @balamurugana
Voici les modifications CLI proposées @balamurugana
mc sts ldap myminio ldap_username="bala" ldap_password="bala123"
mc sts assume-role myminio username="foo123" password="foo12345"
mc sts client-grants myminio token_endpoint= client_id= client_secret=
Chacun de ces exemples est déjà présent dans le
l'identité Web est actuellement reportée à l'avenir car elle nécessiterait une interface Web et un navigateur interactifs, ce qui n'est peut-être pas nécessaire pour le moment.
et utilisez les mc
envs pour que cela fonctionne
export MC_HOST_mytemp=http://${accessKey}:${secretKey}@${url}/
export MC_HOST_SESSION_TOKEN_mytemp=${sessionToken}
mc ls mytemp
Il s'agit peut-être d'exemples fournis par la CLI mc
Ce problème a été automatiquement marqué comme obsolète car il n'a pas eu d'activité récente. Il sera fermé après 21 jours si aucune autre activité ne se produit. Merci pour vos contributions.
nous ne soutiendrons pas cela dans mc