You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将Moodle与Keycloak对接以实现Keycloak账号登录Moodle

已有很多开发者成功完成Keycloak与Moodle的对接,二者通过标准OIDC协议即可实现单点登录,以下是可复现的完整操作流程:

操作前准备
  • 确保你的Moodle版本≥3.10,默认已集成OIDC认证插件,不需要额外安装第三方扩展
  • 确保你的Keycloak实例可以被Moodle服务器正常访问,同时用户浏览器可以同时访问Moodle和Keycloak的域名
  • 提前准备好Keycloak的管理员权限、Moodle的站点管理员权限
第一步:Keycloak端配置

1.1 创建客户端

  • 登录Keycloak管理员控制台,进入你要使用的Realm,点击客户端→创建客户端
  • 客户端类型选择OpenID Connect,客户端ID填写你自定义的标识比如moodle-oidc,点击下一步
  • 开启客户端认证选项,其他默认保持开启,点击下一步
  • 有效重定向URI填写https://你的Moodle域名/auth/oidc/,注意末尾的斜杠不能省略,Web origins可以填写+允许所有来源,点击保存

1.2 配置客户端映射

  • 进入刚创建的moodle客户端,点击客户端作用域→moodle-oidc-dedicated→配置新的映射→By Configuration
  • 选择用户属性,分别添加以下映射:
    • 名称:email,用户属性:email,令牌声明名称:email,勾选添加到ID令牌、添加到访问令牌,保存
    • 名称:given_name,用户属性:firstName,令牌声明名称:given_name,同上勾选保存
    • 名称:family_name,用户属性:lastName,令牌声明名称:family_name,同上勾选保存
    • 名称:preferred_username,用户属性:username,令牌声明名称:preferred_username,同上勾选保存
  • 回到客户端凭据页,复制生成的客户端密钥,后续Moodle配置需要用到
第二步:Moodle端配置

2.1 开启OIDC认证插件

  • 登录Moodle站点管理,点击网站管理→插件→认证→管理认证
  • 找到OpenID Connect插件,点击启用按钮(眼睛图标)

2.2 配置OIDC插件参数

  • 点击OIDC插件右侧的设置按钮,进入配置页
  • 提供商选择自定义,填写以下参数:
    • 认证端点URL:https://你的Keycloak域名/realms/你的Realm名称/protocol/openid-connect/auth
    • 令牌端点URL:https://你的Keycloak域名/realms/你的Realm名称/protocol/openid-connect/token
    • 用户信息端点URL:https://你的Keycloak域名/realms/你的Realm名称/protocol/openid-connect/userinfo
    • 客户端ID:填写你刚才在Keycloak创建的客户端ID,比如moodle-oidc
    • 客户端密钥:粘贴刚才在Keycloak客户端凭据页复制的密钥
  • 其他参数保持默认即可,点击保存更改

2.3 配置用户字段映射

  • 同样在OIDC插件配置页,找到字段映射板块
  • 配置对应关系:
    • 用户名映射到preferred_username
    • 邮箱映射到email
    • 名映射到given_name
    • 姓映射到family_name
  • 勾选自动创建用户选项,这样首次登录的Keycloak用户会自动在Moodle创建对应账号,不需要手动预注册
  • 保存配置后即可测试登录
常见问题排查
  • 重定向URI错误:检查Keycloak客户端配置的重定向URI是否完全匹配Moodle的回调地址,不要漏末尾的斜杠,注意http/https协议是否一致
  • 用户信息获取失败:检查Keycloak的客户端映射是否正确,是否已经把用户属性添加到ID/访问令牌中
  • 首次登录提示权限不足:检查Keycloak对应的Realm是否允许用户登录,客户端是否开启了访问权限

内容的提问来源于stack exchange,提问作者asingk

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 14:06:04