Datenbankanbindung - Passwort schützen

Status
Nicht offen für weitere Antworten.
M

Maddin28

Gast
Hi

ich hab eine Netzerkanwendung in Java, mit Server- und ClientKlassen. Nun soll diese Anwendung an eine Datenbank angebunden werden. Die Datenbank ist zwar nur vom Server aus erreichbar (nur localhost hat Zugriff), dennoch möchte ich das Datenbank Passwort nicht jedem auf die Nase binden. Nun stellt sich mir die Frage, ob es ausreicht, das Schreiben und Lesen von der Datenbank ausschließlich über die ServerKlassen zu steuern. Damit sollte eigentlich das Passwort den Clients verwährt bleiben, auch wenn diese die ClientKlasse decompilieren und somit einsehen können.
Ein Problem besteht natürlich, nämlich, dass jeder durch den Code weiß, wie ich gewisse Daten in die Datenbank schreibe, z.B. auf den Clients durch eine Methode db_wertschreiben(testfeld, testwert);
Damit könnten theoretisch Netzwerkpakete so "verunstaltet" werden, dass jemand Daten in der DB manipulieren könnte.
Ok ich weiß, dass das ziemlich paranoid ist, trotzdem haben sicher viele das selbe Problem und es gibt sicher Lösungen dafür. Das Einzige was mir einfällt, wäre den gesamten Datenstrom zu verschlüsseln, oder hat jemand nen Geheimtip für mich???

Thx
 

Wildcard

Top Contributor
Warum abstrahierst du nicht weiter?
Der Server kümmert sich um die DB und der Client kennt nur Objekte.
 
M

Maddin28

Gast
Wie meinst du das? Der Server kümmert sich um die DB, ok. Aber was meinst du mit "der Client kennt nur Objekte"??
 

Wildcard

Top Contributor
Warum brauchst du Methoden wie db_wertschreiben(testfeld, testwert); ?
Benutz ein Objekt basiertes Datenmodel und überlass es dem Server (zB mit Hibernate) das Datenmodel in der DB zu persistieren.
Dein Client braucht gar nicht zu wissen das es überhaupt eine DB gibt.
 
S

SlaterB

Gast
ändert wenig am grundsätzlichen Problem, dass jemand die Übertragung ändern kann,
hat aber wirklich nix mit DB zu tun, schon gar nicht mit 'Passwort schützen' ;)

Verschlüsselung im Web gibts, ja, z.B. SSL,
wenn jemanden den Client decompiliert, dann kann man die Objekte natürlich VOR dem Verschlüsseln ändern ;)

außerdem: man könnte doch diese 'falschen Daten' genauso gut in den Client eintippen,
wozu irgendwas manipulieren?

falls der Client eine bestimmte Art von Eingabe verhindert (Überweisungen nach Honolulu),
dann sollte der Server dies bei den empfangenen Daten prüfen!, dann kann nix mehr (weniger) schiefgehen
 
M

maddin28

Gast
Nun das Eintippen von "falschen Daten" über den Client ist nicht definitiv nicht möglich. Im client werden gewisse Daten eingegeben und an einem bestimmten Punkt errechnet eine ClientMethode einen Wert (z.B. 12345,23), der dann an den Server übermittelt wird.
So nun ist es ein Leichtes mit den vorhandenen Sourcen diesen Wert zu manipulieren. Man könnte diese Methode serverseitig machen, klar, aber dann wiederum können die Werte die zur Berechnung führen (also der ServerMethode übergeben werden) ganz einfach manipuliert werden.
Verschlüsselung hast du recht, bringt auch nichts. Aber was tun???
 
S

SlaterB

Gast
nur weil du halblogische Sätze fabrizierst, wird meine Logik doch nicht weniger logisch ;)

was der Client prüfen kann, kann auch der Server prüfen, fertig,

> aber dann wiederum können die Werte die zur Berechnung führen (also der ServerMethode übergeben werden) ganz einfach manipuliert werden.

dann ist das Problem, dass man nicht die Ergebnisse 'direkt in den Client eintippen kann'
sondern die Werte die dazu führen,
das ist doch egal, das verschiebt das Problem nur (nicht sehr weit)



---------

