next up previous contents
Next: Verschlüsselung der Datenbankzugriffe Up: Schutz vor Datenabzug Previous: Beschränkung der angezeigten Suchergebnisse

Beschränkung der Anzahl der Zugriffe

Die Beschränkung der Anzahl der Zugriffe für einen bestimmten Zeitraum ist eine weitere Möglichkeit, Daten vor unerlaubtem Abzug zu schützen. Mit Hilfe der im CGI-Standard definierten Umgebungsvariablen REMOTE_HOST bzw. REMOTE_ADDR und REMOTE_IDENT ließe sich diese Beschränkung realisieren. Die ersten beiden Variablen enthalten den Rechnernamen bzw. die IP-Adresse des Rechners, von dem die Client-Anfrage stammt. Die Variable REMOTE_IDENT wird mit der Benutzerkennung des Anwenders belegt, falls auf dem Client-Rechner ein Authentisierungs-Server läuft. Ein Benutzer wäre somit eindeutig über Benutzerkennung und Rechnername bzw. IP-Adresse identifizierbar. Damit ließe sich eine auf Benutzerkennung und Rechnername basierende Zugriffsbeschränkung realisieren. Da aber auf dem größten Teil der Unix-basierten sowie auf allen PC-basierten Systemen dieser Authentisierungsdienst nicht läuft, ist eine Zugriffsbeschränkung auf diese Weise nicht realisierbar.

Unterstellt man, daß jedem Benutzer ein eindeutiger Rechnername bzw. eine eindeutige IP-Adresse zuzuordnen ist, könnte die Zugriffsbeschränkung nur auf dem Rechnernamen oder auf der IP-Adresse basieren. Dabei tritt allerdings ein weiteres Problem auf. Wird die Kommunikation zwischen WWW-Client und WWW-Server über einen Proxy-Server abgewickelt, werden REMOTE_HOST und REMOTE_ADDR stets mit den Werten des Proxy-Servers belegt. Damit ist die rein IP-basierende Methode ebenfalls nicht sinnvoll, da der Originator einer Anfrage nicht eindeutig bestimmt werden kann.

Stellt der Betreiber der Anwendung seinen Dienst nur einer bestimmten Anwendergruppe zur Verfügung, kann innerhalb dieser Gruppe die Beschränkung der Anzahl der Zugriffe realisiert werden. Die WWW-Anwendung und somit das zugrundeliegende Skript werden dabei über den internen Zugriffschutzmechanismus des WWW-Servers vor unerlaubten Zugriffen geschützt. Nach Adressierung des Dienstes und erfolgreicher Benutzerauthentifizierung belegt der WWW-Server zusätzlich zu den anderen CGI-Umgebungsvariablen die Variable REMOTE_USER. Diese Variable enthält den Namen des Benutzers, der auf das geschützte CGI-Skript zugegriffen hat. Damit ließe sich dann eine Zugriffsbeschränkung realisieren. Diese Methode hätte zwar den Vorteil, die Daten vor unerlaubtem Datenabzug zu schützen, mit dem Nachteil, daß der angebotene Dienst nur für eine bestimmte, dem Informationsanbieter bekannte Anwendergruppe verfügbar ist.

Sind die Personen innerhalb der Anwendergruppe dem Informationsanbieter namentlich bekannt und weiß er auch, daß diese Personen tatsächlich existent sind, stellt diese Anwendergruppe keine Gefahr für die Anwendung dar. Da jeder Person eine eigene Kennung zugeordnet ist, ist die Anzahl der Zugriffe je Person beschränkt. Hat der Informationsanbieter jedoch keine Informationen über die Existenz einer Person, könnte sich beispielsweise ein Benutzer mehrere Kennungen unter falschem Namen verschaffen, die ihm den Zugriff auf den Informationsdienst ermöglichen. Er könnte dann das Zugriffskontingent jeder einzelnen Kennung ausschöpfen und so die Zugriffsbeschränkung umgehen. Um dies zu verhindern, könnte der Informationsanbieter bei der Registrierung einer Kennung den Namen des Benutzers, seine E-mail-Adresse, den Namen der Domäne, von der aus zugegriffen wird, sowie den Namen und die Adresse der Institution, über deren Domäne der Zugriff erfolgt, verlangen. Bevor eine Kennung an einen Benutzer vergeben wird, kann der Informationsanbieter anhand der ihm zur Verfügung stehenden Informationen überprüfen, ob der Benuzter, unter dessen Namen die Kennung für den Zugriff registriert wird, auch tatsächlich existiert. Auch wäre es denkbar, daß für jede Institution nur ein bestimmtes Kontingent an Kennungen zur Verfügung gestellt wird, um den Mißbrauch bei der Vergabe einer Kennung einzuschränken.

