X-Git-Url: https://git.cweiske.de/phorkie.git/blobdiff_plain/972d5d8a7e5450d9c3784feda363eee56f3ad269..200ad8c2075802dbb38bbd27dd2f86c39fdb1ce0:/www/www-security.php diff --git a/www/www-security.php b/www/www-security.php index 241f866..5051b0f 100644 --- a/www/www-security.php +++ b/www/www-security.php @@ -4,12 +4,12 @@ namespace phorkie; * security levels + login requirement: */ -if (!isset($GLOBALS['phorkie']['auth']['secure'])) { +if (!isset($GLOBALS['phorkie']['auth']['securityLevel'])) { //not set? highest level of security - $GLOBALS['phorkie']['auth']['secure'] = 2; + $GLOBALS['phorkie']['auth']['securityLevel'] = 2; } -if ($GLOBALS['phorkie']['auth']['secure'] == 0) { +if ($GLOBALS['phorkie']['auth']['securityLevel'] == 0) { //everyone may do everything return; } @@ -17,8 +17,8 @@ if ($GLOBALS['phorkie']['auth']['secure'] == 0) { $logged_in = false; if (!isset($_SESSION['identity'])) { //not logged in -} else if ($GLOBALS['phorkie']['auth']['userlist']) { - if (in_array($_SESSION['identity'], $GLOBALS['phorkie']['users'])) { +} else if ($GLOBALS['phorkie']['auth']['listedUsersOnly']) { + if (in_array($_SESSION['identity'], $GLOBALS['phorkie']['auth']['users'])) { $logged_in = true; } } else { @@ -27,14 +27,19 @@ if (!isset($_SESSION['identity'])) { } if ($logged_in) { - //logged in? all fine + //you may do everything if you're logged in return; -} else if ($GLOBALS['phorkie']['auth']['secure'] == 2) { - //not logged in and security level 2 => error - require 'forbidden.php'; -} else if (isset($pageRequiresLogin) && !$pageRequiresLogin) { +} + +if (!isset($reqWritePermissions)) { + $reqWritePermissions = true; +} +if ($GLOBALS['phorkie']['auth']['securityLevel'] == 1 + && !$reqWritePermissions +) { return; } +$_SESSION['REQUEST_URI'] = $_SERVER['REQUEST_URI']; require 'forbidden.php'; -?> \ No newline at end of file +?>