der Client darf eben nur geringe Rechte haben, dann kann ein Maß an Sicherheit geleistet werden,
wenn der Client die Macht hat und der Server nur dumm weiterleitet,
dann ist es eben so
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
pkm Frage zu Encodingproblem bei einer Datenbankanbindung Datenbankprogrammierung 1
L Speicherverbrauch Java Anwendung mit einer Datenbankanbindung Datenbankprogrammierung 19
A Bestmögliche Entkopplung der Datenbankanbindung Datenbankprogrammierung 6
J Derby/JavaDB Datenbankanbindung Eclipse und Derby Datenbankprogrammierung 7
M Java Datenbankanbindung funktioniert nicht Datenbankprogrammierung 4
T MySQL Problem mit Datenbankanbindung Datenbankprogrammierung 4
Z PostgreSQL Java Servlets mit Datenbankanbindung Datenbankprogrammierung 3
B Datenbankanbindung JSP Datenbankprogrammierung 7
B MySQL Problem mit Datenbankanbindung an MySQL Datenbankprogrammierung 2
R MySQL Voraussetzungen für eine erfolgreiche Datenbankanbindung mittels JDBC Datenbankprogrammierung 2
C Datenbankanbindung mit einem JButton Datenbankprogrammierung 12
M Servlet in JSP anbinden // Datenbankanbindung in JSP Datenbankprogrammierung 8
S MySQL Datenbankanbindung extra Klasse Datenbankprogrammierung 10
C Pokergame + Datenbankanbindung (Wahrscheinlichkeiten) Datenbankprogrammierung 16
G Probleme mit Datenbankanbindung Datenbankprogrammierung 3
A Datenbankanbindung an mySQL und Ein-/Auslesen der Daten Datenbankprogrammierung 4
A Datenbankanbindung, Grundlagen Datenbankprogrammierung 2
D Datenbankanbindung unter Linux Datenbankprogrammierung 10
D DAtenbankanbindung im OO-Aufbau Datenbankprogrammierung 5
M vorschläge bzgl. java programm mit datenbankanbindung Datenbankprogrammierung 4
M Datenbankanbindung: Java - MySQL Datenbankprogrammierung 2
K Problem mit datenbankanbindung unter access 2003 Datenbankprogrammierung 3
C Datenbankanbindung ohne ODBC JDBC Brücke Datenbankprogrammierung 5
R Fehler in Datenbankanbindung Servlet -> Access Datenbankprogrammierung 5
P Datenbankanbindung (erstmal) zu Access Datenbankprogrammierung 3
S Datenbankanbindung + HTML + Applet Datenbankprogrammierung 7
M Datenbankanbindung in Java : Newbie-Frage Datenbankprogrammierung 2
H Datenbankanbindung MySQL per JDBC Datenbankprogrammierung 4
P MySQL- Neues Passwort Datenbankprogrammierung 1
K Wie speichere ich das DB Passwort richtig ab? Datenbankprogrammierung 19
M MySQL Passwort Clientseitig ändern und über Button ausführen Datenbankprogrammierung 0
K Passwort und SQLDeveloper Datenbankprogrammierung 4
A MongoDB Passwort Problem Datenbankprogrammierung 0
R DB2 Oracle 12 - invalid username/passwort Datenbankprogrammierung 1
eskimo328 Datenbankverbindung ohne Passwort im Quelltext bei einer offline Anwendung Datenbankprogrammierung 14
S Java/Hibernate: DB-Passwort ändern Datenbankprogrammierung 4
G PostgreSQL Postgre: Passwort eines Benutzers ändern Datenbankprogrammierung 3
K H2 Datenbank Passwort durch Benutzer festlegen Datenbankprogrammierung 7
T XAMPP MySQL-Passwort Datenbankprogrammierung 3
Antoras Passwort aus DB auslesen Datenbankprogrammierung 12
M Passwort eines Technischen Users hinterlegen Datenbankprogrammierung 6
V DatenBank mit Login und Passwort Datenbankprogrammierung 4
J mal wieder passwort im code. Datenbankprogrammierung 6
S Passwort MySQL oder JAVA? Datenbankprogrammierung 4
M Passwort im Quellcode angeben? Datenbankprogrammierung 11
M Datenbank vor unerlaubtem Zugriff durch Benutzer schützen Datenbankprogrammierung 3
B Datenbanken schützen vor Zugriff Datenbankprogrammierung 3
TiME-SPLiNTER Verbindungsdaten schützen Datenbankprogrammierung 4

Ähnliche Java Themen

Neue Themen


Oben