Purpose:
This class represents and implements datastore ACL functions, for example privileges, privilege sets, and ACL.
Class summary:
class DKEXPORT DKACLMgmtFed : public dkAuthorizationMgmt { public: DKACLMgmtFed(); DKACLMgmtFed(dkDatastore* ds); DKACLMgmtFed(dkDatastore ds, int accessLevel); virtual ~DKACLMgmtFed(); virtual void add(dkAccessControlList* aclObj); virtual void add(dkPrivilege* privObj); virtual void add(dkPrivilegeGroup* privGroupObj); virtual void add(dkPrivilegeSet* privSetObj); void addACLRule(long aclCode, const char* userId, short patronType, long privSetCode); void addDomainACL(const char* domainName, const char** aclNames,long count); void addDomainPrivilegeSet(const char* domainName, const char** privSetNames,long count); virtual void clearCache(); virtual dkAccessControlList* createAccessControlList(); virtual dkPrivilege* createPrivilege(); virtual dkPrivilegeGroup* createPrivilegeGroup(); virtual dkPrivilegeSet* createPrivilegeSet(); virtual void del(dkAccessControlList* acl); virtual void del(dkPrivilege* priv); virtual void del(dkPrivilegeGroup* privGroup); virtual void del(dkPrivilegeSet* privSet); void deleteACLRule(long aclCode, const char* userId); dkAccessControlList* getAccessControlList(const char* name); //Deprecated virtual dkCollection* getAccessControlLists(); //Deprecated virtual DKString* getACLNames(long& arraySize); dkPrivilege* getPrivilege(const char* name); dkPrivilegeGroup* getPrivilegeGroup(const char* name); dkPrivilegeSet* getPrivilegeSet(const char* name); //Deprecated virtual DKString* getPrivilegeSetNames(long& arraySize); //Deprecated virtual dkCollection* getPrivilegeSets(); virtual DKBoolean isAuthorized (int privId, const char* ACLName, const char* usrGrpName, short usrGrpType); virtual DKBoolean isAuthorized (int privId, dkPrivilegeSet* privSet); DKBoolean* isAuthorized (char** accessControlListNames, long arrSize, char* privilegeName); //Deprecated DKBoolean isCacheEnabled(); DKBoolean isTraceEnabled(); DKString* listAccessControlListNames(const char* domainName,long& arraySize); virtual DKString* listAccessControlListNames(long& arraySize); virtual dkCollection* listAccessControlLists(); dkCollection* listAccessControlLists(const char* domainName); dkCollection* listACLData(long id); dkCollection* listACLData(const char* name); dkCollection* listGeneralPrivileges(); virtual DKString* listPrivilegeGroupNames(long& arraySize); virtual dkCollection* listPrivilegeGroups(); virtual DKString* listPrivilegeNames(long& arraySize); virtual dkCollection* listPrivileges(); DKString* listPrivilegeSetNames(const char* domainName,long& arraySize); virtual DKString* listPrivilegeSetNames(long& arraySize); virtual dkCollection* listPrivilegeSets(); dkCollection* listPrivilegeSets(const char* domainName); dkCollection* listPrivInGroup(long id); dkCollection* listPrivInGroup(const char* name); dkCollection* listPrivInSet(long id); dkCollection* listPrivInSet(const char* name); void removeDomainACL(const char* domainName, const char** aclNames,long count); void removeDomainPrivilegeSet(const char* domainName, const char** privSetNames,long count); //Deprecated virtual void removeAccessControlList (const char* aclName); //Deprecated virtual void removePrivilegeSet (const char* privName); dkAccessControlList* retrieveAccessControlList(long id); virtual dkAccessControlList* retrieveAccessControlList(const char* name); dkPrivilege* retrievePrivilege(long id); virtual dkPrivilege* retrievePrivilege(const char* name); dkPrivilegeGroup* retrievePrivilegeGroup(long id); virtual dkPrivilegeGroup* retrievePrivilegeGroup(const char* name); dkPrivilegeSet* retrievePrivilegeSet(long id); virtual dkPrivilegeSet* retrievePrivilegeSet(const char* name); dkPrivilegeSet* retrieveUserGroupPrivilegeSet(const char* userGroupId); dkPrivilegeSet* retrieveUserPrivilegeSet(const char* userId); void setAccessLevel(int accessLevel); //Deprecated void setCacheEnabled(DKBoolean isEnabled); void setTraceEnabled(DKBoolean isEnabled); virtual void update(dkAccessControlList* acl); virtual void update(dkPrivilege* priv); virtual void update(dkPrivilegeGroup* acl); virtual void update(dkPrivilegeSet* privSet); void updateACLRule(long aclCode, const char* userId, short patronType, long privSetCode); };
Members:
DKACLMgmtFed(); DKACLMgmtFed (dkDatastore* ds); //Deprecated DKACLMgmtFed(dkDatastore ds, int accessLevel); virtual ~DKACLMgmtFed ();
virtual void add(dkPrivilegeGroup* privGroupObj); virtual void add(dkPrivilege* privObj); virtual void add(dkPrivilegeSet* privSetObj); virtual void add(dkAccessControlList* aclObj);
void addACLRule(long aclCode,const char* userId, short patronType, long privSetCode);
void addDomainACL(const char* domainName, const char** aclNames,long count);
void addDomainPrivilegeSet(const char* domainName, const char** privSetNames,long count);
virtual void clearCache();
dkAccessControlList* createAccessControlList();
dkPrivilege* createPrivilege();
dkPrivilegeGroup* createPrivilegeGroup();
virtual void del(dkPrivilegeGroup* privGroupObj); virtual void del(dkPrivilege* privObj); virtual void del(dkPrivilegeSet* privSetObj); virtual void del(dkAccessControlList* aclObj);
void deleteACLRule(long aclCode,const char* userId);
dkAccessControlList* getAccessControlList(const char* name);
virtual dkCollection* getAccessControlLists();
virtual DKString* getACLNames(long& arraySize);
dkPrivilege* getPrivilege(const char* name);
dkPrivilegeGroup* getPrivilegeGroup(const char* name);
dkPrivilegeSet* getPrivilegeSet(const char* name);
virtual DKString* getPrivilegeSetNames(long& arraySize);
virtual dkCollection* getPrivilegeSets();
virtual DKBoolean isAuthorized (int privId, const char* ACLName, const char* usrGrpName, short usrGrpType);
virtual DKBoolean isAuthorized(int privId, dkPrivilegeSet* privObj);
DKBoolean* isAuthorized (char** aclnames, long numOfACLs, char* privilegeName);
DKBoolean isCacheEnabled();
DKBoolean isTraceEnabled();
DKString* listAccessControlListNames(const char* domainName,long& arraySize);
virtual DKString* listAccessControlListNames(long& arraySize);
dkCollection* listAccessControlLists(const char* domainName);
virtual dkCollection* listAccessControlLists();
dkCollection* listACLData(const char* name); dkCollection* listACLData(long id);
dkCollection* listGeneralPrivileges();
virtual DKString* listPrivilegeGroupNames(long& arraySize);
virtual dkCollection* listPrivilegeGroups();
virtual DKString* listPrivilegeNames(long& arraySize);
virtual dkCollection* listPrivileges();
virtual DKString* listPrivilegeSetNames(long& arraySize);
virtual dkCollection* listPrivilegeSets();
dkCollection* listPrivInGroup(const char* name); dkCollection* listPrivInGroup(long id);
dkCollection* listPrivInSet(const char* name); dkCollection* listPrivInSet(long id);
void removeDomainACL(const char* domainName, const char** aclNames,long count);
void removeDomainPrivilegeSet(const char* domainName, const char** privSetNames,long count);
virtual void removeAccessControlList (const char* aclName);
virtual void removePrivilegeSet (const char* privName);
virtual dkAccessControlList* retrieveAccessControlList(const char* name); dkAccessControlList* retrieveAccessControlList(long id);
virtual dkPrivilege* retrievePrivilege(const char* name); dkPrivilege* retrievePrivilege(long id);
virtual dkPrivilegeGroup* retrievePrivilegeGroup(const char* name); dkPrivilegeGroup* retrievePrivilegeGroup(long id);
virtual dkPrivilegeSet* retrievePrivilegeSet(const char* name); dkPrivilegeSet* retrievePrivilegeSet(long id);
dkPrivilegeSet* retrieveUserGroupPrivilegeSet(const char* userGroupId);
dkPrivilegeSet* retrieveUserGroupPrivilegeSet(const char* userGroupId);
dkPrivilegeSet* retrieveUserPrivilegeSet(const char* userId);
void setAccessLevel(int accessLevel);
void setCacheEnabled(DKBoolean isEnabled);
void setTraceEnabled(DKBoolean isEnabled);
virtual void update(dkPrivilegeGroup* privGroupObj); virtual void update(dkPrivilege* privObj); virtual void update(dkPrivilegeSet* privSetObj); virtual void update(dkAccessControlList* aclObj);
void updateACLRule(long aclCode,const char* userId, short patronType, long privSetCode);
(c) Copyright International Business Machines Corporation 1996, 2003. IBM Corp. All rights reserved.