Rails 5.1.4 и Devise Lockable не отображают сообщения об ошибках - PullRequest
0 голосов
/ 16 мая 2018

Я использую :lockable от Devise,

Проблема, с которой я сталкиваюсь, это две:

  1. Предупреждающее сообщение last_attempt никогда не отображается (я ожидаюсообщение "You have one more attempt before your account is locked.", которое по умолчанию находится в файле devise.en.yml)
  2. Мое приложение просто отображает флэш-сообщение "Invalid Username or password.", даже если пользователь уже заблокирован.Я ожидаю, что сообщение будет "Your account is locked.", которое находится в файле devise.en.yml как значение по умолчанию

Возможно, я что-то упустил, любая помощь приветствуется.Спасибо!


Ниже приведен мой фрагмент Gemfile:

gem 'devise'
gem "devise_ldap_authenticatable", git: "git://github.com/cschiewek/devise_ldap_authenticatable.git"
gem 'devise_security_extension', git: 'https://github.com/phatworx/devise_security_extension.git', branch: 'master'

Я использую devise_security_extension только для его модуля :session_limitable.

Вот моя модель пользователяФрагмент:

devise :ldap_authenticatable, :registerable, :session_limitable, :timeoutable, :lockable, :trackable, :validatable, authentication_keys: [:username]

А вот мой фрагмент конфигурации устройства:

config.lock_strategy = :failed_attempts
config.unlock_strategy = :none
config.maximum_attempts = 3
config.last_attempt_warning = true

Мой флеш-дисплей:

- flash.each do |key, value|
  - next if key == "timedout"
  %div{ class: flash_class(key) }
    %button.close{ "aria-hidden": "true", "data-dismiss": "alert", type: "button" } ×
    = value

rails v5.1.4
devise - v4.4.1
devise_ldap_authenticatable - v 0.8.6
devise_security_extension - v0.10.0


UPDATE
Может иметь какое-то отношение ксамо устройство LDAP: https://github.com/cschiewek/devise_ldap_authenticatable/issues/78
рассмотрит его подробнее

1 Ответ

0 голосов
/ 17 мая 2018

Поскольку в обсуждении от https://github.com/cschiewek/devise_ldap_authenticatable/issues/78 говорится, что об этом нужно говорить / подтверждать со стороны Active Directory, мне просто нужно будет реализовать собственную простую блокировку / разблокировку учетной записи.
Просто используйте столбец failed_attempts и обновите значение соответствующим образом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...