Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Rechteverwaltung mit PHP: Menüerstellung (https://www.delphipraxis.net/41210-rechteverwaltung-mit-php-menueerstellung.html)

Plague 27. Feb 2005 21:08


Rechteverwaltung mit PHP: Menüerstellung
 
Hallo,

wie im Titel schon beschrieben, möchte ich für mein aktuelles PHP Projekt unterschiedliche Rechte vergeben können. Je nach Berechtigung sollen Seiten zugänglich gemacht werden, oder nicht...

Was haltet Ihr von der Idee, dass ich eine kleine MySQL Datenbank anlege, in der ich Linkname, URL und Rechtestufe eintrage und je nach der zugehörigen Gruppe, lasse ich dann eine Schleife laufen die alle Ergebnisse die z.B. die Berechtigung 4 haben auflisten lasse und mit einem Link versehe.

Aber wie kann ich verhinden, dass sich Personen in dem Netzwerk einfach über den direkten Link auf die Seite schmuggeln...

Würde sowas in der Art funktionieren:
Code:
<?php
  session_start();
  setcookie("Test", "OK", 0);
  $BID = $_SESSION['XID'];
  if ($BID <= 4) {
   header("Location: http://www.xyz.de/anmeldung.php");
   exit;
}
?>
Also dass ich die ganze Zeit eine Session laufen lasse, die die Rechte speichert und dann bei jedem Seitenzugriff abfragt...

Gruß
Thomas

bttb930 27. Feb 2005 21:30

Re: Rechteverwaltung mit PHP: Menüerstellung
 
Wie kannst Du verhindern dass man direkt auf die Seite geht? Starte doch jede Seite wie folgt:

Delphi-Quellcode:
<?php
  if(!IsAllowedToViewThisSite($PHP_AUTH_USER, $PHP_AUTH_PW)) {
    Header('HTTP/1.1 401 Unauthorized');
    Header('WWW-Authenticate: Basic realm = "Top Secret"');
    echo "Zugang verweigert...\n";
    exit;
  }
?>
Die Funktion IsAllowedToViewThisSite mußt Du noch programmieren. Die kann dann die DB abfragen und Rechte lesem. Nutzername und Passwort werden nur einmal abgefragt.


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:21 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz