跳到主内容

LDAP 服务器

许多系统,如Nexus,支持LDAP认证。 Casdoor也实现了一个简单的LDAP服务器,支持绑定和搜索操作。

本文档描述了如何连接到Casdoor中的LDAP服务器并实现简单的登录认证。

LDAP 服务器端口号

LDAP服务器默认监听389端口。 您可以通过修改conf/app.conf中的ldapServerPort值来更改默认端口。

工作原理

与Casdoor中的LDAP客户端类似,LDAP服务器中的用户都是posixAccount的子类。

当服务器接收到LDAP传输的一组数据时,它将解析cnou,其中cn代表用户名,ou代表组织名称。 dc并不重要。

如果是绑定操作,服务器将使用Casdoor来验证用户名和密码,并在Casdoor中授予用户权限。

如果是搜索操作,服务器将根据绑定操作授予客户端的权限,检查搜索操作是否合法,并返回响应。

信息

我们只支持简单认证

如何绑定

在Casdoor LDAP服务器中,我们只认可类似于这种格式的DNcn=admin,ou=built-in,dc=example,dc=com

请将管理员用户的DN设置为上述格式。 然后,您可以使用这个DN和用户的密码绑定到LDAP服务器,以登录到Casdoor进行验证。 如果服务器验证成功,用户将在Casdoor中被授予权限。

如何搜索

一旦绑定操作成功完成,您就可以进行搜索操作。 搜索和绑定操作之间存在一些差异。

  • 要搜索某个用户,例如built-in组织下的Alice,您应该使用类似于这样的DNou=built-in,dc=example,dc=com,并在过滤器字段中添加cn=Alice
  • 要搜索某个组织下的所有用户,例如built-in中的所有用户,您应该使用类似于这样的DNou=built-in,dc=example,dc=com,并在过滤器字段中添加cn=*
  • 要搜索所有组织中的所有用户(假设用户有足够的权限),您应该使用类似于这样的DNou=*,dc=example,dc=com,并在过滤器字段中添加cn=*
  • To search for all users in a specific group, you should use a filter query like this: (memberOf=organization_name/group_name) in the Filter field.