src/pyams_security/utility.py
changeset 55 5713898178f3
parent 42 07229ac2497b
child 66 f76e2610d4d9
equal deleted inserted replaced
54:59683c264d94 55:5713898178f3
   176                 continue
   176                 continue
   177             else:
   177             else:
   178                 if principal is not None:
   178                 if principal is not None:
   179                     return principal
   179                     return principal
   180         return MissingPrincipal(id=principal_id)
   180         return MissingPrincipal(id=principal_id)
       
   181 
       
   182     def get_all_principals(self, principal_id):
       
   183         principals = set()
       
   184         if principal_id:
       
   185             for plugin in self.get_directory_plugins():
       
   186                 principals.update(plugin.get_all_principals(principal_id))
       
   187         return principals
   181 
   188 
   182     def find_principals(self, query):
   189     def find_principals(self, query):
   183         principals = set()
   190         principals = set()
   184         for plugin in self.get_directory_plugins():
   191         for plugin in self.get_directory_plugins():
   185             try:
   192             try:
   270             principals.add(Authenticated)
   277             principals.add(Authenticated)
   271             principals.add(principal_id)
   278             principals.add(principal_id)
   272             manager = self._get_security_manager(request)
   279             manager = self._get_security_manager(request)
   273             if manager is not None:
   280             if manager is not None:
   274                 principals |= set(manager.effective_principals(principal_id))
   281                 principals |= set(manager.effective_principals(principal_id))
   275         logger.debug('principals = {0}'.format(str(principals)))
   282         logger.debug('principals = {0}'.format(str(sorted(principals))))
   276         return principals
   283         return principals
   277 
   284 
   278     def remember(self, request, principal, **kw):
   285     def remember(self, request, principal, **kw):
   279         return self.cookie.remember(request, principal, **kw)
   286         return self.cookie.remember(request, principal, **kw)
   280 
   287