Mc: [Vorschlag] Unterstützung des STS-basierten Zugriffs auf MinIO

Erstellt am 14. Sept. 2019  ·  5Kommentare  ·  Quelle: minio/mc

Um über die STS-API auf MinIO zuzugreifen, können wir mc einen Befehl hinzufügen, wie zum Beispiel:

mc sts ENDPOINT <sts-type> <sts-specific-args>

um Zugangsschlüssel, geheimen Schlüssel und Sitzungstoken auszudrucken.

Für LDAP könnte dies beispielsweise sein:

mc sts ENDPOINT ldap ldapuser=myusername ldappasswd=yyy

Darüber hinaus können wir mc einen Modus hinzufügen, um MinIO/S3-Aliasnamen mit STS-APIs abzurufen und zu konfigurieren.

Zum Beispiel mit mc config sts ldap add ALIAS URL ldapuser=xx ldappasswd=yy ,
ruft temporäre Zugangsdaten über STS vom MinIO-Server ab und konfiguriert dann den Alias, um die zurückgegebenen Zugangsdaten zu verwenden. Jetzt kann der Benutzer andere mc-Befehle verwenden, um auf den MinIO-Server zuzugreifen.

medium stale

Alle 5 Kommentare

Für die Umsetzung haben wir uns entschieden, diesen Stil zu entwickeln

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)

Jetzt wird "accessKey, secretKey, sessionToken" in Json-Form mit dem Flag --json ausgegeben oder die Umgebungsvariablen ausgegeben, die Benutzer festlegen müssen, um die Sitzungstoken zu verwenden, z. B. mit aws sdks

AWS_SECRET_ACCESS_KEY
AWS_SESSION_TOKEN

Dieselben Token, die von mc wir nicht in config hinzufügen, indem wir mc config host add sondern nur die Benutzer anweisen, die Umgebungsvariable zu nutzen.

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 Web-Identity-Beispiel wird aktualisiert @balamurugana

Hier sind die vorgeschlagenen CLI-Änderungen @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=

Jedes dieser Beispiele ist bereits in der

Web-Identität wird derzeit auf die Zukunft verschoben, da sie eine interaktive WebUI und einen Browser erfordern würde, so dass sie derzeit möglicherweise nicht benötigt wird.

und verwenden Sie die mc Umgebungen, damit dies funktioniert

export MC_HOST_mytemp=http://${accessKey}:${secretKey}@${url}/
export MC_HOST_SESSION_TOKEN_mytemp=${sessionToken}
mc ls mytemp

Dies sind vielleicht Beispiele, die von der mc CLI . bereitgestellt werden

Dieses Problem wurde automatisch als veraltet markiert, da es in letzter Zeit keine Aktivität hatte. Es wird nach 21 Tagen geschlossen, wenn keine weitere Aktivität stattfindet. Vielen Dank für Ihre Beiträge.

wir werden dies in mc nicht unterstützen

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen

Verwandte Themen

TJC picture TJC  ·  10Kommentare

kevinlul picture kevinlul  ·  13Kommentare

sebschlue picture sebschlue  ·  12Kommentare

lavvy picture lavvy  ·  15Kommentare

deekoder picture deekoder  ·  13Kommentare