Hallo,
ich hoffe ich finde hier generelle hile bzw rat. Ich habe hier schon ein paar aehnlich Thread gesehen aber irgendwie treffen Sie nie GENAU mein problem.
Ich bin sozusagen Umsteiger von Oracle/PLSQL programmierung in einem gesticherten Firmennetzwerk auf JAVA / MYSQL appplication im internet:
Ich entwickle gerade eine kleine Java Application die an jedweden User verteilt werden soll. Diese soll ueber irgendeine connection auf eine MYSQL Datenbank zugreifen, die bei meinem Provider liegen wird.
Derzeit ist das ganze in der Entwicklung und sowohl MYSQL als auch die JAVA APP laufen bei mir local. Ich habe also keinerlei connection Probleme. Derzeit benutze ich JDBC zum Connecten.
Ich vermute, dass wenn ich nun die Datenbank auf den Webserver lege gehen meine Probleme los:
1. Webserver Firewall
Wie ich hoere wird der MYSQL Port von den meisten Providern geblockt. Hierzu habe ich gesehen, dass es verschiedene Lösungsmoeglichkeiten(beste SSH Port forwarding?) gibt. Ich denke dass muesste ich unter Kontrolle bringen
2. Client Firewalls
Ich weiss absolut nicht mit wem und wo und welcher Technik die Application konfrontiert wird. Ich gehe daovn aus, dass die User dieses Programms X beliebige Versionen von sozusagen allem benutzen.
Meine Hauptsorge liegt darin, dass eventuell die verschiedenen Firewalls der Clients ebenso Abfragen ueber JDBC blocken und ich moechte aber vermeiden die User zu fragen ihre Ports freizuschalten.
Ist das ueberhaupt so, dass eine typische Client Firewall JDBC blockt, auch wenn die erste Anfrage vom Client zum Server geht?
Vom Setup her ist das ganze so aufgebaut, dass der user und das Passwort fuer die DB im Client Programm gespeichert ist. Ich weiss dass das nicht schoen ist, allerdings ist mir dieser User und dieses Passwort relativ egal, weil der User auf der Datenbank nur die Rechte hat unkritische Views zu lesen, die von mir aus jeder lesen kann. Ausserdem kann der User in eine einzelne Tabelle Daten einfuegen, die ich aber relativ einfach auf veliditaet pruefen kann. D.H. ich werde per Trigger pruefen ob die Daten valide sind und Sie nur dann schreiben.
Sagen wir mal jeder darf diesen User und das Password haben, von daher brauche ich an dieser Stelle keinen Schutz.
Hat irgendjemand einen guten Vorschlag wie man das realisieren kann? Im wesentlichen geht es darum von einer Client Applikation die "irgendwo/ueberall" laeuft auf eine Datenbank zuzugreifen die auf einem Webserver sitzt.
Ich habe noch keinen Provider, d.h. ich kann meinen Provider ggf. auch nach einer Lösung hin aussuchen.
Ich bin für alle Vorschlaege dankbar. Egal wie einfach
ich dank euch schon mal vorab.
Ciao
ich hoffe ich finde hier generelle hile bzw rat. Ich habe hier schon ein paar aehnlich Thread gesehen aber irgendwie treffen Sie nie GENAU mein problem.
Ich bin sozusagen Umsteiger von Oracle/PLSQL programmierung in einem gesticherten Firmennetzwerk auf JAVA / MYSQL appplication im internet:
Ich entwickle gerade eine kleine Java Application die an jedweden User verteilt werden soll. Diese soll ueber irgendeine connection auf eine MYSQL Datenbank zugreifen, die bei meinem Provider liegen wird.
Derzeit ist das ganze in der Entwicklung und sowohl MYSQL als auch die JAVA APP laufen bei mir local. Ich habe also keinerlei connection Probleme. Derzeit benutze ich JDBC zum Connecten.
Ich vermute, dass wenn ich nun die Datenbank auf den Webserver lege gehen meine Probleme los:
1. Webserver Firewall
Wie ich hoere wird der MYSQL Port von den meisten Providern geblockt. Hierzu habe ich gesehen, dass es verschiedene Lösungsmoeglichkeiten(beste SSH Port forwarding?) gibt. Ich denke dass muesste ich unter Kontrolle bringen
2. Client Firewalls
Ich weiss absolut nicht mit wem und wo und welcher Technik die Application konfrontiert wird. Ich gehe daovn aus, dass die User dieses Programms X beliebige Versionen von sozusagen allem benutzen.
Meine Hauptsorge liegt darin, dass eventuell die verschiedenen Firewalls der Clients ebenso Abfragen ueber JDBC blocken und ich moechte aber vermeiden die User zu fragen ihre Ports freizuschalten.
Ist das ueberhaupt so, dass eine typische Client Firewall JDBC blockt, auch wenn die erste Anfrage vom Client zum Server geht?
Vom Setup her ist das ganze so aufgebaut, dass der user und das Passwort fuer die DB im Client Programm gespeichert ist. Ich weiss dass das nicht schoen ist, allerdings ist mir dieser User und dieses Passwort relativ egal, weil der User auf der Datenbank nur die Rechte hat unkritische Views zu lesen, die von mir aus jeder lesen kann. Ausserdem kann der User in eine einzelne Tabelle Daten einfuegen, die ich aber relativ einfach auf veliditaet pruefen kann. D.H. ich werde per Trigger pruefen ob die Daten valide sind und Sie nur dann schreiben.
Sagen wir mal jeder darf diesen User und das Password haben, von daher brauche ich an dieser Stelle keinen Schutz.
Hat irgendjemand einen guten Vorschlag wie man das realisieren kann? Im wesentlichen geht es darum von einer Client Applikation die "irgendwo/ueberall" laeuft auf eine Datenbank zuzugreifen die auf einem Webserver sitzt.
Ich habe noch keinen Provider, d.h. ich kann meinen Provider ggf. auch nach einer Lösung hin aussuchen.
Ich bin für alle Vorschlaege dankbar. Egal wie einfach
ich dank euch schon mal vorab.
Ciao