AssumeRoleWithCustomToken
MinIO Security Token Service (STS) 的 AssumeRoleWithCustomToken API 端点会生成一个令牌,用于配合 MinIO External Identity Management Plugin 使用。
请求端点
AssumeRoleWithCustomToken 端点的格式如下:
POST https://minio.example.net?Action=AssumeRoleWithCustomToken[&ARGS]
以下示例使用了所有受支持的参数。
请将 minio.example.net 主机名替换为你的 MinIO 集群对应 URL:
POST https://minio.example.net?Action=AssumeRoleWithCustomToken
&Token=TOKEN
&Version=2011-06-15
&DurationSeconds=86000
&RoleArn="external-auth-provider"
请求查询参数
此端点支持以下查询参数:
参数 |
类型 |
说明 |
|---|---|---|
|
string |
必填 指定提交给外部身份管理器的 JSON Token。 MinIO 期望身份管理器解析该令牌,并判断是否使用该令牌对客户端请求进行认证。 |
|
string |
必填 指定 |
|
string |
必填 指定与此 STS 请求关联的 Identity Manager Plugin 配置 ARN。 更多信息请参见 请注意,MinIO 在生成 RoleArn 时会自动为已配置的 |
|
integer |
可选 指定临时凭证在多少秒后过期。
默认值为
|
响应元素
MinIO 返回一个 AssumeRoleWithCustomTokenResult 对象,其中 AssumedRoleUser.Credentials 对象包含 MinIO 生成的临时凭证:
AccessKeyId- 应用程序用于认证的访问密钥。SecretKeyId- 应用程序用于认证的秘密密钥。Expiration- 凭证过期的 RFC3339 日期和时间。SessionToken- 应用程序用于认证的会话令牌。某些 SDK 在使用临时凭证时可能要求此字段。
以下示例与 MinIO STS AssumeRoleWithCustomToken 端点返回的响应类似:
<?xml version="1.0" encoding="UTF-8"?>
<AssumeRoleWithCustomTokenResponse xmlns="https://sts.amazonaws.com/doc/2011-06-15/">
<AssumeRoleWithCustomTokenResult>
<Credentials>
<AccessKeyId>ACCESS_KEY</AccessKeyId>
<SecretAccessKey>SECRET_KEY</SecretAccessKey>
<Expiration>YYYY-MM-DDTHH:MM:SSZ</Expiration>
<SessionToken>TOKEN</SessionToken>
</Credentials>
<AssumedUser>custom:Alice</AssumedUser>
</AssumeRoleWithCustomTokenResult>
<ResponseMetadata>
<RequestId>UNIQUE_ID</RequestId>
</ResponseMetadata>
</AssumeRoleWithCustomTokenResponse>
错误元素
此 API 端点的 XML 错误响应与 AWS AssumeRoleWithWebIdentity response 类似。