LDAP support broken if UTF8 characters in DN (python2)
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Identity (keystone) |
In Progress
|
Undecided
|
Rafal | ||
ldappool |
In Progress
|
Undecided
|
Rafal |
Bug Description
Bug is probably related with this one:
https:/
https:/
On keystone 14.1.0 (Rocky) it trows exception when there are UTF-8 encoded characters on users's DN. We're using openldap. In our schema DN is cn=first_name last_name,
It looks like bug can be fixed by following change:
--- a/keystone/
+++ b/keystone/
@@ -177,7 +177,7 @@ def convert_
except UnicodeDecodeError:
- py_result.
+ py_result.
if at_least_
Changed in ldappool: | |
assignee: | nobody → Rafal (rafal-ramocki-b) |
And exception:
2020-02-10 10:39:49.948 18007 ERROR keystone. common. wsgi Traceback (most recent call last): common. wsgi File "/usr/lib/ python2. 7/site- packages/ keystone/ common/ wsgi.py" , line 148, in __call__ common. wsgi result = method(req, **params) common. wsgi File "/usr/lib/ python2. 7/site- packages/ keystone/ auth/controller s.py", line 102, in authenticate_ for_token common. wsgi app_cred_ id=app_ cred_id, parent_ audit_id= token_audit_ id) common. wsgi File "/usr/lib/ python2. 7/site- packages/ keystone/ common/ manager. py", line 116, in wrapped common. wsgi __ret_val = __f(*args, **kwargs) common. wsgi File "/usr/lib/ python2. 7/site- packages/ keystone/ token/provider. py", line 252, in issue_token common. wsgi token.mint( token_id, issued_at) common. wsgi File "/usr/lib/ python2. 7/site- packages/ keystone/ models/ token_model. py", line 533, in mint common. wsgi self._validate_ domain_ scope() common. wsgi File "/usr/lib/ python2. 7/site- packages/ keystone/ models/ token_model. py", line 478, in _validate_ domain_ scope common. wsgi if self.domain_scoped and not self.roles: common. wsgi File "/usr/lib/ python2. 7/site- packages/ keystone/ models/ token_model. py", line 418, in roles common. wsgi roles = self._get_ domain_ roles() common. wsgi File "/usr/lib/ python2. 7/site- packages/ keystone/ models/ token_model. py", line 373, in _get_domain_roles common. wsgi self.user_id, self.domain_id common. wsgi File "/usr/lib/ python2. 7/site- packages/ keystone/ common/ manager. py", line 116, in wrapped common. wsgi __ret_val = __f(*args, **kwargs) common. wsgi File "/usr/lib/ python2. 7/site- packages/ dogpile/ cache/region. py", line 1220, in decorate common. wsgi should_cache_fn) common. wsgi File "/usr/lib/ python2. 7/site- packages/ dogpile/ cache/region. py", line 825, in get_or_create common. wsgi async_creator) as value: common. wsgi File "/usr/lib/ python2. 7/site- packages/ dogpile/ lock.py" , line 154, in __enter__ common. wsgi return self._enter() common. wsgi File "/usr/lib/ python2. 7/site- packages/ dogpile/ lock.py" , line 94, in _enter
2020-02-10 10:39:49.948 18007 ERROR keystone.
2020-02-10 10:39:49.948 18007 ERROR keystone.
2020-02-10 10:39:49.948 18007 ERROR keystone.
2020-02-10 10:39:49.948 18007 ERROR keystone.
2020-02-10 10:39:49.948 18007 ERROR keystone.
2020-02-10 10:39:49.948 18007 ERROR keystone.
2020-02-10 10:39:49.948 18007 ERROR keystone.
2020-02-10 10:39:49.948 18007 ERROR keystone.
2020-02-10 10:39:49.948 18007 ERROR keystone.
2020-02-10 10:39:49.948 18007 ERROR keystone.
2020-02-10 10:39:49.948 18007 ERROR keystone.
2020-02-10 10:39:49.948 18007 ERROR keystone.
2020-02-10 10:39:49.948 18007 ERROR keystone.
2020-02-10 10:39:49.948 18007 ERROR keystone.
2020-02-10 10:39:49.948 18007 ERROR keystone.
2020-02-10 10:39:49.948 18007 ERROR keystone.
2020-02-10 10:39:49.948 18007 ERROR keystone.
2020-02-10 10:39:49.948 18007 ERROR keystone.
2020-02-10 10:39:49.948 18007 ERROR keystone.
2020-02-10 10:39:49.948 18007 ERROR keystone.
2020-02-10 10:39:49.948 18007 ERROR keystone.
2020-02-10 10:39:49.948 18007 ERROR keystone.
2020-02-10 10:39:49.948 18007 ERROR keystone.
2020-02-10 10:39:49.948 18007 ERROR keystone.
2020-02-10 10:39:49.948 18007 ERROR keystone.
2020-02-10 10:39:4...