我正在开发一个项目,需要ldap验证。但是,我没有开发人员/ qa ldap服务器。
是否存在用于测试/开发的Windows的小型ldap服务器?。
我只想测试验证活动帐户并检测它是否被阻止,所以我不想安装整个域来执行此操作。
---没关系---
我尝试了编译的openldap,但我无法理解它。简单地说,我没有得到如何连接它,如何创建一个帐户以及如何验证,客户端ldap给我一些混淆的错误信息,我尝试了几种方法来做到最后我放弃了。
最后,我安装了一个域,安装起来很荒谬(2008 r2),重启服务器就是这样。
无论如何,感谢opendlap和aldps的建议
答案 0 :(得分:8)
如果您使用的是Windows并使用Active Directory,请查看Active Directory Lightweight Directory Services(AD LDS) - 您可以在开发计算机上安装和使用的LDAP服务器。
答案 1 :(得分:4)
OpenLDAP的开源LDAP服务器应该能满足您的需求:
答案 2 :(得分:3)
Active Directory可以作为LDAP服务器使用,并且包含在Windows Server 2008试用版中。查看我的问题Testing LDAP Connections to Active Directory Server的答案。我让它在Linux上的KVM虚拟机中运行,并从基于OpenLDAP的客户端进行查询。
答案 3 :(得分:2)
Apache提供名为“ApacheDS”(Apache Directory Server)的目录服务器,它提供了一个名为“Apache Directory Studio”的GUI管理客户端,它基于Eclipse。
如果您只想进行测试,这个工作室为您的测试提供内置服务器,便于链接。
您还可以使用此更新站点直接在Eclipse中安装工作室:http://directory.apache.org/studio/update/2.x/
答案 4 :(得分:2)
Necromancing。
我有同样的问题。
OpenDS非常容易启动和运行,并且不需要管理员权限。
您只需下载ZIP文件并运行安装程序即可。
安装程序也可以使用测试条目填充目录 - 如果您想查看一些示例数据
想要一个简单的开发测试服务器,这正是您正在寻找的东西。
注意:
OpenDS开发已经抓住了,并被分为OpenDJ,这是一个由forgerock开发的商业项目。
虽然OpenDS仍适用于Java7,但只有OpenDJ才能与Java8一起使用。
但是,OpenDJ仍然是免费和 OpenSource 。
您可以在Bitbucket找到源代码
你可以用git抓住它:
忘记OpenLDAP和AD-LDS;这些对于简单的测试来说太复杂了
此外,他们的用户界面非常糟糕,您需要一些可以启动并运行 FAST ,没有管理员权限的内容,并在几分钟内填充测试数据,而不是几周内。
不幸的是,ApacheDS将需要管理员权限(因为它仅用作Windows服务,并且您无需管理员即可启动/停止这些权限)。
所以OpenDJ是明确的方式。
Apache Directory Studio是一个很好的客户端,可通过LDAP(LDIF)浏览,编辑和导入/导出数据。
但是,尽管Apache Directory Studio是用Java编写的,但它增加了对gtk的依赖性,并且只有x86 / x64的二进制文件,这意味着它不能使用带有ARM处理器的Chromebook或RaspberrryPI。
但是在OpenDJ / OpenDS中自动添加测试条目(如果您选择该选项),您甚至不需要。
如有疑问,请使用基于Web的界面,该界面与LDAP"进行对话。
答案 5 :(得分:1)
OpenLDAP的。适用于大多数Unix和Linux。对于Windows,它可以从几个来源获得:
答案 6 :(得分:1)
尝试OpenDS它非常简单,只需要Java。
答案 7 :(得分:1)
您可以使用godap https://github.com/bradleypeabody/godap
轻松地滚动自己的LDAP服务器进行测试用Go写的。它非常小而且简单。
你基本上需要从godap_test.go中复制服务器示例并根据需要连接它。
答案 8 :(得分:0)
我知道回答这个问题还很晚。但是供遇到相同问题的人参考。
我编写了一个简单ldap服务器(在nodejs上使用ldapjs)进行身份验证测试。请随时使用它。易于配置。可以同时支持 LDAP / LDAPS 协议,只需要一个包含您要添加的用户ID的json文件(或者它附带一个预先包含的用户json文件,您可以根据需要使用该文件)。 该项目在github上。 (我也将添加一个docker镜像) 随时访问和使用
答案 9 :(得分:0)
您可以将带有Samba的Docker容器用作域控制器,here我将展示如何在短短的几分钟内完成设置
基本上您需要
$ git clone https://github.com/padiazg/alpine-samba-ad-container.git
$ cd alpine-samba-ad-container
# replace your-user with your username
$ docker build -t your-user/alpine-samba-ad-container .
mkdir /tmp/krb-conf
&& mkdir /tmp/krb-data
&& mkdir /tmp/smb-conf
&& modir /tmp/smb-data
&& touch /tmp/krb-conf/krb5.conf
docker run -d \
-e SAMBA_ADMIN_PASSWORD=a-secure-password \
-e SAMBA_DOMAIN=local \
-e SAMBA_REALM=local.your-domain.io \
-e LDAP_ALLOW_INSECURE=true \
--mount type=bind,source=/tmp/krb-conf/krb5.conf,target=/etc/krb5.conf \
--mount type=bind,source=/tmp/krb-data,target=/var/lib/krb5kdc \
--mount type=bind,source=/tmp/smb-conf,target=/etc/samba \
--mount type=bind,source=/tmp/smb-data,target=/var/lib/samba \
-p 389:389 \
--name smb4ad \
your-user/alpine-samba-ad-container
现在你很好走