gpt4 book ai didi

ruby-on-rails - ldap 设备中的多个组可验证

转载 作者:行者123 更新时间:2023-12-04 06:07:58 25 4
gpt4 key购买 nike

我正在尝试允许 group1 或 group2 中的用户登录但在 LDAP 授权期间,它正在检查两个组。

如果用户存在于 group1 或 group2 中,我需要允许他们登录。

有人可以帮忙吗?

在设计中.rb

config.ldap_check_group_membership = true

在 ldap.yml 中

 authorizations: &AUTHORIZATIONS

group_base: ou=groups,dc=test,dc=com

required_groups:

cn=admins,ou=groups,dc=test,dc=com -----group1

cn=users,ou=groups,dc=test,dc=com ----- group2

require_attribute:

# objectClass: inetOrgPerson
# authorizationRole: postsAdmin

development:
host: # ip address is to be filled in here..
port: # port number goes here..
attribute: cn
base: # my tree base details go in here..
admin_user: cn=admin_name,dc=test,dc=com
admin_password: # password goes in here..
ssl: true
<<: *AUTHORIZATIONS

最佳答案

/devise_ldap_authenticatable-0.8.3/lib/devise_ldap_authenticatable/ldap/connection.rb

def in_required_groups?
return true unless @check_group_membership

## FIXME set errors here, the ldap.yml isn't set properly.
return false if @required_groups.nil?

arr_res = []
for group in @required_groups
if group.is_a?(Array)
res = in_group?(group[1],group[0])
arr_res << res
# return false unless in_group?(group[1], group[0])
else
return false unless in_group?(group)
end
end
DeviseLdapAuthenticatable::Logger.send(arr_res)
return true if arr_res.include? true
# return true
end

关于ruby-on-rails - ldap 设备中的多个组可验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30346805/

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