Provide an ABL API to manage OpenEdge database users

Status
Not open for further replies.
C

cverbiest

Guest
Our customers never access the OpenEdge database administration. Create, update, delete operations of users are handled by our application. Currently we manage database users by creating and deleting _user records directly in ABL code. With 11.x upgrade our password-update code failed with following error "_TenantId is a system field and its value cannot be updated. (16011)" (tech support case 00263361). As far as I know there is no documented API to manage user records. If there was such an API we could use that instead and our code would continue to work in future versions. Now it breaks whenever a system field is added . The API should have normal CRUD operations as well as a change password method that can be used by an administrator to reset another user's pasword. The API should also work if a higher version client (e.g. 11.3) connects to a lower version database (eg. 10.2B). This is another point of failure of our direct _user manipulation. Extra Technical info. Because a user cannnot change another user's pasword our current change pasword routine consists of cUserid = DBUSER._userid. buffer-copy DBUSER except _userid _password to DBNEWUSER. delete DBUSER. assign DBNEWUSER._userid = cUserid DBNEWUSER._password = encode(cPassWD). end..

Continue reading...
 
Status
Not open for further replies.
Top