59 password = attrs.get('password') |
59 password = attrs.get('password') |
60 manager = get_utility(IPasswordManager, name='SSHA') |
60 manager = get_utility(IPasswordManager, name='SSHA') |
61 if login == self.login and manager.checkPassword(self._password, password): |
61 if login == self.login and manager.checkPassword(self._password, password): |
62 return "{0}:{1}".format(self.prefix, login) |
62 return "{0}:{1}".format(self.prefix, login) |
63 |
63 |
64 def get_principal(self, principal_id): |
64 def get_principal(self, principal_id, info=True): |
65 if not self.enabled: |
65 if not self.enabled: |
66 return None |
66 return None |
67 if not principal_id.startswith(self.prefix + ':'): |
67 if not principal_id.startswith(self.prefix + ':'): |
68 return None |
68 return None |
69 prefix, login = principal_id.split(':', 1) |
69 prefix, login = principal_id.split(':', 1) |
70 if (prefix == self.prefix) and (login == self.login): |
70 if (prefix == self.prefix) and (login == self.login): |
71 return PrincipalInfo(id=principal_id, |
71 if info: |
72 title=self.title) |
72 return PrincipalInfo(id=principal_id, |
|
73 title=self.title) |
|
74 else: |
|
75 return self |
73 |
76 |
74 def get_all_principals(self, principal_id): |
77 def get_all_principals(self, principal_id): |
75 if not self.enabled: |
78 if not self.enabled: |
76 return set() |
79 return set() |
77 if self.get_principal(principal_id) is not None: |
80 if self.get_principal(principal_id) is not None: |