文档

OpenID 身份管理设置

此页面记录了使用兼容 OpenID Connect (OIDC) 的提供程序启用外部身份管理的设置。有关使用这些设置的教程,请参阅OpenID Connect 访问管理

您可以通过定义以下内容来建立或修改设置

  • 在启动或重新启动 MinIO 服务器之前,在主机系统上设置环境变量。有关如何定义环境变量,请参阅您的操作系统的文档。

  • 使用mc admin config set设置配置设置

  • 使用MinIO 控制台的管理员 > 设置页面设置配置设置

如果同时定义了环境变量和类似的配置设置,则 MinIO 使用环境变量值。

某些设置只有环境变量或配置设置,但没有两者。

重要

每个配置设置都控制 MinIO 的基本行为和功能。MinIO **强烈建议**在应用于生产环境之前,在较低的环境(如 DEV 或 QA)中测试配置更改。

示例

MINIO_IDENTITY_OPENID_CONFIG_URL="https://openid-provider.example.net/.well-known/openid-configuration"
identity_openid

使用mc admin config set设置或更新 OpenID 配置。config_url参数为必填。将其他可选参数指定为空格 (" ") 分隔的列表。

mc admin config set identity_openid                                               \
  config_url="https://openid-provider.example.net/.well-known/openid-configuration" \
  [ARGUMENT="VALUE"] ...

设置

配置 URL

必填

MINIO_IDENTITY_OPENID_CONFIG_URL
identity_openid config_url

指定与 OIDC 兼容的提供程序的 发现文档 URL。

OIDC 发现 URL 通常类似于以下内容

https://openid-provider.example.net/.well-known/openid-configuration

启用

可选

此设置没有环境变量选项。请改用配置设置。

identity_openid enabled

设置为 false 以禁用 OpenID 配置。

如果设置为 false,则应用程序无法生成 STS 凭证或以其他方式使用配置的提供程序对 MinIO 进行身份验证。

默认为 true 或“启用”。

客户端 ID

可选

MINIO_IDENTITY_OPENID_CLIENT_ID
identity_openid client_id

指定 MinIO 在针对与 OIDC 兼容的提供程序验证用户凭据时使用的唯一公共标识符。

客户端密钥

可选

MINIO_IDENTITY_OPENID_CLIENT_SECRET
identity_openid client_secret

指定 MinIO 在针对与 OIDC 兼容的提供程序验证用户凭据时使用的客户端密钥。此字段可能是可选的,具体取决于提供程序。

在版本 RELEASE.2023-06-23T20-26-00Z 中更改: 作为 mc admin config get 返回的一部分时,MinIO 会隐藏此值。

角色策略

可选

此设置与 Claim Name 设置互斥。

MINIO_IDENTITY_OPENID_ROLE_POLICY
identity_openid role_policy

指定用于请求的 RoleArn策略名称 的逗号分隔列表,用于提供程序的所有身份验证请求。指定的策略必须已存在于 MinIO 服务器上。

要使用此 OIDC 配置,您必须在 STS 请求正文中指定相应的 RoleArn

声明名称

可选

此设置与 Role Policy 设置互斥。

MINIO_IDENTITY_OPENID_CLAIM_NAME
identity_openid claim_name

指定 MinIO 用于识别要附加到已认证用户的 策略JWT 声明 的名称。

该声明可以包含一个或多个逗号分隔的策略名称,以附加到用户。该声明必须至少包含一个策略,以便用户在 MinIO 服务器上拥有任何权限。

默认为 policy

声明前缀

可选

此设置已弃用,并已从 RELEASE.2024-07-13T01-46-15Z 开始删除。请改用 MINIO_IDENTITY_OPENID_CLAIM_NAME

MINIO_IDENTITY_OPENID_CLAIM_PREFIX
identity_openid claim_prefix

指定要应用于指定声明名称的 JWT 声明 命名空间前缀。

显示名称

可选

MINIO_IDENTITY_OPENID_DISPLAY_NAME
identity_openid display_name

指定 MinIO 控制台在登录屏幕上显示的用户界面名称。

范围

可选

MINIO_IDENTITY_OPENID_SCOPES
identity_openid scopes

指定 范围 的逗号分隔列表。默认为发现文档中公布的那些范围。

重定向 URI

可选

此设置已弃用,并已从 RELEASE.2024-07-13T01-46-15Z 开始删除。请改用 MINIO_BROWSER_REDIRECT_URL

MINIO_IDENTITY_OPENID_REDIRECT_URI
identity_openid redirect_uri

重要

此参数已在 RELEASE.2023-02-27T18-10-45Z 中移除。请改用 MINIO_BROWSER_REDIRECT_URL 环境变量

MinIO 控制台默认使用发出身份验证请求的节点的主机名。对于负载均衡器或反向代理后面的 MinIO 部署,请指定此字段以确保 OIDC 提供程序将身份验证响应返回到正确的 MinIO 控制台 URL。包括控制台主机名、端口和 /oauth_callback

http://minio.example.net:consoleport/oauth_callback

确保使用 --console-address 选项启动 MinIO 服务器以设置静态控制台监听端口。省略该选项的默认行为是在启动时选择一个随机端口号。

指定的 URI 必须与提供程序上批准的重定向/回调 URI 之一匹配。有关更多信息,请参阅 OpenID 身份验证请求

动态 URI 重定向

可选

MINIO_IDENTITY_OPENID_REDIRECT_URI_DYNAMIC
identity_openid redirect_uri_dynamic

MinIO 控制台默认使用发出身份验证请求的节点的主机名作为提供给 OIDC 提供程序的重定向 URI 的一部分。对于使用轮询协议的负载均衡器后面的 MinIO 部署,这可能会导致负载均衡器将响应返回到与原始客户端不同的 MinIO 节点。

将此选项指定为 on 以指示 MinIO 控制台使用原始请求的 Host 标头来构造传递给 OIDC 提供程序的重定向 URI。默认为 off

用户信息

可选

MINIO_IDENTITY_OPENID_CLAIM_USERINFO
identity_openid claim_userinfo

允许 MinIO 从已认证用户的 用户信息端点 获取声明。

有效值为 onoff

供应商

可选

MINIO_IDENTITY_OPENID_VENDOR
identity_openid vendor

指定 OIDC 供应商以启用该供应商支持的特定行为。

支持以下值

  • keycloak

Keycloak 领域

可选

此设置要求 OpenID Vendor 设置定义为 keycloak

MINIO_IDENTITY_OPENID_KEYCLOAK_REALM
identity_openid keycloak_realm

指定用作 Keycloak 管理员 API 操作(例如 main)一部分的 Keycloak 领域。

Keycloak 管理员 URL

可选

此设置要求 OpenID Vendor 设置定义为 keycloak

MINIO_IDENTITY_OPENID_KEYCLOAK_ADMIN_URL
identity_openid keycloak_admin_url

指定 Keycloak 管理 API URL。如果 MinIO 配置为定期验证已认证的 Keycloak 用户是否有效/存在,则可以使用此 URL。例如,https://keycloak-endpoint:port/admin/

注释

可选

MINIO_IDENTITY_OPENID_COMMENT
identity_openid comment

指定与兼容 OIDC 的提供程序配置关联的注释。