EXAoperation xmlrpc api function editUser broken
Details
| Detail name | Value |
|---|---|
| Changelog Number | 8732 |
| Type | Bug |
| Status | Resolved |
| Affected Versions | Exasol 6.1.0, Exasol 6.2.0 |
| Fix Versions | Exasol 6.2.3, Exasol 6.1.8 |
| Resolution Date | 2019-09-25 |
Background
Users can use function editUser in xmlrpc api as well as on EXAoperation Web UI to change user properties, such as title, description etc.
Problem
EXAoperation function editUser cleans up user details/properties, when called as xmlrpc api function (eg. from python shell).
For example:
In [3]: x.getAllUsers()
Out[3]:
[{'description': 'The administrator of cluster.',
'id': '0',
'ldap_fulldn': '',
'ldap_server': '',
'login': 'admin',
'title': 'Administrator'},
{'description': 'user_description',
'id': '1',
'ldap_fulldn': '',
'ldap_server': '',
'login': 'user',
'title': 'user_title'}]
In [4]: x.getUserByName('user')
Out[4]:
{'description': 'user_description',
'id': '1',
'ldap_basedn': '',
'ldap_server': '',
'login': 'user',
'title': 'user_title'}
In [5]: x.editUser('user', {'description':'update desc'})
In [6]: x.getAllUsers()
Out[6]:
[{'description': 'The administrator of cluster.',
'id': '0',
'ldap_fulldn': '',
'ldap_server': '',
'login': 'admin',
'title': 'Administrator'},
{'description': '',
'id': '1',
'ldap_fulldn': '',
'ldap_server': '',
'login': '',
'title': ''}]
Workaround
Avoid using xmlrpc api function editUser to modify user properties; instead use the WebUI which is not affected.