2

gem「devise_ldap_authenticatable」でユーザーパスワードをリセットしようとしましたが、うまくいきませんでした。

実行しようとしたコマンドは.

 Devise::LdapAdapter.update_password(login, new_password)

しかし、うまくいきませんでした。

残念ながら、バインドしようとすると、古いパスワードが nil であるため、そのユーザーをパスワード nil でバインドしようとします。また、管理者ユーザーの資格情報でバインドしようとしましたが、管理者ユーザーがログインしています。パスワードは更新されません。

その権限を持つ管理者ユーザーとして「old_password」を使用せずに、ユーザー LDAP アカウントのパスワードをリセットするにはどうすればよいでしょうか?

より良い解決策を知っている場合は、共有してください!

4

2 に答える 2

3

'replace' の変更タイプ、パスワード属性の属性タイプ、および新しいパスワード値を使用して、サーバーに変更要求を送信します。変更要求を実行する接続の許可状態には、パスワード属性へのアクセス権またはパスワードのリセット権が必要です。

于 2013-05-03T21:19:42.020 に答える
0

「iconv」に依存したくない場合:

unicodepwd = "\"#{plain_text_password}\"".encode(Encoding::UTF_16LE).
  force_encoding(Encoding::ASCII_8BIT)
于 2015-08-25T09:00:16.283 に答える