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

Keycloak客户端映射器配置问题:如何转换邮箱为小写

Keycloak 邮箱地址转小写映射方案

方案一:Script Mapper(灵活可控,推荐)

  1. 进入目标客户端的专属Client Scope,点击「Mappers」→「Create」
  2. 选择「Script Mapper」类型
  3. 配置参数:
    • Name:自定义名称(如 Lowercase Email)
    • Script Type:选择 JavaScript
    • Script:输入以下代码,直接获取邮箱并转小写
      const email = user.getEmail();
      return email ? email.toLowerCase() : null;
      
    • Token Claim Name:填写 email 可覆盖原有邮箱字段,或填 lowercase_email 新增字段
    • Add to ID Token/Add to Access Token:根据需求勾选对应Token类型
  4. 保存即可生效

方案二:User Property Mapper + 表达式转换

  1. 进入Mappers创建页面,选择「User Property」类型
  2. 配置参数:
    • Name:自定义名称(如 Lowercase Email)
    • Property:填写 email
    • Token Claim Name:填写 email(或自定义字段名)
  3. 展开「Advanced」选项,在「Claim Value Transformer」中选择「Script Transformer」
  4. 输入转换脚本:
    value.toLowerCase()
    
  5. 保存后,该映射器会自动处理邮箱小写转换

注意事项

如果找不到Script Mapper选项,大概率是Keycloak默认禁用了脚本功能,需手动开启:

  • Quarkus版本(Keycloak 17+):在keycloak.conf中添加配置:spi-scripting-javascript-enabled=true
  • WildFly版本:在standalone.xml中找到<spi name="scripting">节点,设置<default-provider>javascript</default-provider>并确保启用

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 21:17:04