Omniauth-Ldap Ruby Недопустимые учетные данные

Я студент из Зальцбурга.
Я пытаюсь создать возможность входа в систему через ldap с помощью omnitauth-ldap, когда я ввожу имя пользователя и пароль, он перенаправляется на /auth/failure с message=invalid_credentials, и я не знаю, почему. Вход через Facebook, Twitter и BrowserID работает.

  • Рубиновая версия: 1.9.2
  • Omni-Auth-Версия: 1.0.1
  • Omniauth-Ldap-Версия: 1.0.2

omniauth.rb

Rails.application.config.middleware.use OmniAuth::Builder do
  provider :browser_id
  provider :facebook, '34234234234', '23423421234123412342134'
  provider :twitter, 'dfgsdfgsdfg', '2334sadfasdfasdf'
  provider :ldap, :title => 'FH-Authentifizierung',
  :host => 'denise.core.fh-salzburg.ac.at',
  :port => 636,
  :method => :plain,
  :base => 'o=fh-salzburg.ac.at,o=FHS',
  :uid => 'uid',
  :password => "password",
  :try_sasl => false,
  :bind_dn => "anonymous"
end

users_controller.rb

class UsersController < ApplicationController
  def create
    auth = request.env["omniauth.auth"]
    user = User.find_by_provider_and_uid(auth["provider"], auth["uid"]) || User.create_with_omniauth(auth)
    session[:user_id] = user.id
    redirect_to request.referer, :notice => "Herzlich Willkommen!"
  end

  def destroy
    session[:user_id] = nil
    redirect_to request.referer, :notice => "Du wurdest erfolgreich abgemeldet!"
  end
end

сервер-выход

Started POST "/auth/ldap/callback" for 127.0.0.1 at 2012-01-03 21:59:35 +0100
Started GET "/auth/failure?message=ldap_error" for 127.0.0.1 at 2012-01-03 21:59:35 +0100
Started GET "/auth/failure?message=invalid_credentials" for 127.0.0.1 at 2012-01-03 21:59:35 +0100
Started GET "/auth/failure?message=invalid_credentials" for 127.0.0.1 at 2012-01-03 21:59:35 +0100

person Enthusiasmus    schedule 03.01.2012    source источник


Ответы (1)


Если вы посмотрите на код omniauth-ldap вы увидите, что для аутентификации используются bind_dn и пароль, поэтому они должны быть действительными. Если вам нужен анонимный доступ, опустите эти два параметра или установите для параметра :allow_anonymous значение true.

person Rainer Blessing    schedule 26.02.2012