gpt4 book ai didi

ruby-on-rails - Rails - 在对 OpenLDAP 服务器进行身份验证后确定组成员身份

转载 作者:行者123 更新时间:2023-12-04 03:40:37 25 4
gpt4 key购买 nike

我正在维护一个使用 Devise LDAP 进行身份验证的 Rails 应用程序。我正在从 Active Directory 迁移到 OpenLDAP,我已经用相同的结构设置了它。 OpenLdap 是使用 apt-getslapdldap-utils 在 Ubuntu Client 12.04 64 位安装上安装的。

我可以针对 OpenLdap 进行身份验证,但是当我调用时

Devise::LdapAdapter.get_ldap_entry(email)["memberOf"]

我返回一个空数组。在 Rails 控制台中,我可以看到返回的 ldap 条目没有“memberOf”条目。

当我从终端查询 ldap 服务器时,我收到以下输出:

ldapsearch -H ldapi:/// -x -b "cn=people,dc=example,dc=local" memberOf 

...

# fred fred, people, example.local
dn: cn=fred fred,cn=people,dc=example,dc=local
memberOf: cn=Authorisers,ou=example,dc=example,dc=local
...

有人知道为什么 ldapsearch 可能会向 Devise 返回不同的结果吗?有人知道如何返回 memberOf 属性吗?

提前致谢

与ldap认证相关的gem是(Bundle的输出)

Using devise (2.1.2) 
Using net-ldap (0.2.2)
Using devise_ldap_authenticatable (0.6.1)
Using activesupport (3.2.9)
Using activemodel (3.2.9)
Using sprockets (2.2.2)
Using mail (2.4.4)
Using activerecord (3.2.9)
Using activeresource (3.2.9)

最佳答案

a) 你有没有尝试使用

设计::LdapAdapter.get_groups(email)

b) 你看过/config/ldap.yml 了吗

那里有一些配置参数(如 required_groups、require_attribute、check_group_membership)。可能只是配置为忽略 memberOf

你可以看看它们是如何在here中使用的.

关于ruby-on-rails - Rails - 在对 OpenLDAP 服务器进行身份验证后确定组成员身份,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14347875/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com