Bug #7548
closedCannot use UTF8 characters as a user's login, firstname or lastname
Description
Cloned from https://bugzilla.redhat.com/show_bug.cgi?id=1144162
Description of problem:
The server returns an HTTP 422 response when creating a user if UTF-8 characters are provided for that user's login, firstname or lastname. Note that other types of interesting characters are allowed, such as latin-1 and CJK.
Version-Release number of selected component (if applicable):
The following software is installed:
- apr-util-ldap-1.3.9-3.el6_0.1.x86_64
- candlepin-0.9.23-1.el6_5.noarch
- candlepin-common-1.0.1-1.el6_5.noarch
- candlepin-scl-1-5.el6_4.noarch
- candlepin-scl-quartz-2.1.5-5.el6_4.noarch
- candlepin-scl-rhino-1.7R3-1.el6_4.noarch
- candlepin-scl-runtime-1-5.el6_4.noarch
- candlepin-selinux-0.9.23-1.el6_5.noarch
- candlepin-tomcat6-0.9.23-1.el6_5.noarch
- elasticsearch-0.90.10-6.el6sat.noarch
- foreman-1.6.0.46-1.el6sat.noarch
- foreman-compute-1.6.0.46-1.el6sat.noarch
- foreman-gce-1.6.0.46-1.el6sat.noarch
- foreman-libvirt-1.6.0.46-1.el6sat.noarch
- foreman-ovirt-1.6.0.46-1.el6sat.noarch
- foreman-postgresql-1.6.0.46-1.el6sat.noarch
- foreman-proxy-1.6.0.30-1.el6sat.noarch
- foreman-selinux-1.6.0.14-1.el6sat.noarch
- foreman-vmware-1.6.0.46-1.el6sat.noarch
- katello-1.5.0-30.el6sat.noarch
- katello-certs-tools-1.5.6-1.el6sat.noarch
- katello-default-ca-1.0-1.noarch
- katello-installer-0.0.64-1.el6sat.noarch
- katello-server-ca-1.0-1.noarch
- openldap-2.4.23-32.el6_4.1.x86_64
- pulp-katello-0.3-4.el6sat.noarch
- pulp-nodes-common-2.4.1-0.7.beta.el6sat.noarch
- pulp-nodes-parent-2.4.1-0.7.beta.el6sat.noarch
- pulp-puppet-plugins-2.4.1-0.7.beta.el6sat.noarch
- pulp-puppet-tools-2.4.1-0.7.beta.el6sat.noarch
- pulp-rpm-plugins-2.4.1-0.7.beta.el6sat.noarch
- pulp-selinux-2.4.1-0.7.beta.el6sat.noarch
- pulp-server-2.4.1-0.7.beta.el6sat.noarch
- python-ldap-2.3.10-1.el6.x86_64
- ruby193-rubygem-net-ldap-0.3.1-3.el6sat.noarch
- ruby193-rubygem-runcible-1.1.0-2.el6sat.noarch
How reproducible:
Almost always.
Steps to Reproduce:
1. Create a user via the API. Provide any number of UTF-8 characters as a login, firstname or lastname.
Actual results:
HTTP 422 response with one of the following messages:
- First name is invalid
- Last name is invalid
- Surname is invalid
Expected results:
One of the following:
- A user is created.
- A helpful error message is returned.
Additional info:
Once in a while - say, once every 20 attempts - a user is sucessfully created even though UTF-8 chars are submitted.
Updated by Dominic Cleal over 10 years ago
- Category set to Authentication
- Assignee deleted (
Bryan Kearney)
Updated by Dominic Cleal over 10 years ago
- Related to Bug #5869: Accents etc should be permitted in user first and last names added
Updated by Dominic Cleal over 10 years ago
e.g. 惽相硹侘党店覂鸮歎弔紊儡螩訣僥熅烧匮叧儱罜苅钒嘤籾蘉輥龖鹯礿闒阝岙臟极愑媶莡蟣镎鹏篳孡湎輬萠秝勶蛟麢壝圵啖輼篍赡暙蘅蛂搋搴虇呪噈摩赧朜趃馸犎鐣砊锳壇变箸
Updated by Mathieu Parent about 10 years ago
Hi,
We have First name is invalid, which is only containing é.
OS: debian RELEASE: 7.7 FOREMAN: 1.6.1 RUBY: ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-linux] PUPPET: 3.6.2
Updated by Mathieu Parent about 10 years ago
NB: I have this error with an user coming from an ActiveDirectory LDAP (no use of the API).
Updated by Mathieu Parent about 10 years ago
My current workaround is:
--- /usr/share/foreman/app/models/user.rb.old 2014-11-27 17:35:58.000979970 +0100 +++ /usr/share/foreman/app/models/user.rb 2014-11-27 17:40:08.373381169 +0100 @@ -76,7 +76,8 @@ if RUBY_VERSION.start_with? '1.8' /\A[ёЁа-яА-Яa-zA-Zà-üÀ-Ü0-9\s'_\-\.()<>;=,]*\z/u else - /\A[[:alnum:]\s'_\-\.()<>;=,]*\z/ + #/\A[[:alnum:]\s'_\-\.()<>;=,]*\z/ + /\A.*\z/ end end
Updated by Dominic Cleal about 10 years ago
- Has duplicate Bug #8624: On-the-fly user creation not working if user's name contains umlauts. added
Updated by Dominic Cleal over 9 years ago
- Has duplicate Bug #11221: Login failure with unicode surname added
Updated by The Foreman Bot about 9 years ago
- Status changed from New to Ready For Testing
- Assignee set to Timo Goebel
- Pull request https://github.com/theforeman/foreman/pull/2952 added
Updated by Anonymous about 9 years ago
- Status changed from Ready For Testing to Closed
- % Done changed from 0 to 100
Applied in changeset f4aa6463dc217aa2739927997a51254988ad929f.
Updated by Dominic Cleal about 9 years ago
- Translation missing: en.field_release set to 104
Updated by Dominic Cleal almost 9 years ago
- Has duplicate Bug #13125: When using danish letters in users first or lastname in ldap, user cannot login. added
Updated by Anonymous almost 5 years ago
- Related to Bug #28600: Ruby 2.7 FrozenError with LDAP auth sources added