Properties-Datei schützen

sebby

Mitglied
Hallo,

ich würde gerne wissen, ob es möglich ist eine Properties-Datei vor Veränderung zu schützen.
Und zwar habe ich bei meinem Java-Programm ein Log-In und kann mich mit einer Datenbank verbinden. Die Daten für das Log-In und die Verbindungsdaten habe ich in einer Properties-Datei gespeichert (Passwörter natürlich verschlüsselt). Was ich nun verhindern möchte ist, dass jemand in der Datei z.B. einfach das Passwort löscht oder verändert. Ich kann es natürlich über das Berechtigungssystem von Windows machen, aber das kann man ja auch wieder dementsprechend rückgängig machen.

Hat jemand eine Idee?
 
Die Daten für das Log-In und die Verbindungsdaten habe ich in einer Properties-Datei gespeichert (Passwörter natürlich verschlüsselt).
Hm, und dein Programm entschlüsselt die Logindaten dann wieder und meldet sich bei der Datenbank an? Das ist schön unsicher 😉
Logindaten für irgendwelche geschützten Systeme sollten nie in deinem Client gespeichert, hartkodiert im quelltext stehen, oder sonst wo rumliegen.

Normalerweise verwendet man dafür ein Zwischensystem dass die Anfrage der Clienten annimmt und z.b. an die Datenbank weitergibt. Dann muss dein Client keinerlei logindaten kennen.
 
Die Log-In Daten werden nicht entschlüsselt diese werden einfach nur verglichen. Die Daten für die Datenbank werden dann wieder entschlüsselt, aber das ist auch erstmal nur vorübergehend.
Aber ist es möglich die Properties-Datei vor Veränderung zu schützen?
 
Du kannst höchstens nen Hashwert von der Datei bilden und den mit nem hartkodierten in deinem Programm vergleichen. Aber solche Spielchen kann man sich eigentlich sparen, die Daten sind einfach nicht sicher so wie du die aktuell speicherst.
 
Aber wenn ich diese Daten in einer Datenbank speichere muss ich mich ja dennoch zu erst auf diese einloggen und somit muss ich diese Daten dann auch irgendwie in meinem Programm speichern.
Zumal möchte ich, dass man das Programm auch ohne Zugriff auf die Datenbank verwenden kann, man soll sich aber dennoch vorher einloggen müssen, damit das Programm startet.
Gibt es dann irgend eine andere Möglichkeit dies zu realisieren?
 
Bei einer Datenbank nutzt man dann einfach einen nur lesenden Benutzer um an die Daten zu kommen. Man bekommt das verschluesselte Passwort und damit kann man nicht so viel anfangen... somit ists recht simpel. (es muss ja auch nicht gleich eine MySQL db sein)

Ansonsten bleibt immer die Moeglichkeit das mit einem Server zu regeln
 

Zurück
Oben