Autor Beitrag
josefkoller
Hält's aus hier
Beiträge: 10



BeitragVerfasst: Mo 21.01.13 12:41 
Hallo,

mittels INDY idhttp ist es einfach z. b. eine SQLITE-DB-Datei (oder auch andere) von einer Webseite zu downloaden.
ausblenden Delphi-Quelltext
1:
2:
3:
connstring:= 'www.josefkoller.de/test.sqlite';
IdHTTP1.Get('http://'+connstring, MS);
MS.SaveToFile('test_web.sqlite');

Kann man eine Datei vor einem Download schützen? Oder nur einem bestimmten Personenkreis zugänglich machen?

Meine Frage hat zwar eher was mit Internet, usw. zu tun. Ich weiß aber nicht recht, wo ich sonst eine Frage bezüglich Delphi und Webdownload unterbringen könnte.

Danke.

Josef

Moderiert von user profile iconNarses: Delphi-Tags hinzugefügt
bummi
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 1248
Erhaltene Danke: 187

XP - Server 2008R2
D2 - Delphi XE
BeitragVerfasst: Mo 21.01.13 14:29 
Da Du Apache einsetzt könnte das hilfreich sein:
httpd.apache.org/docs/2.2/howto/auth.html

_________________
Das Problem liegt üblicherweise zwischen den Ohren H₂♂
DRY DRY KISS
josefkoller Threadstarter
Hält's aus hier
Beiträge: 10



BeitragVerfasst: Mo 21.01.13 20:50 
Hallo,

danke für den Hinweis.

Das Blöde ist nur, daß man bei den meisten Hostern keinen Zugang zu derartigen Einstellungen hat.

Es soll ja nicht nur bei mir funktionieren.

Werde einstweilen die sqlite-Datei umbenennen und dabei irgendwelche "Unsinn Zeichen" verwenden. Da sollte sie selbst mit Suchläufen durch Internetseiten nicht so leicht aufzuspüren und ggf. zu manipulieren sein.

Vielleicht kennt ja jemand noch irgendwas php-mäßiges, um nicht so ohne Weiteres an die Datei ranzukommen.

Danke.

ciao

Josef
Tilo
ontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic starofftopic star
Beiträge: 1098
Erhaltene Danke: 13

Win7 geg. WInXP oder sogar Win98
Rad2007
BeitragVerfasst: Mo 21.01.13 21:09 
Nur mal als Einwurf:
Wie wäre es mit einen passwordgeschütztem Archiv?
Das Archiv kann dann öffentlich sein und das notwendige Password wird nur an authorisierte Personen herrausgegeben.

Die Passwortübermittlung und das Entpacken müßte aber im Hintergrund geschehen da man sonst Gefahr läuft, dass sich jemand verpappert (ausversehen, ich unterstelle keine bösen Absichten) und somit dann doch wieder jeder zugriff hat.
josefkoller Threadstarter
Hält's aus hier
Beiträge: 10



BeitragVerfasst: Di 22.01.13 00:16 
Hallo,

ja, daß wäre auch irgendwie zu machen.

Bei mir ist das Ding aber eine Bestell DB. D. h. es muß jeder seine Bestellung abschicken können und die Bestelldaten müssen in die DB.

Selbst wenn ich dann die DB - Datei nach einem Insert in ein geschütztes Verzeichnis wegkopiere oder sonstwie archiviere, die "öffentliche DB-Datei" wäre aber trotzdem zugänglich.

Ich mach es mittlerweile so, daß ich die INSERT'S doppelt eintrage.

Einmal in eine mysql DB und dann nochmal in die SQLite DB.
Der SQLite DB hab ich zusätzlich einen ganz blöden und kangen Namen gegeben.

Sollte die SQLite DB trotzdem mal verschwinden oder gelöscht werden, sind die Daten immer noch in der mysql DB.

Die SQLite DB ist halt deswegen so verlockend, weil man diese Datei ohne großes Brimbamborium runterladen und dann eben in Delphi lokal weiterverarbeiten kann.

Ist zwar irgendwie nicht befriedigend, aber mir fällt momentan nichts Besseres ein.

Ciao

Josef
WASEO
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 56

Win98, Win2000, WinXP
D6 Prof, D7 Prof
BeitragVerfasst: Di 29.01.13 08:14 
Hallo Josef,

interessantes Problem! Eine Möglichkeit wäre, dass Du einen dynamischen Dateinamen wählst. Über PHP könnte man die Datei jeden Tag umbenennen, z. B. "best"+Unixdatum+".sqlite". Dein Delphi-Programm weiss das natürlich und kann die Datei herunterladen, andere nicht.

Das Umbenennen könnte so funktionieren: Das PHP-Skript stellt gleich am Anfang das aktuelle Datum fest und prüft, ob eine SQLite-Datei des Vortages existiert. Falls ja, wird diese auf das aktuelle Datum umbenannt. Falls nicht, wird eine Sqlite-DB mit dem aktuellen Datum erzeugt.

Grüsse
Thorsten

_________________
Erstaunlich sind nicht die Dinge, die wir nicht kennen, sondern die wir kennen und die nicht so sind.
FinnO
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1331
Erhaltene Danke: 123

Mac OSX, Arch
TypeScript (Webstorm), Kotlin, Clojure (IDEA), Golang (VSCode)
BeitragVerfasst: Di 29.01.13 12:53 
Security by obscurity ist keine lösung.

Sinnvoll wäre nur, die Daten verschlüsselt in der Datenbank zu speichern, diese herunterzuladen und dann mit Delphi wieder zu entschlüsseln.