4 #ifndef DMLITE_CPP_AUTHN_H
5 #define DMLITE_CPP_AUTHN_H
74 std::vector<GroupInfo>& g):
98 virtual std::string
getImplId(
void)
const throw() = 0;
126 const boost::any& value) ;
129 virtual std::vector<GroupInfo>
getGroups(
void) ;
136 virtual void deleteGroup(
const std::string& groupName) ;
155 const boost::any& value) ;
158 virtual std::vector<UserInfo>
getUsers(
void) ;
165 virtual void deleteUser(
const std::string& userName) ;
174 virtual void getIdMap(
const std::string& userName,
175 const std::vector<std::string>& groupNames,
177 std::vector<GroupInfo>* groups) ;
201 #endif // DMLITE_CPP_AUTH_H
std::string remoteAddress
Definition: authn.h:25
virtual void updateUser(const UserInfo &user)
bool operator<(const UserInfo &) const
bool operator<(const SecurityCredentials &) const
bool operator==(const UserInfo &) const
std::string name
Definition: authn.h:48
std::vector< std::string > fqans
Definition: authn.h:33
virtual GroupInfo getGroup(const std::string &groupName)
virtual std::string getImplId(void) const =0
String ID of the user DB implementation.
static Authn * createAuthn(AuthnFactory *factory, PluginManager *pm)
Children of AuthnFactory are allowed to instantiate too (decorator)
bool operator!=(const SecurityContext &) const
bool operator<(const SecurityContext &) const
std::string oidc_audience
Definition: authn.h:29
virtual ~AuthnFactory()
Destructor.
bool operator!=(const SecurityCredentials &) const
SecurityContext()
Definition: authn.h:70
virtual void deleteGroup(const std::string &groupName)
Delete a group.
bool operator==(const SecurityCredentials &) const
Security context. To be created by the Authn.
Definition: authn.h:69
Header generated by CMake with the build configuration used.
SecurityContext(const SecurityCredentials &c, const UserInfo &u, std::vector< GroupInfo > &g)
Definition: authn.h:72
std::string mech
Definition: authn.h:23
bool operator<(const GroupInfo &) const
CatalogInterface can only be instantiated through this class.
Definition: dmlite.h:42
bool operator>(const SecurityCredentials &) const
std::string oidc_scope
Definition: authn.h:31
bool operator!=(const UserInfo &) const
bool operator==(const SecurityContext &) const
bool operator>(const GroupInfo &) const
virtual UserInfo getUser(const std::string &userName)
bool operator!=(const GroupInfo &) const
bool operator>(const UserInfo &) const
std::string oidc_issuer
Definition: authn.h:30
AuthnFactory.
Definition: authn.h:182
virtual UserInfo newUser(const std::string &userName)
std::vector< GroupInfo > groups
Definition: authn.h:80
Exceptions used by the API.
UserInfo user
Definition: authn.h:79
Helpful typedef for KeyValue containers.
Definition: extensible.h:20
Base class for factories.
Definition: base.h:48
virtual ~Authn()
Destructor.
bool operator==(const GroupInfo &) const
virtual void updateGroup(const GroupInfo &group)
SecurityCredentials credentials
Definition: authn.h:77
std::string clientName
Definition: authn.h:24
virtual void deleteUser(const std::string &userName)
Delete a user.
virtual std::vector< UserInfo > getUsers(void)
Get the user list.
Extensible types (hold metadata).
virtual std::vector< GroupInfo > getGroups(void)
Get the group list.
bool operator>(const SecurityContext &) const
std::string name
Definition: authn.h:59
virtual SecurityContext * createSecurityContext(void)
std::string sessionId
Definition: authn.h:26
Security credentials. To be filled by the front-end.
Definition: authn.h:22
virtual GroupInfo newGroup(const std::string &groupName)
virtual void getIdMap(const std::string &userName, const std::vector< std::string > &groupNames, UserInfo *user, std::vector< GroupInfo > *groups)