dmlite  0.4
Public Member Functions
dmlite::Authn Class Reference

#include <authn.h>

Inheritance diagram for dmlite::Authn:
Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual ~Authn ()
 Destructor.
virtual std::string getImplId (void) const =0 throw ()
 String ID of the user DB implementation.
virtual SecurityContextcreateSecurityContext (const SecurityCredentials &cred)=0 throw (DmException)
virtual GroupInfo newGroup (const std::string &groupName)=0 throw (DmException)
virtual GroupInfo getGroup (const std::string &groupName)=0 throw (DmException)
virtual GroupInfo getGroup (const std::string &key, const boost::any &value)=0 throw (DmException)
virtual std::vector< GroupInfogetGroups (void)=0 throw (DmException)
 Get the group list.
virtual void updateGroup (const GroupInfo &group)=0 throw (DmException)
virtual void deleteGroup (const std::string &groupName)=0 throw (DmException)
 Delete a group.
virtual UserInfo newUser (const std::string &userName)=0 throw (DmException)
virtual UserInfo getUser (const std::string &userName)=0 throw (DmException)
virtual UserInfo getUser (const std::string &key, const boost::any &value)=0 throw (DmException)
virtual std::vector< UserInfogetUsers (void)=0 throw (DmException)
 Get the user list.
virtual void updateUser (const UserInfo &user)=0 throw (DmException)
virtual void deleteUser (const std::string &userName)=0 throw (DmException)
 Delete a user.
virtual void getIdMap (const std::string &userName, const std::vector< std::string > &groupNames, UserInfo *user, std::vector< GroupInfo > *groups)=0 throw (DmException)

Detailed Description

User and group handling.

Note:
This is the only interface not inheriting from BaseInterface.

Constructor & Destructor Documentation

Authn::~Authn ( )
virtual

Destructor.


Member Function Documentation

virtual SecurityContext* dmlite::Authn::createSecurityContext ( const SecurityCredentials cred) throw (DmException)
pure virtual

Create a security context from the credentials.

Parameters:
credThe security credentials.
Returns:
A newly created SecurityContext.

Implemented in dmlite::BuiltInAuthn.

virtual void dmlite::Authn::deleteGroup ( const std::string &  groupName) throw (DmException)
pure virtual

Delete a group.

Implemented in dmlite::BuiltInAuthn.

virtual void dmlite::Authn::deleteUser ( const std::string &  userName) throw (DmException)
pure virtual

Delete a user.

Implemented in dmlite::BuiltInAuthn.

virtual GroupInfo dmlite::Authn::getGroup ( const std::string &  groupName) throw (DmException)
pure virtual

Get a specific group.

Parameters:
groupNameThe group name.
Returns:
The group.

Implemented in dmlite::BuiltInAuthn.

virtual GroupInfo dmlite::Authn::getGroup ( const std::string &  key,
const boost::any &  value 
) throw (DmException)
pure virtual

Get a specific group using an alternative key.

Parameters:
keyThe key name.
valueThey value to search for.
Returns:
The group.
Note:
The implementation will throw an exception if the field can not be used as key.

Implemented in dmlite::BuiltInAuthn.

virtual std::vector<GroupInfo> dmlite::Authn::getGroups ( void  ) throw (DmException)
pure virtual

Get the group list.

Implemented in dmlite::BuiltInAuthn.

virtual void dmlite::Authn::getIdMap ( const std::string &  userName,
const std::vector< std::string > &  groupNames,
UserInfo user,
std::vector< GroupInfo > *  groups 
) throw (DmException)
pure virtual

Get the mapping of a user/group. Additionaly, new users and groups MAY be created by the implementation.

Parameters:
userNameThe user name.
groupNamesThe different groups. Can be empty.
userPointer to an UserInfo struct where to put the data.
groupsPointer to a vector where the group mapping will be put.
Note:
If groupNames is empty, grid mapfile will be used to retrieve the default group.

Implemented in dmlite::BuiltInAuthn.

virtual std::string dmlite::Authn::getImplId ( void  ) const throw ()
pure virtual

String ID of the user DB implementation.

Implemented in dmlite::BuiltInAuthn.

virtual UserInfo dmlite::Authn::getUser ( const std::string &  userName) throw (DmException)
pure virtual

Get a specific user.

Parameters:
userNameThe user name.
Returns:
The user.

Implemented in dmlite::BuiltInAuthn.

virtual UserInfo dmlite::Authn::getUser ( const std::string &  key,
const boost::any &  value 
) throw (DmException)
pure virtual

Get a specific user using an alternative key.

Parameters:
keyThe key name.
valueThey value to search for.
Returns:
The user.
Note:
The implementation will throw an exception if the field can not be used as key.

Implemented in dmlite::BuiltInAuthn.

virtual std::vector<UserInfo> dmlite::Authn::getUsers ( void  ) throw (DmException)
pure virtual

Get the user list.

Implemented in dmlite::BuiltInAuthn.

virtual GroupInfo dmlite::Authn::newGroup ( const std::string &  groupName) throw (DmException)
pure virtual

Create a new group.

Parameters:
groupNameThe group name.
Returns:
The new group.

Implemented in dmlite::BuiltInAuthn.

virtual UserInfo dmlite::Authn::newUser ( const std::string &  userName) throw (DmException)
pure virtual

Create a new user.

Parameters:
userNameThe user name.
Returns:
The new user.

Implemented in dmlite::BuiltInAuthn.

virtual void dmlite::Authn::updateGroup ( const GroupInfo group) throw (DmException)
pure virtual

Update group info. 'name' identify uniquely the group.

Parameters:
groupThe group metadata to update.

Implemented in dmlite::BuiltInAuthn.

virtual void dmlite::Authn::updateUser ( const UserInfo user) throw (DmException)
pure virtual

Update user info. 'name' identify uniquely the user.

Parameters:
userThe user metadata to update.

Implemented in dmlite::BuiltInAuthn.


The documentation for this class was generated from the following files: