19 require_once(BASE.
"wcmf/lib/util/class.Message.php");
20 require_once(BASE.
"wcmf/lib/util/class.SessionData.php");
21 require_once(BASE.
"wcmf/lib/util/class.ObjectFactory.php");
22 require_once(BASE.
"wcmf/lib/presentation/class.WCMFInifileParser.php");
23 require_once(BASE.
"wcmf/lib/persistence/class.PersistenceFacade.php");
28 define(
"ACTION_READ",
"read");
29 define(
"ACTION_MODIFY",
"modify");
30 define(
"ACTION_DELETE",
"delete");
31 define(
"ACTION_CREATE",
"create");
33 define(
"RIGHT_MODIFIER_ALLOW",
"+");
34 define(
"RIGHT_MODIFIER_DENY",
"-");
36 define(
"AUTHORIZATION_SECTION",
"authorization");
60 static $instance = null;
62 if (!isset($instance))
66 require_once(BASE.
"wcmf/lib/security/class.AnonymousUser.php");
77 return 'auth_user_'.Application::getId();
90 require_once(BASE.
"wcmf/lib/security/class.AuthUser.php");
94 if ($session->exist($userVarname))
96 $user = &$session->get($userVarname);
97 $user->resetRoleCache();
111 return $parser->getValue(
'anonymous',
'cms');
119 $parser->setValue(
'anonymous', 1,
'cms');
127 $parser->setValue(
'anonymous', 0,
'cms');
142 if (!in_array($action, $PUBLIC_ACTIONS))
148 if (!$this->
authorize($oidParts[
'type'], $context, $action))
156 if (!($authUser && $authUser->authorize($actionKey)))
181 function getRight($config, $resource, $context, $action)
183 $iniFile =
new IniFileParser();
184 $iniFile->parseIniFile($config);
186 $rightDef = $resource.
"?".$context.
"?".$action;
229 function modifyRight($config, $resource, $context, $action, $role, $modifier)
231 $iniFile =
new IniFileParser($config);
232 $iniFile->parseIniFile($config);
234 $rightDef = $resource.
"?".$context.
"?".$action;
236 if ($modifier != null)
237 $rightVal = $modifier.$role;
245 $value = trim(preg_replace(
"/[+\-]*".$role.
"/",
"", $value));
252 $iniFile->writeIniFile();
removePermission($config, $resource, $context, $action, $role)
authorize($resource, $context, $action)
RightsManager is used to handle all authorization requests.
getRight($config, $resource, $context, $action)
decomposeOID($oid, $validate=true)
const AUTHORIZATION_SECTION
modifyRight($config, $resource, $context, $action, $role, $modifier)
createPermission($config, $resource, $context, $action, $role, $modifier)