diff options
| author | LV-426 <lv-426@taproot.org.il> | 2015-02-04 02:05:30 +0200 |
|---|---|---|
| committer | LV-426 <lv-426@taproot.org.il> | 2015-02-04 02:05:30 +0200 |
| commit | 65da07db081c4192407d3fa7a1899e81d0c171ad (patch) | |
| tree | 2579e99946518f3af01a0ee67bd3790152f9945b /src/server | |
| parent | 8ab6e90689679224c631c117ddc6de2b71f18cb9 (diff) | |
User_DB: handle user passwords
Diffstat (limited to 'src/server')
| -rw-r--r-- | src/server/rz_user_db.py | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/src/server/rz_user_db.py b/src/server/rz_user_db.py index 36062278..ebca5465 100644 --- a/src/server/rz_user_db.py +++ b/src/server/rz_user_db.py @@ -10,12 +10,14 @@ class User_Account(object): last_name, rz_username, email_address, + pw_hash, role_set=[]): self.first_name = first_name self.last_name = last_name self.rz_username = rz_username self.email_address = email_address + self.pw_hash = pw_hash self.role_set = role_set class User_DB(object): @@ -24,6 +26,7 @@ class User_DB(object): - caller is responsible for calling init() & shutdown() - users identified by string uid - unique user email_address constraint enforced + - handle user password authentication """ def __init__(self, db_path): @@ -93,23 +96,19 @@ class User_DB(object): uid, u = self.__lookup_user__by_email_address(email_address) return self.__process_return_value(uid, u) - def user_add(self, first_name, last_name, rz_username, email_address): + def user_add(self, u_account): """ @return: the string uid of the newly added user """ # apply unique email constraint for uid, u in self.persistent_data_store.items(): - if u.email_address == email_address: + if u.email_address == u_account.email_address: raise Exception('existing user with identical email address: uid: %s ' % (uid)) - uid = str(len(self.persistent_data_store) + 1) - u = User_Account(first_name=first_name, - last_name=last_name, - rz_username=rz_username, - email_address=email_address, - role_set=[]) + assert None != u_account.pw_hash, 'missing pw_hash for new user' - self.persistent_data_store[uid] = u + uid = str(len(self.persistent_data_store) + 1) + self.persistent_data_store[uid] = u_account return uid def user_rm(self, uid): |
