VOS::AccessControlList Class Reference
[libvos]
#include <vos/vos/acl.hh>
Inheritance diagram for VOS::AccessControlList:

Detailed Description
Class for managing an Access Control List (ACL).The access control list is a mapping from a specific set of policies to a specific set of identities and groups to which these policies should be applied.
Definition at line 19 of file acl.hh.
Public Member Functions
- AccessControlList (const std::string &policy)
- std::string getPolicyName () const
- VobjectIterator getMembers () const
- std::string getPolicy (const std::string &domain)
- void add (Identity *)
- void add (Group *)
- void remove (Identity *)
- void remove (Group *)
- bool hasIdentity (Identity *) const
- bool hasGroup (Group *) const
- bool hasGroupWith (Identity *id) const
Static Public Member Functions
- static std::string canonicalizeName (const std::string &policy)
- static std::string mapToString (const std::map< std::string, std::string > &policies)
- static void stringToMap (const std::string &aclname, std::map< std::string, std::string > &policies)
Constructor & Destructor Documentation
| VOS::AccessControlList::AccessControlList | ( | const std::string & | policy | ) |
Constructor.
- Parameters:
-
policy a comma-separated list of policies in the form "domain:policy" that identify this ACL
Member Function Documentation
| void VOS::AccessControlList::add | ( | Group * | ) |
Add a group to the list.
| void VOS::AccessControlList::add | ( | Identity * | ) |
Add an identity to the list.
| static std::string VOS::AccessControlList::canonicalizeName | ( | const std::string & | policy | ) | [static] |
Takes a comma-separated list of policies in the form "domain:policy" and sorts them, producing the "canonical" string representation.
| VobjectIterator VOS::AccessControlList::getMembers | ( | ) | const |
| std::string VOS::AccessControlList::getPolicy | ( | const std::string & | domain | ) |
Return the policy for a specific domain.
| std::string VOS::AccessControlList::getPolicyName | ( | ) | const |
- Returns:
- a comma-separated list of policies in the form "domain:policy" that identify this ACL
| bool VOS::AccessControlList::hasGroup | ( | Group * | ) | const |
- Returns:
- true if this group appears in this list
| bool VOS::AccessControlList::hasGroupWith | ( | Identity * | id | ) | const |
- Returns:
- true if this identity is a member of a group that is in this list
| bool VOS::AccessControlList::hasIdentity | ( | Identity * | ) | const |
- Returns:
- true if this identity appears in this list
| static std::string VOS::AccessControlList::mapToString | ( | const std::map< std::string, std::string > & | policies | ) | [static] |
| void VOS::AccessControlList::remove | ( | Group * | ) |
Remove a group from the list.
| void VOS::AccessControlList::remove | ( | Identity * | ) |
Remove an identity from the list.
| static void VOS::AccessControlList::stringToMap | ( | const std::string & | aclname, | |
| std::map< std::string, std::string > & | policies | |||
| ) | [static] |
The documentation for this class was generated from the following file:
- /home/tetron/hack/vos/libs/vos/vos/acl.hh