On Tuesday, September 5, 2017 at 5:40:01 AM UTC-7, Nicolas MARTIN wrote:
>
> Hello Trac users,
>
>
> Few months ago, we moved in our project from HTTP to HTML authentication
> with AccountManager. No particular issue since then except a warning in
> the log "Trac[web_ui] WARNING: ResetPwStore is disabled, therefore
> password reset won't work." but with no evident effect ('ResetPwStore'
> was still enabled under 'Plugins' and the password reset procedure was
> working).
>
> But recently several users got the following error at the login page
> with the temporary password received by email, when they tried to set
> their own password after the account creation:
>
> Traceback (most recent call last):
> File "/usr/lib/python2.7/site-packages/trac/web/api.py", line 514, in
> send_error
> data, 'text/html')
> File "/usr/lib/python2.7/site-packages/trac/web/chrome.py", line 968,
> in render_template
> message = Markup(req.session.pop('chrome.%s.%d'
> File "/usr/lib/python2.7/site-packages/trac/web/api.py", line 316, in
> __getattr__
> value = self.callbacks[name](self)
> File "/usr/lib/python2.7/site-packages/trac/web/main.py", line 268, in
> _get_session
> return Session(self.env, req)
> File "/usr/lib/python2.7/site-packages/trac/web/session.py", line 200,
> in __init__
> if req.authname == 'anonymous':
> File "/usr/lib/python2.7/site-packages/trac/web/api.py", line 316, in
> __getattr__
> value = self.callbacks[name](self)
> File "/usr/lib/python2.7/site-packages/trac/web/main.py", line 135, in
> authenticate
> authname = authenticator.authenticate(req)
> File "build/bdist.linux-x86_64/egg/acct_mgr/util.py", line 81, in wrap
> return func(self, *args, **kwds)
> File "build/bdist.linux-x86_64/egg/acct_mgr/web_ui.py", line 451, in
> authenticate
> username = self._remote_user(req)
> File "build/bdist.linux-x86_64/egg/acct_mgr/web_ui.py", line 766, in
> _remote_user
> if acctmgr.check_password(username, password) is True:
> File "build/bdist.linux-x86_64/egg/acct_mgr/api.py", line 287, in
> check_password
> valid = store.check_password(user, password)
> File "build/bdist.linux-x86_64/egg/acct_mgr/htfile.py", line 69, in
> check_password
> return self._check_userline(user, password, line)
> File "build/bdist.linux-x86_64/egg/acct_mgr/htfile.py", line 207, in
> _check_userline
> return suffix == htpasswd(password, suffix)
> File "build/bdist.linux-x86_64/egg/acct_mgr/pwhash.py", line 140, in
> htpasswd
> available."""))
> NotImplementedError: Neither are "sha2" hash algorithms supported by the
> "crypt" module on this platform nor is "passlib"
> available.
>
> The tricky thing is that at the same time other users did not encounter
> this issue and were able to complete the procedure, I received few email
> notifications of password reset since the first feedback of the problem.
>
> This occurred during my vacations and at first glance I does not have to
> blame my colleagues of a change in the plugin configuration.
> Regarding the plugin version, we use the very last revision of the trunk
> branch (r16720) on our Trac 1.0.1 installation.
>
> Here is an extract of trac.ini
>
> [account-manager]
> htpasswd_file = ../auth/trac.passwd
> htpasswd_hash_type = sha512
> login_attempt_max_count = 3
> notify_actions = new,change,delete
> password_store = HtPasswdStore
> refresh_passwd = true
> user_lock_time = 3600
> username_regexp = (?i)^[a-z0-9]{5,}$
>
> ...
>
> [components]
> acct_mgr.admin.useradminpanel = disabled
> acct_mgr.db.sessionstore = disabled
> acct_mgr.htfile.htdigeststore = disabled
> acct_mgr.http.* = disabled
> acct_mgr.register.* = disabled
> acct_mgr.svnserve.svnservepasswordstore = disabled
> trac.web.auth.loginmodule = disabled
> tracopt.ticket.commit_updater.* = enabled
> tracopt.ticket.deleter.ticketdeleter = disabled
> tracopt.versioncontrol.svn.svn_fs.subversionconnector = enabled
> xmail.xmailmainview.xmailmainview = enabled
> xmail.xmailpermissions.xmailpermission = enabled
>
>
> I was able to reproduce the bug by myself with my personal account, then
> I installed passlib module and finally add 'ResetPwStore' to
> 'password_store' option (remove the warning in the Trac log) but the
> issue remains...
>
>
>
> Regards,
> Nicolas
>
Try adding:
[account-manager]
hash_method = HtPasswdHashMethod
What Linux distro are you running?
What does the following yield on your system?
>>> from passlib.apps import custom_app_context as passlib_ctxt
>>> passlib_ctxt.policy.schemes()
['sha512_crypt', 'sha256_crypt']
- Ryan
--
You received this message because you are subscribed to the Google Groups "Trac
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/trac-users.
For more options, visit https://groups.google.com/d/optout.