PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Webanwedung Design-Frage (nicht Ausssehen)



fs111
29-09-2003, 20:56
Hallo Mitleser!

Ich habe ein kleines Problem beim Aufbau einre Webanwendung. Der grobe Aubau sieht wie folgt aus (detaillierter kann ich es leider nicht sagen, wg. geheim, aber fragt bei Verständnisproblemen ruhig nach):

Verschiede Benutzer (alle gleiche Benutzergruppe auf dem System) können sich über ein Webinterface Daten im XML Format ansehen. Jeder Benutzer hat eigene Daten, die nur für ihn persönlich sind. Die XML-Daten werden von einer Programmlogik (Spyce/Python Server Pages via mod_python) ausgewertet und per Browser visualisiert. Bei den visualisierten Daten handelt es sich um Veränderungen zu gewissen, zentral auf dem Webserver abgelegten XML-Dateien. Nun soll natürlich jeder Benutzer nur die Dateien sehen können, die ihm auch gehören, kein Problem, auf http Ebene relativ einfach zu realisieren. Das Problem liegt aber darin, dass die Benutzer die XML-Dateien auch via ftp/scp herunterladen sollen können, d. h. sie liegen in den jeweiligen $Home-Verzeichnissen. Damit der Apache bzw. die Programmlogik diese lesen kann, müssen natürlich die Zugriffsrechte entsprechend einfach gesetzt sein, was aber dazu führt, dass wiederum auch andere Benutzer diese lesen könnten, wenn sie genug Spieltrieb/Neugierde an den Tag legten. Die Frage ist nun, wie müssen die Rechte gesetzt sein, damit das alles funktioniert.

Zunächst habe ich gedacht, man könne das Problem über ACL lösen, nur leider ist das unter RH 8 (der Sever, andere Distri ist nicht ) deaktiviert, und kann nur mit selbstkompiliertem Kernel geändert werden der zu NFS-Deadlocks führen kann, und auch der Admin nicht bereit ist einzuspielen. Meine nächtse Idee, war es die Dateien in einer DB abzulegen, nur habe ich ja denn doppelte Datenhaltung, was auch eher suboptimal ist.

Habt ihr evtl. noch eine bessere Idee, zu diesem Problem? Wie kann ich dei Berechtigungen vernünftig setzen, dass der apache alle Dateien lesen kann, aber die anderen Benutzer nicht?

Hoffe das war halbwegs verständlich.

Grüße und Danke

fs111

anda_skoa
30-09-2003, 10:56
Hmm, ich hab da eine Idee, aber ich glaube dafür braucht man einen extra Mountpoint.

Man legt die Daten in einer /home ähnlichen Verzeichnishierahie ab, hat dort aber alle Verzeichnisse und Dateien Owner user.wwwrun

Wenn die Gruppenrechte dann so sind, dass die Gruppe lesen kann, kann der Webserver die Dateien lesen.
Wenn die Benutzer selbst nicht in wwwrun sind, können sie nur ihre eigene Verzeichnisse lesen.

Ciao,
_

fs111
30-09-2003, 12:45
Danke, das geht tatsächlich. Warum bin ich da eigentlich nicht drauf gekommen?

:)

Grüße

fs111

peschmae
30-09-2003, 18:51
tja :p

Manchmal überraschend, was man mit den guten alten Unix-Benutzerrechten alles hinkriegt :)

MfG Peschmä