1

我正在尝试使用 LDAP 和 Devise 登录,但由于某种原因它不起作用。

在我的 LDAP 文件中,我只有:

host: xxxxxxxx
port: 389
attribute: uid
base: ou=Students, dc=xxx, dc=xx, dc=xx
ssl: false

我的模型被称为用户。

Devise 自己提出的查询是...是否正常?

SELECT "users".* FROM "users" WHERE "users"."username" = 'xxxx' LIMIT 1

我真的找不到这方面的文档。能否请你帮忙?

4

1 回答 1

2

对于像我一样对 LDAP 感到困惑的人,答案是:是的,这很正常

也许我应该提到我在原始问题中谈论的是devise_ldap_authenticable gem。我的错。

在该config/initializers/devise.rb文件中,您将找到 and 的配置文件devisedevise_ldap_authenticatable其中将有一行类似于:

config.ldap_create_user = false (by default)

如果将其更改为 true,那么只要成功登录,它将在本地数据库中创建一个用户。这就是为什么第一篇文章中的 SQL 语句存在的原因,它只是查看用户是否已保存。奇怪的是,即使ldap_create_user选项为假,它也会执行并显示语句。

于 2013-02-22T23:59:44.523 回答