文档

外部身份管理

MinIO 通过以下身份提供商 (IDP) 支持多个外部身份管理器

以下教程为选定的 IDP 软件提供了具体指导

用户可以使用其外部管理的凭据和相关的 安全令牌服务 (STS) API 对 MinIO 进行身份验证。身份验证后,MinIO 会尝试将用户与一个或多个已配置的 策略 关联。没有关联策略的用户对 MinIO 部署没有权限。

OpenID Connect (OIDC)

MinIO 支持使用 OpenID Connect (OIDC) 兼容的身份提供商 (IDP),例如 Okta、KeyCloak、Dex、Google 或 Facebook 来外部管理用户身份。配置外部 IDP 可启用单点登录工作流,其中应用程序在访问 MinIO 之前对外部 IDP 进行身份验证。

MinIO 使用 基于策略的访问控制 (PBAC) 来定义已验证用户可以访问的操作和资源。MinIO 支持创建和管理 策略,外部管理的用户可以声明这些策略。

对于由外部 OpenID Connect (OIDC) 兼容提供商管理的身份,MinIO 使用 JSON Web 令牌声明 来识别要分配给已验证用户的 策略

MinIO 默认情况下会查找 policy 声明并读取要分配的一个或多个策略的列表。MinIO 会尝试将现有策略与 JWT 声明中指定的策略匹配。如果 MinIO 部署中不存在任何指定的策略,则 MinIO 会拒绝该用户发出的任何和所有操作的授权。例如,考虑具有以下键值分配的声明

policy="readwrite_data,read_analytics,read_logs"

指定的策略声明指示 MinIO 将名称与 readwrite_dataread_analyticsread_logs 匹配的策略附加到已验证的用户。

您可以使用 MINIO_IDENTITY_OPENID_CLAIM_NAME 环境变量使用 mc admin config set 设置 identity_openid claim_name 设置来设置自定义策略声明。

有关将 MinIO 策略映射到 OIDC 管理的身份的信息,请参阅OpenID Connect 访问管理

您可以使用JWT 调试工具解码返回的 JWT 令牌并验证用户属性是否包含指定的声明。有关 JWT 声明的更多信息,请参阅RFC 7519:JWT 声明。有关配置用户声明的说明,请参阅您首选的 OIDC 提供商的文档。

Active Directory / LDAP

MinIO 支持使用 Active Directory 或 LDAP (AD/LDAP) 服务来外部管理用户身份。配置外部身份提供商 (IDP) 可以启用单点登录 (SSO) 工作流,其中应用程序在访问 MinIO 之前对外部 IDP 进行身份验证。

查询 Active Directory / LDAP 服务

MinIO 查询配置的 Active Directory / LDAP 服务器以验证应用程序指定的凭据,并可选地返回用户所属的组列表。此过程称为查找绑定模式,它使用具有最小权限的 AD/LDAP 用户,仅足以对 AD/LDAP 服务器进行身份验证以进行用户和组查找。

以下选项卡提供了启用查找绑定模式所需的的环境变量和配置设置的参考。

AD/LDAP 管理身份的访问控制

MinIO 使用基于策略的访问控制 (PBAC)来定义已认证用户可以访问的操作和资源。当使用 Active Directory/LDAP 服务器进行身份管理(身份验证)时,MinIO 通过 PBAC 保持对访问(授权)的控制。

当用户使用其 AD/LDAP 凭据成功认证到 MinIO 时,MinIO 会搜索所有显式关联到该用户可分辨名称 (DN) 的策略。具体来说,必须使用mc idp ldap policy attach命令将策略分配给与 DN 匹配的用户。

MinIO 还支持查询用户的 AD/LDAP 组成员资格。MinIO 尝试将现有策略与每个用户组的 DN 匹配。已认证用户的完整权限集包括其显式分配的和组继承的策略。有关更多信息,请参阅组查找

MinIO 使用默认拒绝行为,其中没有显式分配或组继承策略的用户无法访问 MinIO 部署上的任何资源。

MinIO 提供了内置策略用于基本访问控制。您可以使用mc admin policy create命令创建新策略。

组查找

MinIO 支持查询 Active Directory / LDAP 服务器以获取已认证用户所属的组列表。MinIO 尝试将现有的策略与每个组 DN 匹配,并将每个匹配的策略分配给已认证的用户。

以下选项卡提供了启用组查找所需的的环境变量和配置设置的参考。

有关这些设置的更多信息,请参阅identity_ldap参考文档。配置 MinIO 以使用 Active Directory / LDAP 进行身份验证教程包含设置这些值的完整说明。