文档基于2025-10-10日社区最终版构建     
切换到英文版    进入演示系统    进入交流社区

MinIO Documentation

AssumeRoleWithCustomToken

MinIO 安全令牌服务 (STS)AssumeRoleWithCustomTokenAPI端点生成用于MinIO 外部身份管理插件.

请求端点

TheAssumeRoleWithCustomTokenendpoint 具有以下形式:

POST https://minio.example.net?Action=AssumeRoleWithCustomToken[&ARGS]

以下示例使用了所有支持的参数。 替换minio.example.net使用适用于您的 MinIO 集群的相应 URL 替换 hostname:

POST https://minio.example.net?Action=AssumeRoleWithCustomToken
&Token=TOKEN
&Version=2011-06-15
&DurationSeconds=86000
&RoleArn="external-auth-provider"

请求查询参数

此端点支持以下查询参数:

参数

类型

描述

Token

字符串

必需

指定要呈现给外部身份管理器的 JSON Token。 MinIO 期望身份管理器能够解析该 Token,并决定是否使用该 Token 对客户端请求进行身份验证。

Version

字符串

必需

指定2011-06-15.

RoleArn

字符串

必需

指定要与此 STS 请求关联的 Identity Manager 插件配置的 ARN。

MINIO_IDENTITY_PLUGIN_ROLE_ID or identity_plugin role_id欲了解更多信息。

请注意,MinIO 会自动在前面添加idmp-到已配置的ROLE_ID在生成 RoleArn 时。 请包含该字符串与ROLE_ID如果需要的话。

DurationSeconds

整数

可选

指定临时凭证过期的秒数。 默认为3600.

  • 最小值为900或 15 分钟。

  • 最大值为604800或 7 天。

响应元素

MinIO 返回一个AssumeRoleWithCustomTokenResult对象,其中AssumedRoleUser.Credentialsobject 包含由 MinIO 生成的临时凭据:

  • AccessKeyId- 应用程序用于身份验证的访问密钥。

  • SecretKeyId- 应用程序用于身份验证的密钥。

  • Expiration- 该RFC3339凭证过期后的日期和时间。

  • SessionToken- 应用程序用于身份验证的会话令牌。某些 SDK 在使用临时凭证时可能需要此字段。

以下示例类似于 MinIO STS 返回的响应AssumeRoleWithCustomTokenendpoint:

<?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 响应.