php.de

Zurück   php.de > Webentwicklung > Datenbanken

Datenbanken SQL und Co

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 17.01.2012, 11:10  
Benutzer
 
Registriert seit: 15.03.2010
Beiträge: 30
PHP-Kenntnisse:
Fortgeschritten
1989moni1989 befindet sich auf einem aufstrebenden Ast
Standard MySQL Automatisches Filtern von Datensätzen

Hallo!

Ich habe ein Projekt (Stammendatenverwaltung für Kleinbetriebe) das mehrere Firmen benutzen können. Je nach URL unterscheide ich für welche Firma das Programm aufgerufen wurde und frage dann bei jedem SQL ab ob der Datensatz zu der Firma gehört.

Beispiel: SELECT * FROM kunden WHERE FirmaID = '{$_SESSION['FirmaID']}'

Gibt es irgendeine bessere Möglichkeit zu verhindern, dass die eine Firma die Daten von der anderen Firma sieht? Zwei getrennte Datenbanken wären natürlich schön, das geht aber leider nicht...

Schön wäre es, wenn man zB zum Verbinden mit der Datenbank sagt, dass FirmaID immer 1 sein muss und bei jedem SQL-Statement filtert er dann selbst danach sofern die Spalte existiert...

Gibt es irgendsowas? Weil wenn man jedes Mal die FirmaID in das SQL-Statement einbauen muss, vergisst man es unweigerlich irgendwann mal und dann sieht die eine Firma die Daten der anderen, was natürlich aus Datenschutzgründen gar nicht geht.

Lg
1989moni1989 ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 17.01.2012, 12:14  
Erfahrener Benutzer
 
Registriert seit: 13.01.2012
Beiträge: 256
PHP-Kenntnisse:
Anfänger
akretschmer befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von 1989moni1989 Beitrag anzeigen
Hallo!

Ich habe ein Projekt (Stammendatenverwaltung für Kleinbetriebe) das mehrere Firmen benutzen können. Je nach URL unterscheide ich für welche Firma das Programm aufgerufen wurde und frage dann bei jedem SQL ab ob der Datensatz zu der Firma gehört.

Beispiel: SELECT * FROM kunden WHERE FirmaID = '{$_SESSION['FirmaID']}'

Gibt es irgendeine bessere Möglichkeit zu verhindern, dass die eine Firma die Daten von der anderen Firma sieht? Zwei getrennte Datenbanken wären natürlich schön, das geht aber leider nicht...

Schön wäre es, wenn man zB zum Verbinden mit der Datenbank sagt, dass FirmaID immer 1 sein muss und bei jedem SQL-Statement filtert er dann selbst danach sofern die Spalte existiert...

Gibt es irgendsowas? Weil wenn man jedes Mal die FirmaID in das SQL-Statement einbauen muss, vergisst man es unweigerlich irgendwann mal und dann sieht die eine Firma die Daten der anderen, was natürlich aus Datenschutzgründen gar nicht geht.

Lg

Du könntest alle Aufrufe zu den Tabellen durch Funktionen kapseln, SECURITY Invoker. Dein 'normaler' User darf nur diese Funktionen aufrufen, er hat keinerlei weiteren Rechte auf den Tabellen. Damit verhinderst Du so ganz nebenbei auch noch SQL-Injection.

Die Doku enthält alle weiteren Details.


Andreas
akretschmer ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Mysql funktioniert nicht (Erweiterung nicht erkannt!?) pfump Server, Hosting und Workstations 10 17.03.2012 11:07
Mysql fehler bei externen Zugriff SteiniKeule Datenbanken 4 18.06.2010 12:54
PDO MySQL abfrage funktioniert nicht Bloodydead PHP Tipps 2010 8 18.06.2010 11:08
Erkenntnisse aus der MySQL -> Oracle migration Donald Datenbanken 9 13.04.2010 14:24
[Erledigt] MySQL Link Resource in einer statischen Variablen speichern Lenki PHP-Fortgeschrittene 8 18.03.2010 16:37
Mysql Übereinstimmung von Datensätzen innerhalb einer Tabelle prüfen MrVienna PHP Tipps 2010 13 28.01.2010 17:46
MySQL Verbindung zu fremden Server Xanatus Datenbanken 5 27.05.2009 14:13
MySQL Server startet nicht mehr richtig... Datenbanken 16 03.03.2006 19:40
Kein Zugriff über ODBC mit der IP-Adresse auf MySql DB Datenbanken 4 09.02.2006 11:04
Suche Tipps für Persormance-Steigerung (Geld für Nützliches) Beitragsarchiv 18 16.08.2005 10:57
MYSQL läuft nur wenn /tmp auf 777 Datenbanken 5 06.07.2005 08:38
mysql root passwort vergessen Datenbanken 1 29.05.2005 11:33
Zählen von MySql Datensätzen b++ PHP Tipps 2005 5 04.04.2005 16:34
Access denied for user: '@localhost' / SYSTEM@localhost Datenbanken 0 10.11.2004 20:35
Mysql Fehler beim auslesen von Datensätzen Datenbanken 4 19.10.2004 10:05

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php forum pdo daten filtern, mysql wenn mehrer datensatz einen filtern, filtern in datenbanken, datensatz automatisch aus datenbank filtern

Alle Zeitangaben in WEZ +2. Es ist jetzt 16:36 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum