AssumeRoleWithWebIdentity
MinIO 安全性權杖服務 (STS) AssumeRoleWithWebIdentity
API 端點使用從已設定的 OpenID 身分提供者 (IDP)傳回的 JSON Web 權杖 (JWT) 來產生暫時的存取憑證。本頁記錄 MinIO 伺服器 AssumeRoleWithWebIdentity
端點。如需使用與 S3 相容的 SDK 實作 STS 的說明,請參閱該 SDK 的文件。
MinIO STS AssumeRoleWithWebIdentity
API 端點是根據 AWS AssumeRoleWithWebIdentity 端點建模的,並且共用某些請求/回應元素。本頁記錄 MinIO 特有的語法,並連結到 AWS 參考資料以取得所有共用元素。
請求端點
AssumeRoleWithWebIdentity
端點具有以下形式
POST https://minio.example.net?Action=AssumeRoleWithWebIdentity[&ARGS]
以下範例使用所有支援的引數。將 minio.example.net
主機名稱取代為適用於您的 MinIO 叢集的適當 URL
POST https://minio.example.net?Action=AssumeRoleWithWebIdentity
&WebIdentityToken=TOKEN
&Version=2011-06-15
&DurationSeconds=86000
&Policy={}
請求查詢參數
此端點支援以下查詢參數
參數 |
類型 |
描述 |
---|---|---|
|
字串 |
必要 指定已設定的 OpenID 身分提供者傳回的 JSON Web 權杖 (JWT)。 |
|
字串 |
必要 指定 |
|
整數 |
選用 指定暫時憑證過期前的秒數。預設為
如果省略 |
|
字串 |
選用 指定 URL 編碼的 JSON 格式 政策,以用作內嵌會期政策。
臨時憑證的最終權限是作為 JWT 宣告 一部分指定的政策與指定的內嵌政策之間的交集。應用程式只能執行它們被明確授權的操作。 內嵌政策可以指定 JWT 宣告中允許的權限子集。應用程式永遠無法取得比 JWT 宣告政策中指定的更多特權。 省略此項以僅使用 JWT 宣告政策。 有關 MinIO 驗證和授權的更多資訊,請參閱 存取管理。 |
|
字串 |
選用 用於所有使用者驗證請求的角色 Amazon Resource Number (ARN)。如果使用此項,則必須由 使用時,所有有效的授權請求都會採用 RolePolicy 提供的相同權限集。您可以使用 OpenID 政策變數 來建立以程式方式管理每個個別使用者可存取內容的政策。 如果您未提供 RoleArn,MinIO 會嘗試透過基於 JWT 的宣告進行授權。 |
回應元素
此 API 端點的 XML 回應與 AWS AssumeRoleWithWebIdentity 回應 類似。具體來說,MinIO 會傳回 AssumeRoleWithWebIdentityResult
物件,其中 AssumedRoleUser.Credentials
物件包含 MinIO 產生的臨時憑證。
AccessKeyId
- 應用程式用於驗證的存取金鑰。SecretKeyId
- 應用程式用於驗證的秘密金鑰。Expiration
- 憑證過期後的 ISO-8601 日期時間。SessionToken
- 應用程式用於驗證的工作階段令牌。某些 SDK 在使用臨時憑證時可能需要此欄位。
以下範例類似於 MinIO STS AssumeRoleWithWebIdentity
端點傳回的回應
<?xml version="1.0" encoding="UTF-8"?>
<AssumeRoleWithWebIdentityResponse xmlns="https://sts.amazonaws.com/doc/2011-06-15/">
<AssumeRoleWithWebIdentityResult>
<AssumedRoleUser>
<Arn/>
<AssumeRoleId/>
</AssumedRoleUser>
<Credentials>
<AccessKeyId>Y4RJU1RNFGK48LGO9I2S</AccessKeyId>
<SecretAccessKey>sYLRKS1Z7hSjluf6gEbb9066hnx315wHTiACPAjg</SecretAccessKey>
<Expiration>2019-08-08T20:26:12Z</Expiration>
<SessionToken>eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJhY2Nlc3NLZXkiOiJZNFJKVTFSTkZHSzQ4TEdPOUkyUyIsImF1ZCI6IlBvRWdYUDZ1Vk80NUlzRU5SbmdEWGo1QXU1WWEiLCJhenAiOiJQb0VnWFA2dVZPNDVJc0VOUm5nRFhqNUF1NVlhIiwiZXhwIjoxNTQxODExMDcxLCJpYXQiOjE1NDE4MDc0NzEsImlzcyI6Imh0dHBzOi8vbG9jYWxob3N0Ojk0NDMvb2F1dGgyL3Rva2VuIiwianRpIjoiYTBiMjc2MjktZWUxYS00M2JmLTg3MzktZjMzNzRhNGNkYmMwIn0.ewHqKVFTaP-j_kgZrcOEKroNUjk10GEp8bqQjxBbYVovV0nHO985VnRESFbcT6XMDDKHZiWqN2vi_ETX_u3Q-w</SessionToken>
</Credentials>
</AssumeRoleWithWebIdentityResult>
<ResponseMetadata/>
</AssumeRoleWithWebIdentityResponse>
錯誤元素
此 API 端點的 XML 錯誤回應與 AWS AssumeRoleWithWebIdentity 回應 類似。