active-directory - Keycloak:将用户从一个用户联盟迁移到另一个用户联盟

标签 active-directory ldap keycloak keycloak-services

我们有一个使用 Keycloak 的应用程序(当前版本为 4.8.3.Final - 计划升级到 11) 今天我们连接了ActiveDirectory,因此用户可以通过LDAP身份验证访问该软件。 现在我们想要更改 ActiveDirectory 并希望保留用户,但将它们从当前的用户联合切换到新的用户联合。

这可能吗?如果是的话我该怎么做? (我在文档中没有找到)

最佳答案

据我所知,这是不可能的,因为当您使用来自外部用户联合(即事件目录)的用户执行登录时,凭据的身份验证(即检查是否用户名/密码匹配)是在用户联合端完成的,而不是在 Keycloak 中完成的,这意味着 Keycloak 不会存储所有用户信息(例如,用户凭证)。

来自Keycloak Documentation本身:

By default, Keycloak will import users from LDAP into the local Keycloak user database. This copy of the user is either synchronized on demand, or through a periodic background task. The single exception to this is the synchronization of passwords. Passwords are never imported. Their validation is always delegated to the LDAP server. The benefits of this approach is that all Keycloak features will work as any extra per-user data that is needed can be stored locally. The downside of this approach is that each time that a specific user is queried for the first time, a corresponding Keycloak database insert is performed.

据此可以推断,人们将无法:

Now we want to change the ActiveDirectory and would like to keep the users, but switching them from the current User Federation to the new one.

此外,从 IMO 的设计角度来看,此类功能不应由 IDP 负责。

关于active-directory - Keycloak:将用户从一个用户联盟迁移到另一个用户联盟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67092479/

相关文章:

azure - 如何从使用 Azure AD 作为身份验证提供程序的应用程序无缝登录 Salesforce

javascript - React App 的 Active Directory 插件出现 CORS 错误

ldap - Shibboleth SP 无法解析 Shibboleth IDP 发送的属性

java - Nexus 和 LDAP - 针对 OpenLDAP 服务器验证用户时的 JNDI 问题

c# - Windows 与 VCE 上的 LDAP 绑定(bind)

security - 使用 oauth2 客户端凭据防止中间人攻击

c# - 集中应用程序之间的身份验证代码

c# - 指定的域不存在或无法联系

certificate - 如何将证书(crt文件)导入keycloak?

使用 Spring Security 和 Keycloak 进行 Spring Websockets 身份验证