summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorLV-426 <lv-426@taproot.org.il>2015-02-04 02:05:30 +0200
committerLV-426 <lv-426@taproot.org.il>2015-02-04 02:05:30 +0200
commit65da07db081c4192407d3fa7a1899e81d0c171ad (patch)
tree2579e99946518f3af01a0ee67bd3790152f9945b /src
parent8ab6e90689679224c631c117ddc6de2b71f18cb9 (diff)
User_DB: handle user passwords
Diffstat (limited to 'src')
-rw-r--r--src/server/rz_user_db.py17
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):