我会问是否有可能? 在LDAP中,我有2个属性。我想将它们同步到密钥斗篷中。但不是1:1。 我的目标是基于两个LDAP属性计算Keycloak中的“运行中”新属性。 有人可以提示我一些可能的解决方案吗?
答案 0 :(得分:0)
您可以使用脚本映射器进行操作。 在客户端作用域的领域级别,然后是脚本映射器或客户端级别的脚本映射器。
下面是一个随机示例,请尝试试验您的用例
/**
* Available variables:
* user - the current user
* realm - the current realm
* token - the current token
* userSession - the current userSession
* keycloakSession - the current userSession
*/
function addAttribute(){
var userDN = user.getAttribute("LDAP_ENTRY_DN")[0];
if(userDN.lastIndexOf('ou=Employee') > -1 && token.otherClaims.groups.indexOf('Finance')){
return 'FinanceEmployee';
}
return 'NotAFinanceEmployee';
}
addAttribute();