---
outline: deep
---
# 配置OIDC认证

修改 `config.yaml` 文件的内容来配置 OIDC（OpenID Connect）认证。OIDC 是建立在 OAuth 2.0 协议之上的认证层，允许应用程序通过授权服务器执行的认证来验证用户的身份。这种方法广泛用于实现现代应用程序的单点登录。

## 配置详细信息

以下是在 `config.yaml` 中配置 OIDC 设置的逐步指南：

```yaml
oauth2:
  type: oidc  # （必填）指定认证类型为 OIDC
  oidcDisplayName: OIDC  # （可选，默认值为 OIDC）登录页面显示的名称
  admin: ""  # （至少填写 admin 或 adminGroups 中的一个；默认为空）管理员用户名，用逗号分隔。列在此处的用户被视为管理员
  adminGroups: ""  # （至少填写 admin 或 adminGroups 中的一个；默认为空）管理员组，用逗号分隔。属于这些组的用户被视为管理员。如果不使用组管理，可以省略此项
  clientid: # （必填）OIDC 客户端 ID
  clientsecret: # （必填）OIDC 客户端密钥
  oidcIssuer: https://auth.example.com/realms/master  # （必填）OIDC 提供商的 issuer URL，可以从您的OIDC 提供商处获取
  # oidcLogoutUrl: https://auth.example.com/realms/master/protocol/openid-connect/logout  # （因 bug 目前不能使用）
  # oidcRegisterUrl: # （可选）OIDC 提供商的注册链接
  oidcScopes: openid,profile,email  # （可选，默认值为 openid,profile,email ）OIDC 请求的 scope，用逗号分隔
  oidcLoginClaim: sub  # （可选，默认值为 sub）OIDC 返回的用户名字段，可以是 preferred_username、sub 或email
  oidcGroupsClaim: groups  # （如果使用 adminGroups，则必填，默认值为 groups ）OIDC 返回的用户组信息字段，可以是 groups 或 roles
  oidcAutoCreate: false  # （可选，默认值为 false）如果用户不存在，是否自动创建用户
  oidcAutoLogin: false  # （可选，默认值为 false）当地址是 /login 时，是否自动跳转到OIDC登录页面
```