中文文档

用户管理

概述

一个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 命令来创建访问密钥。 通过这些方法创建的身份,在您删除访问密钥或父账户之前,不会过期。

您还可以使用 Assume Role STS API端点程序化地创建 安全令牌服务(security token service) 账户。 STS令牌默认在1小时后过期,但您可以将过期时间设置为从创建之日起最多7天。

MinIO root 用户

MinIO部署中有一个名为 root 的用户,该用户可以访问部署上的所有 操作和资源,无论配置了哪种 身份管理器(identity manager)。当一个MinIO服务器首次启动时, 它会通过检查以下环境变量的值来设置 root 用户的凭据:

  • MINIO_ROOT_USER

  • MINIO_ROOT_PASSWORD

要轮换根用户凭据,需要更新部署中所有MinIO服务器上 的一个或两个环境变量。为根凭据指定 长、 唯一且随机 的字符串。 在存储访问密钥和秘密密钥时, 应采取所有可能的预防措施,以确保只有那些已知且受信任且 需要 超级用户访问权限的个人才能检索到 root 凭据。

  • MinIO 强烈建议 不要在任何环境(开发、测试或生产) 中使用 root 用户进行常规客户端访问。

  • MinIO 强烈建议 创建用户,以便每个客户端都能访问 到执行其分配的工作负载所需的最小动作和 资源集。

如果这些变量未设置,minio 将默认使用 minioadmin 作为 访问密钥,以及 minioadmin 作为秘密密钥。 MinIO 强烈建议 不要在任何部署环境中 使用默认凭据。

用户管理

创建用户

使用 mc admin user add 命令在 MinIO 部署上 创建新用户:

mc admin user add ALIAS ACCESSKEY SECRETKEY
  • ALIAS 替换 为 MinIO 部署的 alias

  • ACCESSKEY 替换为 用户的访问密钥。MinIO 允许在用户创建后通过 mc admin user info 命令 检索访问密钥。

  • SECRETKEY 替换为 用户的秘密密钥。MinIO 提供任何方法来检索一旦设置的秘密 密钥。

ACCESSKEYSECRETKEY 分别指定一个独特、随机且较长的 字符串。您的组织可能有关于生成用于访问或秘密密钥的值的特定内部 或监管要求。

在创建用户后,使用 mc admin policy attach 命令将一个 MinIO Policy Based Access Control 关联到新用户。 以下命令分配了内置的 readwrite 策略:

mc admin policy attach ALIAS readwrite --user=USERNAME

USERNAME 替换为上一步中创建的 ACCESSKEY

删除用户

使用 mc admin user rm 命令可以从 MinIO 部署 中删除一个用户:

mc admin user rm ALIAS USERNAME
  • ALIAS 替换为 MinIO 部署的 alias

  • USERNAME 替换为要删除的 用户的名字。

Join Slack 商业支持购买咨询