文件

使用者管理

概觀

MinIO 使用者包含一個唯一的存取金鑰 (使用者名稱) 和對應的私密金鑰 (密碼)。用戶端必須透過指定現有 MinIO 使用者的有效存取金鑰 (使用者名稱) 和對應的私密金鑰 (密碼) 來驗證其身分。

每個使用者可以有一個或多個已指派的 原則,這些原則明確列出該使用者可以存取的動作和資源。使用者也可以從他們所屬的 群組 中繼承原則。

依預設,MinIO 會拒絕存取使用者已指派或繼承的 原則 中未明確允許的所有動作或資源。您必須明確指派一個 原則,描述使用者的授權動作和資源,或者將使用者指派給具有相關原則的 群組。如需更多資訊,請參閱 存取管理

此頁面記錄 MinIO 內部身分提供者 (IDP) 的使用者管理。MinIO 還使用 OpenID Connect (OIDC) 或 Active Directory/LDAP 身分提供者 (IDP) 進行身分外部管理。如需更多資訊,請參閱

啟用外部身分管理會停用 MinIO 內部 IDP,但建立 存取金鑰 除外。

存取金鑰

MinIO 存取金鑰(先前稱為「服務帳戶」)是已驗證的 MinIO 使用者的子身分,包括外部管理的身分。每個存取金鑰都會根據附加到其父使用者父使用者所屬群組的原則來繼承其權限。存取金鑰也支援可選的內嵌原則,進一步限制對父使用者可用的動作和資源子集的存取權。

一個 MinIO 使用者可以產生任意數量的存取金鑰。這讓應用程式擁有者可以為他們的應用程式產生任意的存取金鑰,而無需 MinIO 管理員執行任何操作。由於產生的存取金鑰具有與父使用者相同或更少的權限,因此管理員可以專注於管理頂層的父使用者,而無需微管理產生的存取金鑰。

您可以使用MinIO 主控台使用mc admin user svcacct add指令來建立存取金鑰。透過這些方法建立的身分,在您移除存取金鑰或父帳戶之前都不會過期。

您也可以使用 AssumeRole STS API 端點,以程式設計方式建立安全權杖服務帳戶。STS 權杖預設會在 1 小時後過期,但您可以將其過期時間設定為建立後的最多 7 天。

MinIO root 使用者

MinIO 部署有一個 root 使用者,無論設定的身分管理員為何,該使用者都可以存取部署上的所有動作和資源。當minio伺服器首次啟動時,它會透過檢查下列環境變數的值來設定root使用者的憑證

輪換 root 使用者憑證需要為部署中的所有 MinIO 伺服器更新其中一個或兩個變數。為 root 憑證指定長、唯一和隨機字串。在儲存存取金鑰和密鑰時,請採取所有可能的預防措施,確保只有已知且受信任,需要對部署進行超級使用者存取的個人才能檢索root憑證。

  • 無論環境(開發、預演或生產)為何,MinIO 都強烈不建議使用root使用者進行常規用戶端存取。

  • MinIO 強烈建議建立使用者,使每個用戶端都能存取執行其指定工作負載所需的最小動作和資源集。

如果未設定這些變數,minio會預設使用 minioadminminioadmin 作為存取金鑰和密鑰。無論部署環境為何,MinIO 都強烈不建議使用預設憑證。

使用者管理

建立使用者

使用mc admin user add指令在 MinIO 部署上建立新的使用者

mc admin user add ALIAS ACCESSKEY SECRETKEY
  • ALIAS替換為 MinIO 部署的別名

  • ACCESSKEY替換為使用者的存取金鑰。MinIO 允許在使用者建立後透過mc admin user info指令擷取存取金鑰。

  • SECRETKEY替換為使用者的密鑰。MinIO 不會提供任何方法來擷取設定後的密鑰。

ACCESSKEYSECRETKEY 指定唯一的、隨機的且長的字串。您的組織可能對產生用於存取金鑰或密鑰的值有特定的內部或法規要求。

建立使用者後,使用mc admin policy attachMinIO 基於原則的存取控制關聯到新的使用者。以下指令會指派內建的readwrite原則

mc admin policy attach ALIAS readwrite --user=USERNAME

USERNAME 替換為上一步中建立的 ACCESSKEY

刪除使用者

使用mc admin user rm指令移除 MinIO 部署上的使用者

mc admin user rm ALIAS USERNAME
  • ALIAS替換為 MinIO 部署的別名

  • USERNAME替換為要移除的使用者名稱。