summaryrefslogtreecommitdiff
path: root/includes/sys_auth.php
diff options
context:
space:
mode:
Diffstat (limited to 'includes/sys_auth.php')
-rw-r--r--includes/sys_auth.php44
1 files changed, 3 insertions, 41 deletions
diff --git a/includes/sys_auth.php b/includes/sys_auth.php
index e9fa197d..d4f35fa6 100644
--- a/includes/sys_auth.php
+++ b/includes/sys_auth.php
@@ -6,7 +6,7 @@ function load_auth() {
$user = null;
if (isset($_SESSION['uid'])) {
- $user = sql_select("SELECT * FROM `User` WHERE `UID`=" . sql_escape($_SESSION['uid']) . " LIMIT 1");
+ $user = sql_select("SELECT * FROM `User` WHERE `UID`='" . sql_escape($_SESSION['uid']) . "' LIMIT 1");
if (count($user) > 0) {
// User ist eingeloggt, Datensatz zur Verfügung stellen und Timestamp updaten
list ($user) = $user;
@@ -53,47 +53,9 @@ function verify_password($password, $salt, $uid = false) {
return $correct;
}
-// JSON Authorisierungs-Schnittstelle
-function json_auth_service() {
- global $api_key;
-
- header("Content-Type: application/json");
-
- $User = $_REQUEST['user'];
- $Pass = $_REQUEST['pw'];
- $SourceOuth = $_REQUEST['so'];
-
- if (isset($api_key) && $SourceOuth == $api_key) {
- $sql = "SELECT `UID`, `Passwort` FROM `User` WHERE `Nick`='" . sql_escape($User) . "'";
- $Erg = sql_select($sql);
-
- if (count($Erg) == 1) {
- $Erg = $Erg[0];
- if (verify_password($Pass, $Erg["Passwort"], $Erg["UID"])) {
- $user_privs = sql_select("SELECT `Privileges`.`name` FROM `User` JOIN `UserGroups` ON (`User`.`UID` = `UserGroups`.`uid`) JOIN `GroupPrivileges` ON (`UserGroups`.`group_id` = `GroupPrivileges`.`group_id`) JOIN `Privileges` ON (`GroupPrivileges`.`privilege_id` = `Privileges`.`id`) WHERE `User`.`UID`=" . sql_escape($UID) . ";");
- foreach ($user_privs as $user_priv)
- $privileges[] = $user_priv['name'];
-
- $msg = array (
- 'status' => 'success',
- 'rights' => $privileges
- );
- echo json_encode($msg);
- die();
- }
- }
- }
-
- echo json_encode(array (
- 'status' => 'failed',
- 'error' => "JSON Service GET syntax: https://engelsystem.de/?auth&user=<user>&pw=<password>&so=<key>, POST is possible too"
- ));
- die();
-}
-
function privileges_for_user($user_id) {
$privileges = array ();
- $user_privs = sql_select("SELECT `Privileges`.`name` FROM `User` JOIN `UserGroups` ON (`User`.`UID` = `UserGroups`.`uid`) JOIN `GroupPrivileges` ON (`UserGroups`.`group_id` = `GroupPrivileges`.`group_id`) JOIN `Privileges` ON (`GroupPrivileges`.`privilege_id` = `Privileges`.`id`) WHERE `User`.`UID`=" . sql_escape($user_id) . ";");
+ $user_privs = sql_select("SELECT `Privileges`.`name` FROM `User` JOIN `UserGroups` ON (`User`.`UID` = `UserGroups`.`uid`) JOIN `GroupPrivileges` ON (`UserGroups`.`group_id` = `GroupPrivileges`.`group_id`) JOIN `Privileges` ON (`GroupPrivileges`.`privilege_id` = `Privileges`.`id`) WHERE `User`.`UID`='" . sql_escape($user_id) . "'");
foreach ($user_privs as $user_priv)
$privileges[] = $user_priv['name'];
return $privileges;
@@ -101,7 +63,7 @@ function privileges_for_user($user_id) {
function privileges_for_group($group_id) {
$privileges = array ();
- $groups_privs = sql_select("SELECT * FROM `GroupPrivileges` JOIN `Privileges` ON (`GroupPrivileges`.`privilege_id` = `Privileges`.`id`) WHERE `group_id`=" . sql_escape($group_id));
+ $groups_privs = sql_select("SELECT * FROM `GroupPrivileges` JOIN `Privileges` ON (`GroupPrivileges`.`privilege_id` = `Privileges`.`id`) WHERE `group_id`='" . sql_escape($group_id) . "'");
foreach ($groups_privs as $guest_priv)
$privileges[] = $guest_priv['name'];
return $privileges;