7 log
= logging
.getLogger(__name__
)
11 def __init__(self
, controller
, user_info
, secret_key
=None):
12 self
.controller
= controller
13 self
._user
_info
= user_info
14 self
._secret
_key
= secret_key
18 return tag
.user(self
.username
)
22 return self
._user
_info
.username
25 def display_name(self
):
26 return self
._user
_info
.display_name
29 def last_connection(self
):
30 return pyrfc3339
.parse(self
._user
_info
.last_connection
)
34 return self
._user
_info
.access
37 def date_created(self
):
38 return self
._user
_info
.date_created
42 return not self
._user
_info
.disabled
46 return self
._user
_info
.disabled
50 return self
._user
_info
.created_by
54 return self
._secret
_key
56 async def set_password(self
, password
):
57 """Update this user's password.
59 await self
.controller
.change_user_password(self
.username
, password
)
60 self
._user
_info
.password
= password
62 async def grant(self
, acl
='login'):
63 """Set access level of this user on the controller.
65 :param str acl: Access control ('login', 'add-model', or 'superuser')
67 if await self
.controller
.grant(self
.username
, acl
):
68 self
._user
_info
.access
= acl
70 async def revoke(self
):
71 """Removes all access rights for this user from the controller.
73 await self
.controller
.revoke(self
.username
)
74 self
._user
_info
.access
= ''
76 async def disable(self
):
79 await self
.controller
.disable_user(self
.username
)
80 self
._user
_info
.disabled
= True
82 async def enable(self
):
83 """Re-enable this user.
85 await self
.controller
.enable_user(self
.username
)
86 self
._user
_info
.disabled
= False