cubicweb/misc/migration/3.15.4_Any.py
author Philippe Pepiot <philippe.pepiot@logilab.fr>
Tue, 25 Feb 2020 22:45:42 +0100
branch3.27
changeset 12894 ba528f08ddfa
parent 11057 0b59724cb3f2
permissions -rw-r--r--
[ldapfeed] use LDAP_SCOPES to find user-scope We already have LDAP_SCOPES dict defining possible scopes, this avoid possible code injection from config... Thus we can drop global variables already defined in LDAP_SCOPES since they are not used directly anymore.

from __future__ import print_function

from logilab.common.shellutils import generate_password
from cubicweb.server.utils import crypt_password

for user in rql('CWUser U WHERE U cw_source S, S name "system", U upassword P, U login L').entities():
    salt = user.upassword.getvalue()
    if crypt_password('', salt) == salt:
        passwd = generate_password()
        print('setting random password for user %s' % user.login)
        user.set_attributes(upassword=passwd)

commit()