问题标签 [apache-directory]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
azure - 无法连接到 Azure Active Directory 安全 Ldap
我有一个应用程序可以让用户使用 LDAP 进行身份验证。为了测试它,我想将它部署在云虚拟机上并将其连接到 Azure Active Directory 实例。
- 在 Azure 中创建虚拟网络。
- 在 Azure 中创建一个 Active Directory。
- 激活为此目录启用域服务选项。
- 上传 *.mydomainname.onmicrosoft.com 的自签名证书设置。
- 激活通过互联网启用安全 LDAP 访问。
此时我想我应该能够使用 Azure 中提供的 IP 作为 LDAPS 访问的外部 IP 地址连接到 Ldap 服务器。不幸的是,我尝试使用 Apache Directory Studio 连接它失败了。
我应该采取哪些额外步骤?
ldap - LDAP 身份验证与应用程序身份验证
我们有一个 liferay 应用程序,其中用户首先在目录服务器上注册,并在 liferay 端导入/创建后批准。需要考虑哪些注意事项/场景来选择使用 LDAP restful web 服务对用户进行身份验证或导入它们和通过应用程序内部机制对它们进行身份验证?
java - ApacheDS 中 inetOrgPerson 对象的成员属性
我使用 ApacheDS 作为 LDAP 服务器。我需要一些组来管理不同应用程序的权限。例如,一个名为“jira-users”的组可以登录到 jira。所以我需要一个可以存储用户成员组的属性。我正在使用名为 inetOrgPerson 的 objectClass,它似乎适合存储用户。
从我过去工作的 Active Directory 中,我记得一个名为memberOf的属性。似乎这是特定于 AD 的,因为 inetOrgPerson 类有一个名为member的属性。根据文档,它的作用相同:存储用户所属的组。但是当我尝试将此添加到 inetOrgPerson 对象时,我在 Apache Directory studio 中收到以下错误:
警告!根据方案,该属性是不允许的!您还想继续使用它吗?
当我尝试按yes时,出现以下异常:
Fehler beim Ausführen des LDIF - [LDAP:错误代码 65 - OBJECT_CLASS_VIOLATION:MessageType 失败:MODIFY_REQUES java.lang.Exception:[LDAP:错误代码 65 - OBJECT_CLASS_VIOLATION:MessageType 失败:MODIFY_REQUEST 消息 ID:262 修改请求对象:'cn =Testuser,ou=user,dc=example,dc=com' 修改[0] 操作:添加修改成员:cn=Testgruppe,ou=user,dc=example,dc=comorg.apache.directory.api.ldap.model .message.ModifyRequestImpl@868031e2:ERR_277 属性成员未在 org.apache.directory.studio.connection.core.io.api.DirectoryApiConnectionWrapper 的条目 cn=Testuser,ou=user,dc=example,dc=com] 的 objectClasses 中声明.checkResponse(DirectoryApiConnectionWrapper.java:1268) 在 org.apache.directory.studio.connection.core。io.api.DirectoryApiConnectionWrapper.access$9(DirectoryApiConnectionWrapper.java:1236) 在 org.apache.directory.studio.connection.core.io.api.DirectoryApiConnectionWrapper$4.run(DirectoryApiConnectionWrapper.java:716) 在 org.apache.directory。 studio.connection.core.io.api.DirectoryApiConnectionWrapper.runAndMonitor(DirectoryApiConnectionWrapper.java:1163) at org.apache.directory.studio.connection.core.io.api.DirectoryApiConnectionWrapper.checkConnectionAndRunAndMonitor(DirectoryApiConnectionWrapper.java:1099) at org. apache.directory.studio.connection.core.io.api.DirectoryApiConnectionWrapper.modifyEntry(DirectoryApiConnectionWrapper.java:738) at org.apache.directory.studio.ldapbrowser.core.jobs.ImportLdifRunnable.importLdifRecord(ImportLdifRunnable.java:515) org.apache.directory.studio.ldapbrowser.core.jobs。ImportLdifRunnable.importLdif(ImportLdifRunnable.java:272) 在 org.apache.directory.studio.ldapbrowser.core.jobs.ExecuteLdifRunnable.executeLdif(ExecuteLdifRunnable.java:157) 在 org.apache.directory.studio.ldapbrowser.core.jobs。在 org.apache.directory.studio.ldapbrowser.core.jobs.UpdateEntryRunnable.run(UpdateEntryRunnable.java:59) 在 org.apache.directory.studio.connection.ui.RunnableContextRunner 执行 ExecuteLdifRunnable.run(ExecuteLdifRunnable.java:123)$1 .run(RunnableContextRunner.java:116) 在 org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:119)在 org.apache.directory.studio.ldapbrowser.core.jobs.UpdateEntryRunnable.run(UpdateEntryRunnable.java:59) 在 org.apache.directory.studio.connection.ui.RunnableContextRunner 执行 ExecuteLdifRunnable.run(ExecuteLdifRunnable.java:123)$1 .run(RunnableContextRunner.java:116) 在 org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:119)在 org.apache.directory.studio.ldapbrowser.core.jobs.UpdateEntryRunnable.run(UpdateEntryRunnable.java:59) 在 org.apache.directory.studio.connection.ui.RunnableContextRunner 执行 ExecuteLdifRunnable.run(ExecuteLdifRunnable.java:123)$1 .run(RunnableContextRunner.java:116) 在 org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:119)
[LDAP:错误代码 65 - OBJECT_CLASS_VIOLATION:MessageType 失败:MODIFY_REQUEST 消息 ID:262 修改请求对象:'cn=Testuser,ou=user,dc=example,dc=com' 修改 [0] 操作:添加修改成员:cn =Testgruppe,ou=user,dc=example,dc=comorg.apache.directory.api.ldap.model.message.ModifyRequestImpl@868031e2: ERR_277 属性成员未在条目 cn=Testuser,ou=user,dc= 的 objectClasses 中声明例如,dc=com]
我尝试像这里描述的那样添加它http://morenews.blogspot.de/2010/12/adding-active-directory-properties-to.html与 ldapadd。这没有给我任何错误,当我查看 ou=schema,cn=other,ou=objectClasses 时,我看到了我插入的值。但是当我创建一个新的 inetOrgPerson 时,就没有可能使用它了!我做错了什么?
apacheds - Apache Directory Studio - 现有的 LDAP 服务器
我不知道这是否是问这个问题的正确地方,但我希望它是。让我知道我是否应该将其发布到其他地方..
几年前,我为 Apache DS 编写了一个自定义分区。我们有一个使用该分区运行的 Apache LDAP 服务器。我没有对 进行任何更改ou=config
:它是一个完全独立的分区,它按照最初创建的方式运行。
我们一直在运行一个简单的 LDAP 服务器。我们现在需要允许通过 LDAPS 进行访问。为了做到这一点,看起来我需要更新ou=config
. 所以这是我的问题:是否可以通过“LDAP 服务器”选项卡在 Directory Studio 中的现有 LDAP 服务器中编辑配置(如果那里不再列出)?看来我只能在那里创建一个新服务器。
谢谢,
java - Apache Directory Studio java 已启动但返回退出代码=13
我必须安装Apache Directory Studio。
为此,我执行以下步骤
下载 ApacheDirectoryStudio-win32-x86-2.0.0.v20130628.exe
双击 ApacheDirectoryStudio-win32-x86-2.0.0.v20130628.exe 并执行下一步,而不是要求 Java 主目录
我浏览并在 Java 主目录上提供路径 C:\Program Files\Java\jdk1.8.0_60\ 并作为默认配置执行后续步骤
完成安装 Apache Directory Studio 后,当我尝试打开 Apache Directory Studio 时出现以下错误
我正在使用 Java 1.8 和 Windows 10。
ldap - -Err_04149 在 ldap 搜索中不是有效的转义值
我正在使用 Apache directory studio 来查看 LDAP 树结构。在那,我正在做基本的搜索操作,通过下面的搜索过滤器显示所有 sAMAccountNames
\\2a
当我通过(现在我的搜索是(sAMAccountName = \\2a)
)转义特殊字符并执行返回错误的搜索时,此搜索成功返回所有具有 sAMAccountName 的对象"Error while performing search -Err_04149 not a valid escape value"
。我希望找到零结果消息,但出现错误。
(sAMAccountName = \\2a)
不是 Ldap 中的有效搜索?
apache-directory - 如何将 Apache Directory Server 设置为端口 389 而不是 10389
我有一台安装了 Apache Directory Server 的服务器。我可以在 10389 上使用 Apache 目录工作室进行连接。现在我想连接 389 而不是 10389。我进入(作为 sudo)/var/lib/apacheds-2.0.0_M23/default/conf/ou\=config/ads-directoryserviceid\=default/ou\=servers/ads-serverid\=ldapserver/ou\=transports/ads-transportid\=ldap.ldif
并设置ads-systemPort
为
ads-systemPort: 389
但是,现在当我跑步时,我看到...
java.io.IOException:绑定/0.0.0.0:389 原始消息时出错:权限被拒绝
将其更改回 10389 效果很好。我很困惑,因为我使用的是 sudo,这应该避免权限问题。我究竟做错了什么?
java - 是 ldif 还是搜索过滤器?
我正在编写独立的 java 程序,我将输入和输出文件作为命令行参数传递。输入文件包含有效的 LDAP 搜索过滤器或 LDIF。
我正在使用 Apache Directory LDAP API,但我没有找到任何可以用来区分两者的东西(filter|ldif)。我也没有在网上找到任何有用的例子。
我区分两者的最佳方法是什么?
任何想法或例子表示赞赏。
谢谢你。
java - 如何使用 Apache Directory Server 和 Client Java API 实现身份验证
我正在尝试构建一个应用程序,其中用户和组将在 Apache Directory Server 及其客户端 API 中进行管理。
这是应用程序启动时针对服务器执行的 ldif 文件的示例:
dn: o=koosserydesk
objectclass: extensibleObject
objectclass: top
objectclass: domain
dc: koosserydesk
o: koosserydesk
dn: ou=desks,o=koosserydesk
objectClass: organizationalUnit
objectClass: top
ou: desks
dn: ou=users,o=koosserydesk
objectClass: organizationalUnit
objectClass: top
ou: users
dn: cn=John Milton,ou=users,o=koosserydesk
objectClass: organizationalPerson
objectClass: person
objectClass: inetOrgPerson
objectClass: top
cn: John Milton
sn: jmilton
uid: jmilton
userPassword:: e1NIQTUxMn1lQThmcUQzOVgva2xxSm1jOGlZK2JoWitUVFhzWElFRmZHeWJ1b
我想让 John Milton 在输入相应的 uid/userPassword 时被识别为我的应用程序的经过身份验证的用户。就像是:
Boolean authenticate(String uid){
//should i use connection.bind("uid="+uid, userPassword);??
return something;
}
请注意,John Milton 针对 ApacheDS 进行身份验证(用于对条目进行操作)对我来说并不是最重要的。我只想让 ApacheDs 充当我的用户的数据库,即获取我的用户的 uid,检查密码,如果匹配返回 true,则返回 false。
可能这不是我应该尝试处理的方式,但我对 Ldap 协议和周围的东西很陌生,所以不要怀疑我的问题是否有点奇怪!
等待提案!