Active directory 如何配置WSO2 Identity Server以从第二个用户存储添加声明

Active directory 如何配置WSO2 Identity Server以从第二个用户存储添加声明,active-directory,ldap,wso2,wso2is,openldap,Active Directory,Ldap,Wso2,Wso2is,Openldap,目前,我们将WSO2IS与OpenLDAP用户存储一起使用,其中有一些具有自定义属性的用户。WSO2IS配置为将这些自定义属性作为OpenID连接令牌中的声明返回 现在我们想将我们的应用程序(包括WSO2IS/OpenLDAP)安装到一个拥有自己的Active Directory的新客户机上。此客户端希望其用户能够使用AD中存储的凭据登录,但不允许我们将自定义属性放入客户端的AD中 是否可以配置WSO2IS,以便通过Active Directory对用户进行身份验证,但生成的OpenID连接令牌

目前,我们将WSO2IS与OpenLDAP用户存储一起使用,其中有一些具有自定义属性的用户。WSO2IS配置为将这些自定义属性作为OpenID连接令牌中的声明返回

现在我们想将我们的应用程序(包括WSO2IS/OpenLDAP)安装到一个拥有自己的Active Directory的新客户机上。此客户端希望其用户能够使用AD中存储的凭据登录,但不允许我们将自定义属性放入客户端的AD中


是否可以配置WSO2IS,以便通过Active Directory对用户进行身份验证,但生成的OpenID连接令牌会从单独的OpenLDAP存储中获取声明?

不幸的是,这是不可能的。但您可以编写一个自定义用户存储[1]来完成此操作。您可以编写一个自定义用户存储来与AD一起使用,在那里,在用户身份验证之后,您可以从辅助用户存储检索声明


[1]

您知道在哪里可以找到org.wso2.carbon.user.core.ldap.ReadOnlyDapUserStoreManager和org.wso2.carbon.user.core.ldap.ActiveDirectoryLDAPUserStoreManager类的源代码,这样我就不会从头开始了?我在repository和我检查过的任何其他存储库中都找不到它(虽然有很多,所以我可能遗漏了一些东西),它们目前都在4.4.x分支中。谢谢!有了这一点,我们应该能够构建一些有效的东西。