Mc: 【提案】支持基于STS访问MinIO

创建于 2019-09-14  ·  5评论  ·  资料来源: minio/mc

要通过 STS API 访问 MinIO,我们可以向 mc 添加一个命令,例如:

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

打印出访问密钥、秘密密钥和会话令牌。

例如对于 LDAP,这可能是:

mc sts ENDPOINT ldap ldapuser=myusername ldappasswd=yyy

除此之外,我们还可以向 mc 添加一个模式,以使用 STS API 获取和配置 MinIO/S3 别名。

例如,使用mc config sts ldap add ALIAS URL ldapuser=xx ldappasswd=yy
通过 STS 从 MinIO 服务器获取临时凭证,然后配置别名以使用返回的访问凭证。 现在用户可以使用其他 mc 命令来访问 MinIO 服务器。

medium stale

所有5条评论

我们决定实施的是提出这种风格

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)

现在这将以带有 --json 标志的 json 形式输出“accessKey、secretKey、sessionToken”或打印用户需要设置的环境变量以开始使用会话令牌,例如使用 aws sdks

AWS_SECRET_ACCESS_KEY
AWS_SESSION_TOKEN

mc使用的相同令牌我们不需要通过执行mc config host add将它添加到config ,而只是告诉用户利用环境变量。

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网络身份示例已更新@balamurugana

这是提议的 CLI 更改@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=

这些例子中的每一个都已经存在于

web-identity 目前推迟到未来,因为它需要交互式 WebUI 和浏览器,所以目前可能不需要它。

并使用mc环境来完成这项工作

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

这可能是mc CLI 提供的示例

此问题已自动标记为陈旧,因为它最近没有活动。 如果没有进一步的活动,它将在 21 天后关闭。 感谢你的贡献。

我们不会在 mc 中支持这个

此页面是否有帮助?
0 / 5 - 0 等级