[Python-de] MSSQL - Python -PHP Kopplung

Gerhard Haering gh at ghaering.de
Die Mai 24 10:51:01 CEST 2005


On Tue, May 24, 2005 at 09:45:02AM +0200, Diez B. Roggisch wrote:
> Uwe Laverenz wrote:
> >>Meine Überlegung bisher geht in die folgende Richtung:
> >>Auf dem NT Server wird ein Python Programmm installiert, welches über
> >>SOAP Anfragen entgegennimmt, den MSSQL Server "befragt" und die
> >>Ergebnisse via SOAP an den PHP Client auf dem Webserver schickt.
> >
> >
> >Das klingt ziemlich umständlich.
> 
> Naja- _eigentlich_ ist das ja klassische 3-Tier-Architektur. Mag im 
> konkreten übertrieben sein, aber generell doch eher gut. Vor allem weil 
> er ja mehr als reine SQL Abfragen machen kann - auch andere Applogik 
> halt. Und keine PHP-Coder  mit der Datenbank Unfug treiben können.
> 
> >
> >Die einfachste Methode ist die, dass Du dem Webserver bzw. dem
> >PHP-Client Zugriff auf die MS-SQL Datenbank gibst. Das ist mit PHP
> >absolut kein Problem, z.B. über das Sybase-Modul. Bei dieser Methode
> >sollte man sich aber ausführlich Gedanken über mögliche
> >Sicherheitsrisiken machen.
> >
> >Die sicherheitstechnisch bessere Methode wäre, die Daten des MS-SQL mit
> >einem Script vom Windows-Server aus auf eine Datenbank des Webservers zu
> >übertragen ("push"). Bei dieser Methode bietet der Windows-Server keinen
> >Angriffspunkt.

Nun, es gibt noch andere Möglichkeiten, das netzwerktechnisch
hinzukriegen, ohne einen zusätzlichen, eventuell überflüssigen und viel
Aufwand erzeugenden Layer einzubauen.

Möglichkeit 1)

SSL-Verbindungen zur Datenbank, möglichst weit eingeschränkter
Datenbank-Benutzer.

Möglichkeit 2)

Die Datenbankverbindung einfach tunneln, z. B. mittels ssh (Cygwin ssh
oder plink aus dem putty-Projekt auf Windows-Seite).

Auf Unix-Seite sprichst du den SQL-Server dann wie einen lokalen Server
an.

Man kann natürlich auch anders tunneln, z. B. mit stunnel.

-- Gerhard
-- 
Gerhard Häring - gh at ghaering.de - Python, web & database development
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : nicht verfügbar
Dateityp    : application/pgp-signature
Dateigröße  : 189 bytes
Beschreibung: Digital signature
URL         : http://starship.python.net/pipermail/python-de/attachments/20050524/a32b16d5/attachment.pgp