使用LDAP进行Apache Derby

时间:2012-08-05 16:28:37

标签: java derby

我很高兴听到其他人分享我的问题,也许还有解决方案。

我正在使用Apache Derby数据库,它涉及到我的数据库用户使用LDAP。

当我使用'ij'工具时,一切都应该如此。如果LDAP知道其名称和密码,则用户只能使用该数据库。

但是,当我在纯Java中使用相同的代码时,即使使用了错误的密码,也会接受用户。也就是说,使用LDAP检查名称,但似乎忽略了密码。

Java程序编译运行,因此PATH和CLASSPATH的设置似乎没有问题。

有什么想法吗?

谢谢,

Ron Wates。

1 个答案:

答案 0 :(得分:1)

可能是因为defaultConnectionMode对每个人都是fullAccess。在创建数据库并将其连接到第一次后,可以以编程方式在数据库级别设置这些属性。首次连接到数据库后您应该设置所有其他必需的属性ex Derby.database.defaultConnectionMode=noAccess Derby.connection.requireAuthentication=true Derby.database.userderby.authentication.provider=LDAP和其他ldap属性。

这些属性将在重新启动数据库后生效。

请参阅此处提供的链接 https://stackoverflow.com/a/9518516/1282907

这是你要找的那个 http://db.apache.org/derby/docs/10.6/devguide/rdevcsecureclientexample.html