使用者管理
概觀
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 主控台。
MinIO root
使用者
MinIO 部署有一個 root
使用者,可以存取部署上的所有操作和資源,無論配置的身分管理器為何。當 minio
伺服器首次啟動時,它會檢查以下環境變數的值,以設定 root
使用者憑證
輪換 root 使用者憑證需要為部署中的所有 MinIO 伺服器更新其中一個或兩個變數。為 root 憑證指定長、獨特且隨機的字串。請採取一切可能的預防措施來儲存存取金鑰和密碼金鑰,確保只有已知且受信任、需要對部署擁有超級使用者存取權的人員才能檢索 root
憑證。
MinIO 強烈建議不要將
root
使用者用於常規的客戶端存取,無論環境為何(開發、預備或生產)。MinIO 強烈建議建立使用者,以便每個客戶端都能存取執行其指定工作負載所需的最小操作和資源集。
如果未設定這些變數,minio
會預設使用 minioadmin
和 minioadmin
作為存取金鑰和密碼金鑰。無論部署環境為何,MinIO 都強烈建議不要使用預設憑證。
已棄用舊版 Root 使用者環境變數
MinIO RELEASE.2021-04-22T15-44-28Z 及更高版本已棄用以下用於設定或更新 root 使用者憑證的變數
MINIO_ACCESS_KEY
為新的存取金鑰。MINIO_SECRET_KEY
為新的密碼金鑰。MINIO_ACCESS_KEY_OLD
為舊的存取金鑰。MINIO_SECRET_KEY_OLD
為舊的密碼金鑰。
使用者管理
建立使用者
使用 mc admin user add
命令在 MinIO 部署上建立新使用者
mc admin user add ALIAS ACCESSKEY SECRETKEY
將
ACCESSKEY
取代為使用者的存取金鑰。MinIO 允許在使用者建立後透過mc admin user info
命令檢索存取金鑰。將
SECRETKEY
取代為使用者的密碼金鑰。MinIO 不提供任何方法在設定後檢索密碼金鑰。
為 ACCESSKEY
和 SECRETKEY
都指定一個獨特、隨機且長的字串。您的組織可能有關於產生用於存取金鑰或密碼金鑰的值的特定內部或法規要求。
建立使用者後,使用 mc admin policy attach
將MinIO 基於策略的存取控制關聯到新使用者。以下命令會指派內建的 readwrite
策略
mc admin policy attach ALIAS readwrite --user=USERNAME
將 USERNAME
取代為上一步中建立的 ACCESSKEY
。
刪除使用者
使用 mc admin user rm
命令移除 MinIO 部署上的使用者
mc admin user rm ALIAS USERNAME