Soll der angebotene Informationsdienst nicht nur einer begrenzten Anwendergruppe zur Verfügung gestellt werden, ist es ratsam, die Zugriffe auf den Informationsdienst auf Basis der IP-Adressen bzw. Rechnernamen zu beschränken. Obwohl mit dieser Methode der Originator einer Anfrage nicht eindeutig bestimmt werden kann, wird er daran gehindert, sehr große Mengen an Daten in einem sehr kurzen Zeitraum abzuziehen. Es wäre beispielsweise vorstellbar, die Anzahl der Zugriffe je Stunde bzw. je Tag zu beschränken. Dies bedeutet, daß von einem Rechner aus nur eine bestimmte Anzahl an Zugriffen je Stunde bzw. je Tag erfolgen können. Wird die Beschränkung der Anzahl der Zugriffe mit der Beschränkung der der angezeigten Suchergebnisse gekoppelt, ist hier eine relativ wirksame Methode gegeben, um die gespeicherten Daten vor unerlaubtem Abzug zu schützen. Diese Methode bietet aber keine absolute Sicherheit, da der Benutzer über einen langen Zeitraum gesehen, trotzdem die Möglichkeit besitzt, große Mengen an Daten abzuziehen.

Werden die Zugriffe auf den Informationsdienst über einen Proxy-Server abgewickelt, ergibt sich aus der oben beschriebenen Methode ein Nachteil. Sind die Zugriffe beschränkt und wurde das Kontingent für einen bestimmten Zeitraum von einem oder mehrerer Benutzer bereits ausgeschöpft, hat ein weiterer Benutzer, der auch diesen Proxy-Server verwendet, nicht die Möglichkeit, den Informationsdienst in diesem Zeitraum zu nutzen. Die Anwendung erkennt, anhand der IP-Adresse bzw. des Rechnernamens, daß das zur Verfügung stehende Kontingent an Zugriffen erschöpft ist und verweigert weitere Zugriffe, obwohl die Zugriffe von verschiedenen Bentuzern initiiert wurden.

Um die IP-basierende Zugriffsbeschränkung zu implemtieren, gibt es für die verschiedenen Gateway-Architekturen unterschiedliche Ansätze. Das Standalone-Gateway muß die Zugriffe in einer Datei protokollieren, damit diese nach Beendigung der Anwendung persistent sind und somit bei einem erneuten Start zur Verfügung stehen. Das Lesen und Auswerten dieser Datei wirkt sich dabei negativ auf die Performance des Gateways aus und führt zu einer Erhöhung der Antwortzeit für den Benutzer. Das Client/Server-Gateway und der WWW-Server mit SQL-Funktionalität können die Zugriffe in einer Datenstruktur im Hauptspeicher oder in einer Datei auf Festplatte protokollieren. Aus Gründen der Performance ist die Variante im Hauptspeicher vorzuziehen, da sich dabei keine bzw. geringe Auswirkungen auf die Antwortzeit für den Benutzer ergeben.


next up previous contents
Next: Verschlüsselung der Datenbankzugriffe Up: Schutz vor Datenabzug Previous: Beschränkung der angezeigten Suchergebnisse
Root on HPHEGER0
8/27/1998