Security - validate session
This commit is contained in:
parent
34321b2b1d
commit
ee202cd61d
|
|
@ -229,6 +229,9 @@ class authentication {
|
|||
$_SESSION["user_uuid"] = $result["user_uuid"];
|
||||
$_SESSION["context"] = $result['domain_name'];
|
||||
|
||||
//used to validate the session
|
||||
$_SESSION["user_hash"] = hash('sha256', $_SERVER['REMOTE_ADDR'].$_SERVER['HTTP_USER_AGENT']);
|
||||
|
||||
//user session array
|
||||
$_SESSION["user"]["domain_uuid"] = $result["domain_uuid"];
|
||||
$_SESSION["user"]["domain_name"] = $result["domain_name"];
|
||||
|
|
@ -236,7 +239,7 @@ class authentication {
|
|||
$_SESSION["user"]["username"] = $result["username"];
|
||||
$_SESSION["user"]["contact_uuid"] = $result["contact_uuid"];
|
||||
|
||||
//get the groups assigned to the user
|
||||
//get the groups assigned to the user
|
||||
$group = new groups;
|
||||
$group->session($result["domain_uuid"], $result["user_uuid"]);
|
||||
|
||||
|
|
|
|||
|
|
@ -37,7 +37,7 @@
|
|||
}
|
||||
|
||||
//start the session
|
||||
if (function_exists('session_start')) {
|
||||
if (function_exists('session_start')) {
|
||||
if (!isset($_SESSION)) {
|
||||
session_start();
|
||||
}
|
||||
|
|
@ -70,8 +70,19 @@
|
|||
//define variables
|
||||
if (!isset($_SESSION['template_content'])) { $_SESSION["template_content"] = null; }
|
||||
|
||||
//if session authorized is not set then set the default value to false
|
||||
if (!isset($_SESSION['authorized'])) {
|
||||
$_SESSION['authorized'] = false;
|
||||
}
|
||||
|
||||
//validate the session address
|
||||
if ($_SESSION['authorized'] && $_SESSION["user_hash"] !== hash('sha256', $_SERVER['REMOTE_ADDR'].$_SERVER['HTTP_USER_AGENT'])) {
|
||||
session_destroy();
|
||||
header("Location: ".PROJECT_PATH."/?path=".urlencode($target_path));
|
||||
}
|
||||
|
||||
//if the session is not authorized then verify the identity
|
||||
if (!isset($_SESSION['authorized']) || (isset($_SESSION['authorized']) && !$_SESSION['authorized'])) {
|
||||
if (!$_SESSION['authorized']) {
|
||||
|
||||
//clear the menu
|
||||
unset($_SESSION["menu"]);
|
||||
|
|
|
|||
Loading…
Reference in New Issue