gpt4 book ai didi

java - 在 JSP 中访问 JNDIRealm?

转载 作者:行者123 更新时间:2023-11-28 23:22:19 26 4
gpt4 key购买 nike

我在tomcats server.xml中配置了一个JNDIRealm

    <Realm className="org.apache.catalina.realm.JNDIRealm"
connectionURL="ldaps://xxx"
alternateURL="ldaps://xxx"
userBase="xxx"
userSearch="SamAccountName={0}"
userSubtree="true"
roleBase="xxx"
roleName="CN"
roleSearch="(member={0})"
connectionName="xxx"
connectionPassword="xxx"
/>

我想在一些 JSP 文件中执行进一步的 ldap 查询(比如获取用户的电子邮件,或完整的用户名)

如何从 JSP 文件访问这个领域?

基本上我想要一个 LdapContext,我可以将其用于我现有的 ldap 查询代码。

最佳答案

不幸的是,不,您将无法进行任何直接的 LDAP 查询。

但这并不是因为 LDAPRealm 不可用,而是因为您不能使用 LDAPRealm 发出任意 LDAP 查询。您可以使用 JMX 获取 LDAPRealm,但您只能调用该对象上公开的方法。

如果您想发出任意 LDAP 查询,则必须以其他方式配置 LDAP 资源。

据我所知,没有什么比 DataSource 既可以在领域中使用(如使用 DataSourceRealm),也可以直接用于 LDAP服务器。您必须使用 Tomcat 开箱即用的方式以外的方式联系 LDAP 服务器。

如果您仍然想使用 JNDI 来获取 LDAP 连接,您可以查看这个 SO 问题和答案:Trying to configure LDAP as JNDI Resource in Tomcat

关于java - 在 JSP 中访问 JNDIRealm?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41871612/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com