7 log
= logging
.getLogger(__name__
)
11 def __init__(self
, controller
, user_info
):
12 self
.controller
= controller
13 self
._user
_info
= user_info
17 return tag
.user(self
.username
)
21 return self
._user
_info
.username
24 def display_name(self
):
25 return self
._user
_info
.display_name
28 def last_connection(self
):
29 return pyrfc3339
.parse(self
._user
_info
.last_connection
)
33 return self
._user
_info
.access
36 def date_created(self
):
37 return self
._user
_info
.date_created
41 return not self
._user
_info
.disabled
45 return self
._user
_info
.disabled
49 return self
._user
_info
.created_by
51 async def set_password(self
, password
):
52 """Update this user's password.
54 await self
.controller
.change_user_password(self
.username
, password
)
55 self
._user
_info
.password
= password
57 async def grant(self
, acl
='login'):
58 """Set access level of this user on the controller.
60 :param str acl: Access control ('login', 'add-model', or 'superuser')
62 if await self
.controller
.grant(self
.username
, acl
):
63 self
._user
_info
.access
= acl
65 async def revoke(self
):
66 """Removes all access rights for this user from the controller.
68 await self
.controller
.revoke(self
.username
)
69 self
._user
_info
.access
= ''
71 async def disable(self
):
74 await self
.controller
.disable_user(self
.username
)
75 self
._user
_info
.disabled
= True
77 async def enable(self
):
78 """Re-enable this user.
80 await self
.controller
.enable_user(self
.username
)
81 self
._user
_info
.disabled
= False