@@ -227,56 +227,66 @@ def replicate(self, source, target, **options):
227
227
status , headers , data = self .resource .post_json ('_replicate' , data )
228
228
return data
229
229
230
- def register (self , name , password ):
231
- """Register regular user in authentication database.
230
+ def add_user (self , name , password , roles = None ):
231
+ """Add regular user in authentication database.
232
232
:param name: name of regular user, normally user id
233
233
:param password: password of regular user
234
+ :param roles: roles of regular user
234
235
:return: (id, rev) tuple of the registered user
235
236
:rtype: `tuple`
236
237
"""
237
238
user_db = self ['_users' ]
238
- doc = {'_id' : 'org.couchdb.user:' + name , 'name' : name , 'password' : password , 'roles' : [], 'type' : 'user' }
239
- return user_db .save (doc )
240
-
241
- def login (self , name , password ):
239
+ return user_db .save ({
240
+ '_id' : 'org.couchdb.user:' + name ,
241
+ 'name' : name ,
242
+ 'password' : password ,
243
+ 'roles' : roles or [],
244
+ 'type' : 'user' ,
245
+ })
246
+
247
+ def login_user (self , name , password ):
242
248
"""Login regular user in couch db
243
249
:param name: name of regular user, normally user id
244
250
:param password: password of regular user
245
251
:return: (status, token) tuple of the login user
246
252
:rtype: `tuple`
247
253
"""
248
- data = {'name' : name , 'password' : password }
249
- status , headers , data = self .resource .post_json ('_session' , data )
254
+ data = {
255
+ 'name' : name ,
256
+ 'password' : password ,
257
+ }
258
+ status , headers , _ = self .resource .post_json ('_session' , data )
250
259
if status != 200 :
251
260
return status , None
252
261
cookie = headers .headers [0 ].split (';' )[0 ]
253
262
pos = cookie .find ('=' )
254
- token = cookie [pos + 1 :]
255
- return status , token
263
+ return status , cookie [pos + 1 :]
256
264
257
- def logout (self , token ):
265
+ def logout_user (self , token ):
258
266
"""Logout regular user in couch db
259
267
:param token: token of login user
260
268
:return: True if successfully logout
261
269
:rtype: bool
262
270
"""
263
- header = {'Accept' : 'application/json' , 'Cookie' : 'AuthSession=' + token }
264
- status , headers , data = self .resource .delete_json ('_session' , headers = header )
265
- if status != 200 :
266
- return False
267
- return True
268
-
269
- def verify (self , token ):
271
+ header = {
272
+ 'Accept' : 'application/json' ,
273
+ 'Cookie' : 'AuthSession=' + token ,
274
+ }
275
+ status , _ , _ = self .resource .delete_json ('_session' , headers = header )
276
+ return status == 200
277
+
278
+ def verify_user (self , token ):
270
279
"""Verify whether token is ok
271
280
:param token: token of login user
272
281
:return: True if token is ok
273
282
:rtype: bool
274
283
"""
275
- header = {'Accept' : 'application/json' , 'Cookie' : 'AuthSession=' + token }
276
- status , headers , data = self .resource .get_json ('_session' , headers = header )
277
- if status != 200 :
278
- return False
279
- return True
284
+ header = {
285
+ 'Accept' : 'application/json' ,
286
+ 'Cookie' : 'AuthSession=' + token ,
287
+ }
288
+ status , _ , _ = self .resource .get_json ('_session' , headers = header )
289
+ return status == 200
280
290
281
291
282
292
class Database (object ):
0 commit comments