使用Java查询Active Directory以查找可用的CIFS共享

时间:2012-12-03 12:20:20

标签: java active-directory ldap cifs jcifs

以下是该方案:

我有几个CIFS分区,基于AD的用户可以安装这些分区并用于访问他们的文件等。

现在我们需要通过基于Java的Web应用程序向用户公开。理想情况下,当用户登录时;他/她应该能够看到他有权访问的所有CIFS个分区。这意味着该Java应用程序应该能够通过LDAP等查询Active Directory服务器,以识别哪些CIFS分区可用以及相应的ACLs

所以问题是:

  1. 我们可以使用LDAP(Java-based library)查询AD以找出哪个 用户可以访问哪些CIFS份?
  2. 还有其他方法可以从Java应用程序中执行此操作吗?

1 个答案:

答案 0 :(得分:1)

没有内置方法可以将CIFS分区或其各自的ACL发布到AD。所以你需要自己发布它。基本上有两种选择:

  1. 在AD中发布。这需要extending the schema,即创建具有两个属性(路径和用户)的cIFSPartition类。然后,您必须找到可以执行LDAP查询的Java库(我在这里看到了很多关于Spring LDAP的问题)。您可能需要创建一个网页来帮助创建和管理这些cIFSPartition对象。

  2. 将其存储在网络服务器上。这里有很多选项,比如文本文件或数据库。这样,您就不必担心LDAP。