OIDC 认证接入

配置 OIDC (OpenID Connect) 认证,支持对接各类身份提供商。

支持的 OIDC 提供商

WLN.WIKI 支持对接以下 OIDC 身份提供商:

  • Keycloak
  • Authentik
  • Okta
  • Azure AD
  • GitLab
  • 其他标准 OIDC 提供商

OIDC 配置参数说明

参数 说明
Discovery URL OIDC 发现端点 URL
Client ID OIDC 客户端 ID
Client Secret OIDC 客户端密钥
Scope 请求的权限范围,默认 openid profile email

配置 WLN.WIKI

步骤一:在 OIDC 提供商创建应用

以 Keycloak 为例:

  1. 登录 Keycloak 管理控制台
  2. 选择对应的 Realm
  3. 创建新的 Client
  4. 设置 Client Protocol 为 openid-connect
  5. 设置 Redirect URI 为:https://your-wiki-domain/complete/oidc/
  6. 记录 Client ID 和 Client Secret

步骤二:在 WLN.WIKI 配置 OIDC

  1. 登录 WLN.WIKI 管理员账户
  2. 进入【站点管理】->【第三方登录】
  3. 找到「OIDC 认证」配置项
  4. 填写以下信息:
    • Discovery URL:如 https://keycloak.example.com/realms/myrealm/.well-known/openid-configuration
    • Client ID
    • Client Secret
    • Scope(默认 openid profile email)
  5. 开启「启用 OIDC 认证」开关
  6. 点击保存
OIDC 配置截图

OIDC 配置截图

Keycloak 配置示例

Discovery URL:https://keycloak.example.com/realms/myrealm/.well-known/openid-configuration
Client ID:wln-wiki
Client Secret:your-client-secret
Scope:openid profile email

Azure AD 配置示例

Discovery URL:https://login.microsoftonline.com/{tenant-id}/v2.0/.well-known/openid-configuration
Client ID:your-app-id
Client Secret:your-client-secret
Scope:openid profile email

Discovery URL 通常位于 /.well-known/openid-configuration 路径下,OIDC 提供商会自动发现其他端点信息。

用户属性映射

OIDC 登录后会自动获取用户信息:

  • 用户名:preferred_username 或 sub
  • 邮箱:email
  • 姓名:name

常见问题

Discovery URL 无效

确认 URL 格式正确,可以直接访问该 URL 验证是否能返回 JSON 配置信息。

回调失败

检查 OIDC 提供商中配置的 Redirect URI 是否正确。