Public Member Functions

zeus::ISecurityManager Class Reference

#include <ISecurityManager.hpp>

Inheritance diagram for zeus::ISecurityManager:
zeus::IZUnknown zeus::TSecurityManager

List of all members.

Public Member Functions

virtual bool MQUALIFIER isFunctionAllowed (Uint uiFunctionSecurityID) const =0
virtual Uint MQUALIFIER getUserSecurityID () const =0
virtual Retval MQUALIFIER setUserSecurityID (Uint uiUserID)=0
virtual Retval MQUALIFIER attachSecurityPlugin (const IString &rPluginName, ISecurityPlugin &rPlugin)=0
virtual Retval MQUALIFIER detachSecurityPlugin (const IString &rPluginName)=0
virtual Retval MQUALIFIER requestUserSecurityIDChange (const IString &rPluginName, Uint &ruiUserID)=0
virtual Retval MQUALIFIER getSecurityPlugin (const IString &rPluginName, ISecurityPlugin *&rpPlugin) const =0

Detailed Description

Defines the security manager, which is used for security related issues.


Member Function Documentation

virtual Retval MQUALIFIER zeus::ISecurityManager::attachSecurityPlugin ( const IString rPluginName,
ISecurityPlugin rPlugin 
) [pure virtual]

attaches a security plugin to the manager. The manger must be unsealed to call this method.

Parameters:
rPluginName: Name of the plugin
rPlugin: secure plugin instance
Return values:
RET_NOERROR: Plugin added
RET_REQUEST_FAILED: Plugin is already added
RET_ACCESS_DENIED: Manager is sealed

Implemented in zeus::TSecurityManager.

virtual Retval MQUALIFIER zeus::ISecurityManager::detachSecurityPlugin ( const IString rPluginName ) [pure virtual]

detaches a security plugin to the manager. The manger must be unsealed to call this method.

Parameters:
rPluginName: Name of the plugin
Return values:
RET_NOERROR: Plugin removed
RET_REQUEST_FAILED: Plugin is not attached
RET_ACCESS_DENIED: Manager is sealed

Implemented in zeus::TSecurityManager.

virtual Retval MQUALIFIER zeus::ISecurityManager::getSecurityPlugin ( const IString rPluginName,
ISecurityPlugin *&  rpPlugin 
) const [pure virtual]

Returns the interface of the security plugin

Parameters:
rPluginName: Plugin name
rpPlugin: Return parameter
Return values:
RET_NOERROR: plugin returned
RET_REQUEST_FAILED: Could not return plugin

Implemented in zeus::TSecurityManager.

virtual Uint MQUALIFIER zeus::ISecurityManager::getUserSecurityID (  ) const [pure virtual]

returns the security ID of the user

Implemented in zeus::TSecurityManager.

virtual bool MQUALIFIER zeus::ISecurityManager::isFunctionAllowed ( Uint  uiFunctionSecurityID ) const [pure virtual]

This method checks if a function can be used in order of the function security ID and the given user security ID

Parameters:
uiFunctionSecurityID: Security ID of the function
Return values:
true: function is allowed to perform
false,:function is not allowed to perform

Implemented in zeus::TSecurityManager.

virtual Retval MQUALIFIER zeus::ISecurityManager::requestUserSecurityIDChange ( const IString rPluginName,
Uint &  ruiUserID 
) [pure virtual]

Tries to change the user ID. This calls the secure plugin by name.

Parameters:
rPluginName: Name of the plugin
ruiUserID: requested user ID. returns the userID if method returns RET_NOERROR
Return values:
RET_NOERROR: User ID changed
RET_REQUEST_FAILED: chaning failed
RET_ACCESS_DENIED: Access not allowed
RET_INVALID_DATA: No such plugin found

Implemented in zeus::TSecurityManager.

virtual Retval MQUALIFIER zeus::ISecurityManager::setUserSecurityID ( Uint  uiUserID ) [pure virtual]

sets the new security ID of the user. To do that the security manager must be unsealed otherwise this method will fail. For password validation and chaning the user security ID you might use the method requestUserSecurityIDChange() instead

Parameters:
uiUserID: New ID
Return values:
RET_NOERROR: New UserID set
RET_ACCESS_DENIED: Could not set the userID

Implemented in zeus::TSecurityManager.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines


Written by Benjamin Hadorn http://www.xatlantis.ch.
Last change made on Sun Jan 22 2012 15:28:31