Einzelnen Beitrag anzeigen

Benutzerbild von negaH
negaH

Registriert seit: 25. Jun 2003
Ort: Thüringen
2.950 Beiträge
 
#4

Re: Sicherheit eines offenen Querys

  Alt 20. Jun 2006, 09:05
Hm, ich sehe keinen Unterschied in der Sicherheit bei deiner Query und einer lokal zwischengespeicherten Abfrage.
Benutzt du zb. bei deiner Query Cached Updates, so hat dies zum Erfolg das einmalig alle Datensätze deiner Abfrage lokal geladen werden und dann nur auf dem lokalen Dataset gearbeitet wird. In diesem Moment wird zeitlich gesehen ja auch nur eine Abfrage gesendet und komplett alle Resultate geladen. Aus Sicht des Netzwerk Traffics ergibt sich ein identischer zeitlicher Verlauf zu dem Vorschlag deinen Mitentwicklers. Das heist dann auch das bei beiden Varianten identische Sicherheist-"lücken" exisistieren müssen, und defakto keinerlei Unterschied mehr existiert. Beides wäre gleichermaßen sicher wie auch unsicher.
Aber der relevante Unterschied wäre das du die einmal weniger und das anderemal viel mehr zusätzlichen Programmieraufwand einhandelst.

Ich meine also: bleibe bei deiner normalen Abfrage da es aus Sicherheitsaspekten keinerlei Unterschiede macht. Du könntest noch Query.CachedUpdates := True setzen um die Datenmenge in einem Rutsch lokal zu laden.

Lass dir von deinem Mitstreiter mal erklären WARUM das unsicherer sein sollte (mit Fakten und eventuellen Links).

Normalerweise versucht das Grid der VCL nur diejenigen Daten zu laden die es auch anzeigt. Wenn wir mal von 1000 Datensätzen ausgehen bei denen aber nur 10 im Grid angezeigt werden können, dann ergäbe sich folgendes Bild:

Angreifer lauscht passiv am TCP/IP Traffic und kann somit nur mitschneiden und nicht interaktiv abfragen.
Das Grid wird nur die ersten 10 Datensätze anfordern zu Anzeige, von 1000 möglichen. Scrollt der Anwender niemals im Grid so kann der Angreifer nur 10 Datensätze mitschneiden, also niemals alle 1000.

Holst du aber per Cached Updates oder mit der Methode deines Mitstreiters sofort alle 1000 Datensätze ab um sie lokal zu speichern, wird der Angreifer auch alle 1000 Datensätze mitschneiden können.

Es ist also sogar so das es damit unsicherer wäre.

All dies setzt erstmal vorraus das die Kommunikation übers TCP/IP unverschlüsselt ist. Dies lässt sich aber über VPN Verbindungen extern ziemlich einfach verschlüsslt absichern.

Gruß Hagen
  Mit Zitat antworten Zitat