DE60116903T2 - Gesicherte sitzungverwaltung und authentifizierung für websites - Google Patents

Gesicherte sitzungverwaltung und authentifizierung für websites Download PDF

Info

Publication number
DE60116903T2
DE60116903T2 DE60116903T DE60116903T DE60116903T2 DE 60116903 T2 DE60116903 T2 DE 60116903T2 DE 60116903 T DE60116903 T DE 60116903T DE 60116903 T DE60116903 T DE 60116903T DE 60116903 T2 DE60116903 T2 DE 60116903T2
Authority
DE
Germany
Prior art keywords
web
cookie
client
secure
session
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE60116903T
Other languages
English (en)
Other versions
DE60116903D1 (de
Inventor
Wei Dong Victoria Road Pokfulam KOU
Lev Thornhill MIRLAS
Yan Chun Toronto ZHAO
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE60116903D1 publication Critical patent/DE60116903D1/de
Application granted granted Critical
Publication of DE60116903T2 publication Critical patent/DE60116903T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload

Description

  • GEBIET DER ERFINDUNG
  • Die vorliegende Erfindung steht in Zusammenhang mit dem Datenaustausch zwischen Web-Sites und Webclients und insbesondere mit Sitzungsverwaltungs- und Berechtigungsüberprüfungsmitteln unter Verwendung von sicheren und nichtsicheren Übertragungsprotokollen für Sitzungen zwischen Web-Sites und Webclients.
  • GRUNDLAGEN DER ERFINDUNG
  • Viele Unternehmen haben das Internet als eine Möglichkeit zur Kostensenkung und Bekanntmachung ihrer Dienste oder Produkte für eine breite Verbraucherbasis begrüßt. Diese Unternehmen (d.h. Webhändler) haben Web-Sites für den Online-Verkauf von Dienstleistungen, beispielsweise Daten oder Software, und/oder Gebrauchsgütern eingerichtet. Dies nutzen viele Verbraucher (d.h. Webclients), die aufgrund der Bequemlichkeit, mit der sie online einkaufen können, in zunehmendem Maße das Internet nutzen. In der Tat werden Online-Transaktionen zwischen Web-Händlern und Webclients immer zahlreicher.
  • Trotz seiner Bequemlichkeit ist der elektronische Handel nicht frei von Problemen, da der Datenaustausch zwischen dem Web-Browser eines Webclient und einer Web-Site des elektronischen Handels auf HTTP (HyperText Transfer Protocol) beruht. HTTP ist zustandslos, was bedeutet, dass das HTTP-Protokoll keine Daten über einen Webclient von einem Besuch bis zum nächsten aufbewahrt. Infolgedessen muss die Web-Site des elektronischen Handels bestimmte Schritte unternehmen, um sich an einen Webclient zu erinnern, der die Site zu einem späteren Zeitpunkt erneut besucht. Ein weiteres Problem besteht darin, dass HTTP nicht sicher ist, was unangenehm ist, da ein Webclient sensitive Daten bereitstellen muss, beispielsweise eine Kreditkartennummer oder eine Kontonummer, um Produkte zu bezahlen und zu empfangen. Ein unberechtigter Benutzer kann den HTTP-Datenaustausch möglicherweise beobachten, um diese sensitiven Daten zu stehlen. Der unberechtigte Benutzer könnte sodann unter der Identität des Webclient Waren bestellen und fordern, dass die Waren an eine andere Adresse geliefert werden, oder auf sensitive Daten eines Webclient zugreifen, beispielsweise auf Adressen- und Kreditkartendaten.
  • Um diesen Problemen entgegenzuwirken, muss eine Web-Site des elektronischen Handels während eines Dialogs mit einem Webclient eine Berechtigungsüberprüfung und eine Sitzungsverwaltung ermöglichen. Außerdem muss ein sicheres Übertragungsprotokoll verwendet werden, wenn sensitive Daten zwischen dem Webclient und der Web-Site des elektronischen Handels übertragen werden. Die Sitzungsverwaltung ermöglicht es einer Web-Site, sich zwischen verschiedenen Anmeldesitzungen an einen Webclient zu erinnern, wohingegen die Berechtigungsüberprüfung eine Sicherheitsmaßnahme ist, die sicherstellt, dass eine Anforderung an eine Web-Site von demselben Webclient stammt, der sich ursprünglich bei der Web-Site anmeldete. Ein sicheres Übertragungsprotokoll verschlüsselt die zwischen der Web-Site des elektronischen Handels und einem Webclient übertragenen Daten. Zur Ausführung einer Berechtigungsüberprüfung und einer Sitzungsverwaltung können eine HTTP-Basisberechtigungsüberprüfung (HTTP Basic Authentication), eine Berechtigungsüberprüfung mit Hilfe von Name-Werte-Paaren (Name-Value Pair Authentication) oder Sitzungscookies verwendet werden.
  • Die HTTP-Basisberechtigungsüberprüfung verlangt stets die Anmeldung eines Webclient vor der Sitzungsverwaltung. Zu diesem Zweck klappt ein Anmeldefenster auf, wenn der Webclient erstmals auf die Web-Site zugreift. Dieses Anmeldefenster kann vom Web-Site-Verwalter nicht einfach angepasst werden. Folglich gibt es keine Unterstützung für einen Gastclientzugriff auf sichere Webseiten, da der Webserver den Webclient zur Anmeldung zwingt. Infolgedessen verwenden die meisten Web-Sites des elektronischen Handels keine HTTP-Basisberechtigungsüberprüfung.
  • Die Berechtigungsüberprüfung mit Hilfe von Name-Werte-Paaren beinhaltet die Einbettung von Sicherheitsdaten in jeden URL (Uniform Resource Locator) oder in die Daten auf jeder Webseite der Web-Site des elektronischen Handels.
  • Infolgedessen müssen Web-Site-Entwickler für jede Webseite eine Berechtigungsüberprüfung bearbeiten, indem Berechtigungsdaten von einer Webseite an die andere weitergeleitet werden. Diese Berechtigungsdaten können leicht verloren gehen, wenn der Web-Client von einer sicheren Webseite zu einer nichtsicheren Webseite springt. Außerdem unterstützen Name-Werte-Paare einen Gastclientzugriff auf sichere Webseiten nicht, da der Webserver den Webclient beim Zugriff auf eine sichere Webseite zur Registrierung oder Anmeldung zwingt. Die Berechtigungsdaten sind auch nicht sicher, falls sie an den URL der Webseite angehängt werden, da dieser möglicherweise im Protokoll des Webserver offengelegt oder im Web-Browser des Webclient gezeigt wird. Außerdem sind in Webseitendaten enthaltene Berechtigungsdaten nicht sicher, da sie beim Betrachten der Cachespeicherdateien des Web-Browser möglicherweise zu sehen sind.
  • Cookies sind das beliebteste Verfahren zur Sitzungsverwaltung und Berechtigungsüberprüfung zwischen einer Web-Site und einem Webclient. Cookies werden im Computer des Webclient gespeichert und aus diesem abgerufen. Permanente Cookies werden im Festplattenlaufwerk des Computers gespeichert, während zeitweilige Cookies im flüchtigen Speicher gespeichert und gelöscht werden, sobald die Websitzung beendet ist. Der Web-Browser Netscape NavigatorTM speichert permanente Cookies in einer Textdatei (d.h. cookie.txt), wobei pro Cookie eine Zeile in der Datei verwendet wird, wohingegen der Web-Browser Microsoft Internet ExplorerTM für jedes permanente Cookie eine gesonderte Textdatei verwendet. Cookies sind so gestaltet, dass sie dem Webserver brauchbare Daten über den Webclient bereitstellen, beispielsweise auf welche Webseiten der Webclient zuletzt zugegriffen hat. Außerdem können Cookies zum Bereitstellen einer festgelegten Stufe eines Webclientzugriffs und einer Anpassung in einer Web-Site verwendet werden. Das Cookie enthält außerdem eine Beschreibung des Satzes von URLs, für die es gültig ist. Alle künftigen vom Webclient stammenden HTTP-Anforderungen, die mit dem in einem Cookie enthaltenen Satz von URLs übereinstimmen, beinhalten eine Rückübertragung des aktuellen Wertes des Cookie vom Webclient an den Webserver.
  • Wenn ein Webclient zum ersten Mal Daten von einem Webserver anfordert, der Cookies verwendet, liefert der Webserver die angeforderten Daten zusammen mit einem Cookie. Das Cookie wird vom Webserver an den Webclient übertragen, indem ein Cookie-Einrichtungsvorsatz (Set-Cookie header) als Teil einer HTTP-Antwort aufgenommen wird. Der Cookie-Enrichtungsvorsatz wird von einem CGI-Skript erzeugt und enthält die folgenden Attribute: NAME, DATE, PATH, DOMAIN und SECURE. Das Attribut NAME enthält Daten bezüglich des Webclient, die von der Web-Site verwendet werden. In einem Cookie können viele Attribute NAME vorliegen, und in einer einzelnen Webserverantwort können viele Cookie-Einrichtungsvorsätze ausgegeben werden. Das Attribut DATE gibt ein Datum an, das anzeigt, wann das Cookie abläuft. Das Attribut PATH gibt den Teilsatz von URLs in einer Domäne an, für die das Cookie gültig ist. Das Attribut DOMAIN ist der Internetdomänenname der Web-Site. Das Attribut SECURE zeigt die Bedingungen an, unter denen das Cookie übertragen wird. Falls das Attribut SECURE des Cookie beispielsweise als sicher markiert ist, wird es nur übertragen, falls der Übertragungskanal zwischen dem Webserver und dem Webclient sicher ist.
  • Eine auf Cookies beruhende Sitzungsverwaltung muss ein sicheres Übertragungsprotokoll beinhalten, um zu verhindern, dass unberechtigte Benutzer im Cookie enthaltene sensitive Daten stehlen. Ein solches Protokoll ist HTTPS (HTTP über SSL). Das Akronym SSL steht für Secure Socket Layer-Protokoll, wobei es sich um einen Industriestandard zur sicheren Datenübertragung unter Verwendung von HTTP handelt. HTTPS beinhaltet Vorkehrungen zur Webserver-Berechtigungsüberprüfung (wobei die Identität des Webserver gegenüber dem Webclient bestätigt wird), zur Datenverschlüsselung und zur Webclient- Berechtigungsüberprüfung (wobei die Identität des Webclient gegenüber dem Webserver bestätigt wird). Jeder HTTPS-fähige Webserver ist sowohl mit einem Codierer als auch einem Decodierer versehen, die Schlüssel und Datenverschlüsselungen verwenden, die einmalig sind. Die Datenverschlüsselung, die Worte und Zahlen in eine Reihe von alphanumerischen Zeichen umsetzt, kann nur vom Decodierer freigegeben werden, den der Webhändler zusammen mit dem lizenzierten Webserver erhält. Der Grad der Sicherheit hängt davon ab, ob ein 40-Bit- oder ein 128-Bit-Schlüssel verwendet wird. Die Schwierigkeit, den Code (oder den Schlüssel) zu knacken, steigt mit der Anzahl von im Schlüssel enthaltenen Bits. Cookie-basierte Sitzungsverwaltungs- und Berechtigungsüberprüfungsschemen wurden nach dem Stand der Technik beschrieben.
  • Die US-Patentschrift 5 966 795, "Tracking A User Across Both Secure And Nonsecure Areas On The Internet, Wherein The User Is Initially Tracked Using A Globally Unique Identifier", stellt die Zuweisung eines Token, beispielsweise eines GUID, an einen Benutzer vor, das diesen eindeutig darstellt, wenn er zum ersten Mal auf einen nichtsicheren Bereich auf einer Site zugreift, beispielsweise auf einen öffentlichen Bereich. Das Token wird als Schlüssel zu einem dem Benutzer zugeordneten Datenbankeintrag auf der Site verwendet. Wenn der Benutzer erstmalig auf einen sicheren Bereich auf derselben Site zugreift, wird er zur Eingabe einer Benutzerkennung und eines Passwortes aufgefordert. Nach dem Empfang dieser Daten verwendet die Site an Stelle des Token die Benutzerkennung als Schlüssel zum Datenbankeintrag sowohl in nichtsicheren als auch in sicheren Bereichen. Die Benutzerkennung wird sodann in einem Cookie gespeichert und jedes Mal, wenn der Clientcomputer das Cookie an die Site weiterleitet, von dieser empfangen. Folglich wird bei Verwendung der Benutzerkennung als Schlüssel nur ein Datenbankeintrag benötigt, um Benutzer sowohl über nichtsichere als auch über sichere Bereiche hinweg zu verfolgen.
  • WO-00/69110, "Method And Apparatus For Authenticating Users", schlägt vor, einen Berechtigungsüberprüfungsmechanismus von einer Anwendung in Form eines Anmeldeservers nach außen zu verlagern, so dass die Anwendung keinen Benutzer hinsichtlich seiner Berechtigung überprüfen muss. Der Anmeldeserver ist so konfiguriert, dass er die Berechtigungsüberprüfung ausführt. Ein die Anwendung enthaltender Anwendungsserver prüft, ob eine Anforderung eine aktive und gültige Sitzung hat, und falls keine gültige Sitzung vorliegt, leitet er den Benutzer zum Anmeldeserver um. Der Anmeldeserver versucht, unter Verwendung eines beliebigen Berechtigungsüberprüfungsmechanismus eine Berechtigungsüberprüfung des Benutzers auszuführen. Sobald der Benutzer hinsichtlich seiner Berechtigung überprüft worden ist, leitet der Anmeldeserver diesen zurück zum Anwendungsserver um, und sobald eine Überprüfung ausgeführt worden ist, verarbeitet der Anwendungsserver die Anforderung.
  • Die US-Patentschrift 5 963 915, "Secure, Convenient And Efficient System And Method Of Performing Trans-Internet Purchase Transactions", stellt ein Verfahren zur Ausführung einer Kauftransaktion zwischen einem Client-Browser und einem Händler-Server über ein Universalcomputernetz vor. Als Erstes wird ein permanenter, festgelegter, codierter Kennzeichner in einem Client-Browser eingerichtet, der einem von einem Händler-Server gespeicherten Kontodatensatz entspricht. Anschließend werden die Voraussetzungen für das Bereitstellen einer Webseite geschaffen, die einen festgelegten URL- Kennzeichner enthält, der ein käufliches Produkt oder einen käuflichen Dienst für den Client-Browser kennzeichnet, wobei der festgelegte URL den permanenten, festgelegten, codierten Kennzeichner als Bezug enthält. Der Händler-Server empfängt den festgelegten URL, der den permanenten, festgelegten, codierten Kennzeichner enthält. Anschließend wird der permanente, festgelegte, codierte Kennzeichner in Bezug auf den Kontodatensatz auf seine Gültigkeit überprüft, und der Händler-Server zeichnet die Identität des käuflichen Produktes oder Dienstes auf, wenn sie aus dem festgelegten URL abgeleitet wird.
  • Die US-Patentschrift 5 875 296 stellt ein Verfahren zur Bereitstellung eines sicheren Zugriffs auf ein verteiltes Dateisystem über eine Web-Site vor. Das Verfahren verwendet ein einzelnes Cookie, das eine Benutzerkennung zum Zugreifen auf Dateien im verteilten Dateisystem enthält. Dieses Cookie ermöglicht es, dass der Benutzer nicht bei jedem Zugriff auf Daten im verteilten Dateisystem erneut eine Benutzerkennung und ein Passwort eingeben muss. Außerdem ist dieses Verfahren spezifisch für ein verteiltes Dateisystem und verwendet kein sicheres Übertragungsprotokoll.
  • Die US-Patentschrift 6 047 268 stellt ein System und ein Verfahren zur Berechtigungsüberprüfung von Webclients vor, die Online-Käufe tätigen. Die Berechtigungsüberprüfung wird durch ein einzelnes Cookie bereitgestellt, das einen statischen Teil, der die Kontonummer des Webclient kennzeichnet, und einen verschlüsselten dynamischen Teil enthält, der die letzte vom Webclient ausgeführte Transaktion kennzeichnet. Dieses Cookie wird nach jeder neuen Transaktion mit einem neuen dynamischen Teil aktualisiert, jedoch beschreibt dieses Patent die Verwendung sensitiver Daten im Cookie und eine permanente Cookie-Speicherung im Computersystem des Webclient. Außerdem ist das in diesem Patent vorgestellte Verfahren des elektronischen Handels nicht flexibel genug, um die Ausführung eines Online-Einkaufs durch Gastclients zu ermöglichen; alle Webclients müssen sich zum Online-Einkauf registrieren. Die US-Patentschrift 6 047 268 beschreibt die Verwendung von HTTPS, legt jedoch nicht dar, ob ausschließlich HTTPS verwendet wird oder ob das Übertragungsprotokoll zwischen HTTPS und HTTP hin und her schaltet.
  • Die US-Patentschrift 6 076 069 stellt ein System und ein Verfahren zum Einlösen elektronischer Coupons vor. Wenn ein Webclient eine Web-Site besucht, die Werbung von einem Webhändler anzeigt, wird im Computersystem des Webclient ein Coupon in Form eines Cookie gespeichert. Falls der Webclient die Web-Site des Web-Händlers zu einem späteren Zeitpunkt besucht, erkennt die Web-Site den im Cookie gespeicherten elektronischen Coupon und bietet dem Webclient einen Rabatt an. Dieses Patent lehrt nicht die Verwendung eines sicheren Übertragungsprotokolls. Außerdem beschreibt dieses Patent die Verwendung sensitiver Daten in den Cookies, beispielsweise der Kontonummer des Webclient, und die Verwendung permanenter Cookies (d.h., die Cookies werden im Computersystem des Webclient dauerhaft gespeichert). Diese beiden Merkmale führen zu Sicherheitsproblemen.
  • Die ausschließliche Verwendung von HTTPS bringt aufgrund der bei jedem Zugriff auf eine Webseite ausgeführten Codierung und Decodierung eine Verminderung der Leistungsfähigkeit mit sich. Dies hat keine Auswirkungen, da viele Webseiten, beispielsweise Webseiten von Produktkatalogen, die nebenbei am meisten von Webclients besucht werden, keinen Schutz benötigen. Außerdem kann die Verwendung von HTTPS für den URL der Leitseite der Web-Site für einen Webclient schwierig sein, da er an die Verwendung von "https" an Stelle von "http" im URL einer Web-Site nicht gewöhnt ist. Außerdem kann das Umschalten zwischen HTTP und HTTPS mühsam sein, da gegenwärtig beim Anmelden eines Webclient auf einer Web-Site unter Verwendung von HTTPS ein Cookie zur Berechtigungsüberprüfung des Webclient ausgegeben wird, falls der Webclient jedoch zu einem späteren Zeitpunkt auf eine nichtsichere Webseite der Web-Site gelangt, die HTTP verwendet, wird dasselbe Cookie im Klartext an den Webclient übertragen. An dieser Stelle kann ein unberechtigter Benutzer das Cookie stehlen. Folglich gefährdet die Verwendung eines einzelnen Cookie unter diesen Bedingungen die Sicherheit der Web-Site.
  • US-A-5 966 705 stellt ein System und ein Verfahren zur Verfolgung eines Benutzers über sichere und nichtsichere Bereiche auf einer Internet-/Intranet-Site vor. Sie beschreibt, wie der Zugriff auf eine Webseite ausgeführt werden soll, nachdem bereits auf eine sichere Webseite zugegriffen wurde. Sie schlägt eine 3 Schritte umfassende Prozedur für nichtsichere Webseiten und eine 4 Schritte umfassende Prozedur für einen sicheren Bereich vor:
    erstens (Schritt 108) das Weiterleiten eines benutzerspezifischen GUID unter Verwendung eines nichtsicheren Protokolls;
    zweitens (Schritte 110, 112) das Zugreifen und Überprüfen des benutzerspezifischen Datenbankeintrags;
    drittens (Schritt 114 für eine öffentliche Webseite oder 116 für eine private Webseite oder 118 für einen sicheren Bereich) das Zugreifen auf die Webseite oder das Auffordern zur Eingabe einer Benutzer-ID und eines Passwortes, und viertens das Zugreifen auf den sicheren Bereich nach einer erfolgreichen Anmeldung. Der Nachteil dieser Abwicklung besteht darin, dass deren Ausführung zu kompliziert ist, da sie zu viel Programmlogik, die durchlaufen werden muss, und zu viele zu treffende Fallunterscheidungen beinhaltet.
  • WO 00/69110 stellt ein auf Cookies beruhendes Berechtigungsüberprüfungsverfahren vor, das abgeschlossen von der eigentlichen Geschäftsanwendung in einem anderen Berechtigungsüberprüfungsserver ausgeführt werden muss. Die Trennung der Berechtigungsüberprüfung von der Anwendung auf verschiedenen Servern kompliziert die Logik, in den zuvor beschriebenen Situationen, in denen ein häufiger Wechsel zwischen sicheren und nichtsicheren Webseiten ausgeführt werden muss, würde bei einem Wechsel von einer nichtsicheren Webseite mit einem nichtsicheren Protokoll zu einer sicheren Webseite mit einem sicheren Protokoll ein neuer Zugriff auf den Berechtigungsüberprüfungsserver benötigt.
  • US-A-5 963 915 stellt ein Verfahren und ein System zur Ausführung von Kauftransaktionen über das Internet auf eine sichere Weise durch die Verwendung von als "sicher" markierten Cookies vor, um eine Markierung zum Auswählen eines entsprechenden sicheren Protokolls zum Übertragen des Cookie zu haben. Nachteilig ist, dass keine bestimmte Lehre vorgestellt wird, wie ein Webbenutzer mit häufigen Wechseln zwischen sicheren und nichtsicheren Webseiten leistungsfähig verfolgt werden kann.
  • Dementsprechend besteht ein Bedarf an einer verbesserten sicheren Sitzungsverwaltung und einem verbesserten Berechtigungsüberprüfungsverfahren unter Verwendung von Cookies, um sowohl die Web-Site als auch den Webclient vor unberechtigten Benutzern zu schützen. Die vorliegende Erfindung deckt diesen Bedarf ab.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Die vorliegende Erfindung stellt ein Verfahren nach Anspruch 1 zur sicheren Sitzungsverwaltung und Berechtigungsüberprüfung zwischen einer Web-Site und einem Webclient bereit, wobei die Web-Site sichere und nichtsichere Webseiten aufweist, wobei das Verfahren die folgenden Schritte umfasst: Verwenden eines nichtsicheren Übertragungsprotokolls und eines Sitzungscookie, wenn der Webclient einen Zugriff auf nichtsichere Webseiten anfordert; und Verwenden eines sicheren Übertragungsprotokolls und eines Berechtigungscode-Cookie (authcode cookie), wenn der Webclient einen Zugriff auf sichere Webseiten anfordert.
  • Vorzugsweise enthält das Verfahren außerdem die folgenden Schritte: Anfordern des Sitzungscookie vom Webclient, wenn dieser einen Zugriff auf nichtsichere Webseiten anfordert, und Überprüfen des angeforderten Sitzungscookie; und Anfordern des Berechtigungscode-Cookie vom Webclient, wenn dieser einen Zugriff auf sichere Webseiten anfordert, und Überprüfen dieses angeforderten Berechtigungscode-Cookie.
  • Vorzugsweise enthält das Verfahren außerdem das Wechseln zwischen dem sicheren und dem nichtsicheren Übertragungsprotokoll, wenn der Webclient abwechselnd den Zugriff auf sichere und nichtsichere Webseiten anfordert.
  • Unter einem anderen Aspekt ist die vorliegende Erfindung ein System nach Anspruch 13 zur sicheren Sitzungsverwaltung und Berechtigungsüberprüfung zwischen einer Web-Site und einem Webclient. Das System enthält einen Webserver, einen Webclient und einen Übertragungskanal. Der Webserver ist über den Übertragungskanal mit dem Webclient verbunden. Der Webserver hat eine Web-Site, die sichere und nichtsichere Webseiten enthält; ein nichtsicheres Übertragungsprotokoll und ein Sitzungscookie, um dem Webclient den Zugriff auf nichtsichere Webseiten zu ermöglichen; und ein sicheres Übertragungsprotokoll und ein Berechtigungscode-Cookie, um dem Webclient den Zugriff auf sichere Webseiten zu ermöglichen.
  • Vorzugsweise enthält die Web-Site außerdem ein Prüfmittel zum Überprüfen des vom Webclient angeforderten Sitzungscookie; und ein Prüfmittel zum Überprüfen des vom Webclient angeforderten Berechtigungscode-Cookie.
  • Vorzugsweise enthält der Webserver außerdem ein Sicherheitswechselmittel (security alternating means) zum Wechsel zwischen dem nichtsicheren und dem sicheren Übertragungsprotokoll.
  • Fachleute werden verstehen, dass die Erfindung in einem Computerprogramm ausgeführt werden kann, das im Speicher gespeichert ist oder als ein Signal, beispielsweise auf einem modulierten Trägersignal zur Verwendung in einem Computersystem, oder in einem Netz, beispielsweise dem Internet, zur Verwendung in einem Computersystem übertragen werden kann.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Zum besseren Verständnis der vorliegenden Erfindung und um klarer zu zeigen, wie sie realisiert werden kann, wird nun beispielhaft auf die begleitenden Zeichnungen Bezug genommen, in denen:
  • 1 eine schematische Darstellung der Komponenten der vorliegenden Erfindung ist;
  • 2 eine Datenstrukturdarstellung der in der Tabelle USER_SESSION enthaltenen Felder ist;
  • 3 eine Datenstrukturdarstellung der in der Tabelle URL_REGISTRY enthaltenen Felder ist;
  • 4a und 4b zusammen ein Flussdiagramm eines ersten Verwendungsszenarios der vorliegenden Erfindung umfassen;
  • 5a, 5b und 5c zusammen ein Flussdiagramm eines zweiten Verwendungsszenarios der vorliegenden Erfindung umfassen; und
  • 6a und 6b zusammen ein Flussdiagramm eines dritten Verwendungsszenarios der vorliegenden Erfindung umfassen.
  • AUSFÜHRLICHE BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORM
  • Ein sicheres Sitzungsverwaltungssystem gemäß der vorliegenden Erfindung wird in 1 allgemein als 10 gezeigt. Das System 10 umfasst einen Webserver 12, einen Übertragungskanal 14 und einen Webclient 16. Der Webserver 12 enthält das Webserver-Softwarepaket 18 zur Erzeugung und Verwaltung der Web-Site 20. Die Web-Site 20 enthält die Webseiten 22, die Datenbank 24 und den Cookie-Generator 26. Die Webseiten 22 umfassen Typ-I-Webseiten 28 und Typ-II-Webseiten 30. Typ-II-Webseiten 30 werden weiter unterteilt in Typ-IIa-Webseiten 32 und Typ-IIb-Webseiten 34. Die Datenbank 24 umfasst Tabellen, die für eine ordnungsgemäße Funktionsweise der Web-Site 20 benötigt werden, die für die vorliegende Erfindung interessierenden Tabellen sind jedoch die Tabelle 36 USER_SESSION und die Tabelle 38 URL_REGISTRY. Der Cookie-Generator 26 kann ein Sitzungscookie 40 und ein Berechtigungscode-Cookie 42 erzeugen. Während einer bestehenden Sitzung mit der web-Site 20 wird der Webclient 16 als Gastclient 44 oder als registrierter Client 46 betrachtet. Im Folgenden bezieht sich der Begriff "Webclient" in der Beschreibung und in den Ansprüchen auf einen Gastclient 44 oder einen registrierten Client 46. Eine Vielzahl von Webclients 16 können gleichzeitig auf die Web-Site 20 zugreifen, in 1 wird jedoch der Einfachheit halber nur ein Webclient 16 gezeigt. Wie Fachleute verstehen werden, umfasst der Webclient 16 außerdem einen Web-Browser (nicht gezeigt), mit Hilfe dessen er auf den Inhalt der Web-Site 20 zugreifen und diesen sehen kann.
  • Der Übertragungskanal 14 verbindet den Webclient 16 mit dem Webserver 12 und ist vorzugsweise ein TCP/IP- (Transfer Communications Protocol/Internet Protocol-) basiertes Netz, beispielsweise das Internet. TCP/IP ist eine Familie von Protokollen, die verbundenen Computern eine gemeinsame Nutzung von Ressourcen oder Daten über ein Netz ermöglichen. Wie Fachleute verstehen werden, kann der Webclient 16 ein beliebiges aus einer Vielzahl von Mitteln zur Verbindung mit dem Übertragungskanal 14 verwenden. Beispielsweise kann der Webclient 16 durch einen Internetzugangsanbieter über ein Telefon, ein Kabel oder einen drahtlosen Modem mit dem Übertragungskanal 14 verbunden werden. Alternativ kann diese Verbindung auch durch ein Kabelfernsehnetz oder ein anderes Zugangsmedium erfolgen. Der Übertragungskanal 14 kann außerdem ein Intranet, ein lokales Netz oder ein überregionales Netz sein, das direkt mit dem Internet verbunden ist.
  • Der Webserver 12 verwendet HTTP (HyperText Transport Protocol), ein Standardanwendungsprotokoll, um dem Webclient 16 den Zugriff auf die Webseiten 22, auf Dateien oder andere auf der Web-Site 20 befindliche Daten zu ermöglichen. Die Webseiten 22 liegen im HTML- (HyperText Markup Language-) Format vor, das eine Industriestandardsprache zur Beschreibung von Webseiten ist. HTML stellt eine grundlegende Dokumentenformatierung bereit und ermöglicht dem Webserver 12 die Angabe von Verbindungen zu anderen Web-Sites und/oder Dateien. Alternativ können andere Formate für Webseiten 22 verwendet werden, beispielsweise ASP (Active Server Page) oder JSP (Java Server Page). Der Webserver 12 enthält außerdem ein Webserver-Softwarepaket 18, das beim Erstellen und Verwalten der Web-Site 20 hilft. Ein solches Webserver-Softwarepaket 18 ist das von der IBM Corporation verkaufte WCS Version 5.1TM.
  • Die Web-Site 20 enthält Typ-I-Webseiten 28 und Typ-II-Webseiten 30. Die Typ-I-Webseiten 28 sind für alle Webclients 16 identisch und enthalten statische und einige dynamisch erzeugte Webseiten. Alternativ sind Typ-II-Webseiten 30 für einen gegebenen Webclient 16 einmalig und enthalten Webseiten mit Einkaufswagen (shopping cart web pages) und Webseiten mit Kontodaten. Webseiten mit Einkaufswagen enthalten Einzelheiten über bevorstehende Einkäufe, die der Webclient 16 tätigt, wohingegen Webseiten mit Kontodaten Daten des Webclient enthalten, beispielsweise Adressendaten. Typ-II-Webseiten 30 können weiter unterteilt werden in Typ-IIa-Webseiten 32 und Typ-IIb-Webseiten 34. Typ-IIa-Webseiten 32 sind sichere Webseiten, die sensitive Daten enthalten, die einen Schutz vor unberechtigten Benutzern benötigen, wohingegen Typ-IIb-Webseiten 34 nichtsichere Webseiten sind, da sie Daten enthalten, die nicht wichtig genug sind, um vor unberechtigten Benutzern geschützt werden zu müssen. Die Grenze zwischen Typ-IIa-Webseiten 32 und Typ-IIb-Webseiten 34 ist nicht eindeutig und hängt von den vom Verwalter der Web-Site 20 definierten Sicherheitsrichtlinien ab. Ein der Veranschaulichung dienendes Beispiel einer Typ-IIa-Webseite 32 ist eine Webseite mit Kreditkarteneingabe, und ein Beispiel einer Typ-IIb-Webseite 34 ist eine Webseite mit einer Produktbeschreibung.
  • In der bevorzugten Ausführungsform der vorliegenden Erfindung ist die Datenbank 24 eine relationale Datenbank, die eine Vielzahl von Tabellen enthält, die für die Verwaltung und die Funktionsweise der Web-Site 20 benötigt werden. Wie Fachleute erkennen werden, muss sich die Datenbank 24 nicht auf der Web-Site 20 befinden und kann in der Tat eine Vielzahl von Dateien in einer Vielzahl von Systemen umfassen. Außerdem werden Fachleute verstehen, dass viele Typen von Datenbankstrukturen verwendet werden können, beispielsweise objektorientierte Datenbanken, Netzdatenbanken, hierarchische Datenbanken oder sogar eine Ansammlung einfacher Dateien.
  • In der vorliegenden Erfindung enthält die Datenbank 24 zur Berechtigungsüberprüfung und zur Sitzungsverwaltung die Tabelle 36 USER_SESSION und die Tabelle 38 URL_REGISTRY. Die Tabelle 36 USER_SESSION wird zum Verwalten von Sitzungsdaten für den Webclient 16 verwendet, während die Tabelle 38 URL_REGISTRY verwendet wird, um festzustellen, ob ein sicheres oder ein nichtsicheres Übertragungsprotokoll benötigt wird, wenn der Webclient 16 den Zugriff auf eine bestimmte Webseite 22 auf der Web-Site 20 anfordert.
  • Jeder Datensatz in der Tabelle 36 USER_SESSION enthält Daten über einen bestimmten Webclient 16. Diese Daten werden in einer Vielzahl von in der Tabelle 36 USER_SESSION enthaltenen Feldern gespeichert (siehe 2). In der bevorzugten Ausführungsform der vorliegenden Erfindung sind dies die folgenden Felder: USER_ID 50, SESSION_ID 52, SESSION_TIMESTAMP 54, AUTHCODE 56, AUTHCODE_TIMESTAMP 58, USER_TYPE 60, LOGIN_ID 62 und PASSWORD 64. Für einen bestimmten Webclient 16 enthält USER_ID 50 einen einmaligen Schlüsselwert zur Kennzeichnung des Webclient 16 in der Tabelle 36 USER_SESSION. SESSION_ID 52 enthält eine Zeichenfolge zur Kennzeichnung der aktuellen Websitzung zwischen dem Webclient 16 und der Web-Site 20, SESSION_TIMESTAMP 54 enthält einen Zeitstempel, der anzeigt, wann das Sitzungscookie 40 erzeugt oder geändert wurde. AUTHCODE 56 enthält den Berechtigungscode für den Webclient 16. AUTHCODE_TIMESTAMP 58 enthält einen Zeitstempel, der anzeigt, wann das Berechtigungscode-Cookie 42 erzeugt oder geändert wurde. USER_TYPE 60 zeigt an, ob der Webclient 16 ein Gastclient 44 oder ein registrierter Client 46 ist. Falls der Webclient 16 bei der Web-Site 20 registriert ist, enthält LOGIN_ID 62 eine Anmeldekennung (login ID), und PASSWORD 64 enthält ein Passwort. Alternativ können andere Felder zur Tabelle 36 USER_SESSION hinzugefügt werden, um mehr Daten über den Webclient 16 oder mehr Funktionalität oder einen höheren Grad an Sicherheit für die Web-Site 20 bereitzustellen.
  • Jeder Datensatz in der Tabelle 38 URL_REGISTRY enthält Daten über eine andere Webseite 22 auf der Web-Site 20. Mit Bezugnahme auf 3 sind nun die vorzugsweise in der Tabelle 38 URL_REGISTRY enthaltenen Felder URL_ADDRESS 70 und HTTPS_FLAG 72. Für eine bestimmte Webseite 22 auf der Web-Site 20 enthält URL_ADDRESS 70 die URL-Adresse der Webseite 22, und HTTPS_FLAG 72 enthält einen Wert von 1, falls die Webseite 22 ein sicheres Übertragungsprotokoll benötigt, oder einen Wert von 0, falls die Webseite 22 kein sicheres Übertragungsprotokoll benötigt. Alternativ können andere Felder zur Tabelle 38 URL_REGISTRY hinzugefügt werden, um mehr Daten über die Webseite 22 bereitzustellen oder den Sicherheitsgrad der Web-Site 20 zu erhöhen.
  • Der Webserver 12 ermöglicht es, dass der Webclient 16 beim Zugriff auf die Web-Site 20 ein Gastclient 44 oder ein registrierter Client 46 ist, jedoch ist der Webclient 16 bei jedem Zugriff auf die Web-Site 20 standardmäßig ein Gastclient 44. Für Webclients 16, die nur in der Web-Site 20 blättern oder einen Einkauf tätigen und anschließend nie wieder auf die Web-Site 20 zugreifen möchten, ermöglicht die Web-Site 20 einen anonymen Gastclientstatus. Ein Gastclient 44 benötigt weder eine Anmeldekennung noch ein Passwort für die Web-Site 20, kann jedoch in der Web-Site 20 blättern, sowohl auf sichere als auch auf nichtsichere Webseiten zugreifen und Produkte bestellen. Ein Gastclient 44 muss bei jedem Einkauf auf der Web-Site 20 clientspezifische Daten ständig erneut eingeben, beispielsweise eine Versandadresse und eine Kreditkartennummer. Außerdem kann ein Gastclient 44 die Web-Site 20 nicht erneut besuchen und frühere Einkäufe (d.h. das Bestellprotokoll) abfragen.
  • Ein registrierter Client 46 ist ein Webclient 16, der sich bei der Web-Site 20 registriert und als registrierter Kunde angemeldet hat. Registrierte Clients können ein kundenspezifisches Konto für einen kundenspezifischen Online-Einkauf einrichten. Ein Gastclient 44 kann sich registrieren, indem er ein Registrierungsformular ausfüllt (das vom Verwalter der Web-Site 20 definiert werden kann). Das Registrierungsformular könnte den Namen des Webclient, die Wohnadresse, die eMail-Adresse, die bevorzugte Zahlungsweise, die Anmeldekennung und das Passwort sowie andere Daten anfordern. Diese Daten werden für einen zukünftigen Abruf oder eine zukünftige Änderung in einer Webclientdaten enthaltenden Tabelle in der Datenbank 24 gespeichert. Kreditkartendaten, die für den registrierten Client 46 spezifisch sind, werden ebenfalls in der Datenbank 24 gespeichert. Aufgrund der Speicherung dieser Daten muss der registrierte Client 46 nicht bei jedem Einkauf erneut eine Kreditkartennummer eingeben.
  • Der Webserver 12 hat einen Cookie-Generator 26, der das Sitzungscookie 40 und das Berechtigungscode-Cookie 42 erzeugt, die zwischen dem Webserver 12 und dem Webclient 16 übertragen werden. Bei der Übertragung des Sitzungscookie 40 kann das Übertragungsprotokoll HTTP oder HTTPS sein, bei der Übertragung des Berechtigungscode-Cookie 42 muss das Übertragungsprotokoll jedoch HTTPS sein. In der bevorzugten Ausführungsform verwendet die Web-Site 20 HTTPS mit einem 40-Bit- oder einem 128-Bit-Schlüssel als sicherem Übertragungsprotokoll. Der Verwalter der Web-Site 20 entscheidet, welche Schlüsselgröße verwendet wird. Vorzugsweise soll ein 128-Bit-Schlüssel verwendet werden. Der Erfinder beabsichtigt nicht, die Schlüsselgröße auf 40 oder 128 Bit zu beschränken, stattdessen ist dies ein Vorschlag auf der Grundlage der zum Zeitpunkt der Erfindung üblicherweise verwendeten Technologie. HTTPS ist in vielen Web-Browsern realisiert, beispielsweise im Netscape NavigatorTM, im Secure MosaicTM und im Microsoft Internet ExplorerTM. HTTPS ist auch in Webservern realisiert, die von Netscape, Microsoft und IBM Quarterdeck hergestellt werden.
  • Das Sitzungscookie 40 ist für die Sitzungsverwaltung zuständig, während das Berechtigungscode-Cookie 42 für die Berechtigungsüberprüfung zuständig ist. In der bevorzugten Ausführungsform sind das Sitzungscookie 40 und das Berechtigungscode-Cookie 42 zeitweilige Cookies, die gelöscht werden, wenn der Webclient 16 seinen Web-Browser schließt. Alternativ kann das Sitzungscookie 40 als dauerhaft im Computersystem des Webclient 16 gespeichert definiert werden, das Berechtigungscode-Cookie 42 muss jedoch aus Sicherheitsgründen stets zeitweilig sein.
  • Wie an früherer Stelle beschrieben wurde, umfasst ein Cookie die folgenden Attribute: NAME, DATE, PATH, DOMAIN und SECURE. Die im Attribut NAME des Sitzungscookie 40 verwendeten Daten umfassen vorzugsweise Daten, die in USER_ID 50, SESSION_ID 52 und SESSION_TIMESTAMP 54 enthalten sind. Auf Wunsch können andere zusätzliche Daten (nicht gezeigt) in das Attribut NAME des Sitzungscookie 40 aufgenommen werden. Die Daten aus USER_ID 50 sind ein einmaliger Schlüssel, der zum Zugriff auf die in der Tabelle 36 USER_SESSION gespeicherten Daten für den Webclient 16 verwendet wird. SESSION_ID 52 enthält eine Zeichenfolge, die von einem Verschlüsselungszufallsgenerator (cryptographic random number generator) erzeugt wird. Der Verschlüsselungszufallsgenerator hat die wesentliche Eigenschaft, dass der Wert der erzeugten Zahl nicht vorhergesagt werden kann. In der bevorzugten Ausführungsform der vorliegenden Erfindung ist der Verschlüsselungszufallsgenerator die Funktion rand() in der C-Standard-Bibliothek, die in allen handelsüblichen C-Compilern verfügbar ist. Obwohl die Funktion rand() nur Zahlen erzeugt, können auch zufällige Zeichenfolgen erzeugt werden, indem die zufällig erzeugte Zahl auf einen Buchstaben des Alphabets abgebildet wird, indem die zufällig erzeugte Zahl durch 26 dividiert wird und der Rest aus dieser Divisionsoperation auf einen Buchstaben abgebildet wird, wobei ein Rest von 0 auf den Buchstaben A, ein Rest von 1 auf den Buchstaben B, ein Rest von 2 auf den Buchstaben C abgebildet würde und so weiter. Falls beispielsweise eine Zeichenfolge mit 10 Zeichen gewünscht wird, wird dieser Prozess der Zahlenerzeugung, der Division durch 26 und der Abbildung des Restes auf einen Buchstaben zehnmal wiederholt. Bei den Daten aus SESSION_TIMESTAMP 54 handelt es sich um einen Zeitstempel, der den Zeitpunkt anzeigt, zu dem das Sitzungscookie 40 erzeugt oder geändert wurde, was der Fall ist, wenn der Webclient 16 sich als Gastclient 44 anmeldet, sich registriert, um ein registrierter Client 46 zu werden, oder sich als registrierter Client 46 anmeldet. Die Daten aus SESSION_TIMESTAMP 54 werden zur Bereitstellung von zeitsensitiven Daten in das Sitzungscookie 40 aufgenommen, wodurch die Sicherheit der Web-Site 20 erhöht wird, indem es ermöglicht wird, dass das Sitzungscookie eindeutiger wird und damit schwieriger zu kopieren ist.
  • Die im Attribut NAME im Sitzungscookie 40 enthaltenen Daten werden erzeugt, indem die Daten aus SESSION_TIMESTAMP 54 an SESSION_ID 52 angehängt werden, eine nicht umkehrbare Quersummenfunktion (one-way hash function) angewandt und das Ergebnis der MD5-Quersummenfunktion an die Daten aus USER_ID 50 angehängt wird. Die nicht umkehrbare MD5-Quersummenfunktion nimmt eine eingegebene Zeichenfolge mit veränderlicher Länge und setzt diese in eine binäre 128-Bit-Folge um. Die nicht umkehrbare MD5-Quersummenfunktion ist so gestaltet, dass es schwierig ist, den Quersummenprozess umzukehren, um die eingegebene Zeichenfolge zu erhalten, die kontrollsummiert wurde. In der bevorzugten Ausführungsform wird die nicht umkehrbare MD5-Quersummenfunktion aus dem von RSA Laboratories entwickelten BSAFETM-Toolkit verwendet. Das Attribut PATH des Sitzungscookie 40 wird als "/" angegeben, was bedeutet, dass der Web-Browser des Webclient 16 das Sitzungscookie 40 an den Webserver 12 rückübertragen muss, wenn der Webclient 16 den Zugriff auf irgendeinen URL-Pfad auf der Web-Site 20 anfordert. Das Attribut EXPIRES wird nicht angegeben, da das Sitzungscookie 40 zeitweilig ist, und das Attribut DOMAIN wird nicht angegeben, da der Web-Browser des Webclient 16 den Domänennamen des Webserver 12 verwendet. Das Attribut SECURE wird nicht angegeben, da bei der Übertragung des Sitzungscookie 40 zwischen dem Web-Browser des Webclient 16 und dem Webserver 12 kein sicheres Übertragungsprotokoll erforderlich ist. Falls der Webclient 16 ein registrierter Client 46 ist, werden die in SESSION_ID 52 enthaltenen Daten beim nächsten Zugriff des Webclient 16 auf die Web-Site 20 zur Erzeugung des Sitzungscookie 40 verwendet, falls der Webclient 16 jedoch nur ein Gastclient 44 ist, werden neue Daten aus den in SESSION_ID 52 gespeicherten Daten verwendet, wenn das Sitzungscookie 40 erzeugt wird.
  • Die im Attribut NAME des Berechtigungscode-Cookie 42 verwendeten Daten umfassen die in AUTHCODE 56 und AUTHCODE_TIMESTAMP 58 gespeicherten Daten. Auf Wunsch können andere zusätzliche Daten (nicht gezeigt) in das Attribut NAME des Berechtigungscode-Cookie 42 aufgenommen werden. Die Daten in AUTHCODE 56 sind vorzugsweise eine zufällig erzeugte Zeichenfolge oder ein ganzzahliger Wert, der von demselben Verschlüsselungszufallsgenerator erzeugt wird, der zum Erzeugen der in SESSION_ID 52 enthaltenen Daten für das Sitzungscookie 40 verwendet wurde. Alternativ kann ein anderer Verschlüsselungszufallsgenerator verwendet werden. Bei den in AUTHCODE_TIMESTAMP 58 enthaltenen Daten handelt es sich um einen Zeitstempel, der den Zeitpunkt anzeigt, zu dem das Berechtigungscode-Cookie 42 erzeugt oder geändert wurde, was der Fall ist, wenn der Webclient 16 zum ersten Mal als Gastclient 44 auf eine sichere Webseite 32 zugreift, ein registrierter Client 46 wurde oder sich bei der Web-Site 20 als registrierter Client 46 anmeldet. Die in AUTHCODE_TIMESTAMP 58 enthaltenen Daten werden aus den gleichen Sicherheitsgründen in das Berechtigungscode-Cookie 42 aufgenommen, wie sie oben für das Sitzungscookie 40 beschrieben wurden.
  • Die Daten im Attribut NAME des Berechtigungscode-Cookie 42 werden durch Anhängen der in AUTHCODE_TIMESTAMP 58 gespeicherten Daten an AUTHCODE 56 und Anwenden der nicht umkehrbaren MD5-Quersummenfunktion erzeugt. Das Attribut EXSPIRES wird nicht angegeben, da das Berechtigungscode-Cookie 42 zeitweilig ist, und das Attribut DOMAIN wird nicht angegeben, da der Web-Browser des Webclient 16 den Domänennamen des Webserver 12 verwendet. Das Attribut SECURE wird angegeben, da bei der Übertragung des Berechtigungscode-Cookie 42 zwischen dem Web-Browser des Webclient 16 und dem Webserver 12 ein sicheres Übertragungsprotokoll benötigt wird. Das Attribut PATH des Berechtigungscode-Cookie 42 wird als "/" angegeben, was bedeutet, dass der Web-Browser des Webclient 16 den Zugriff auf irgendeinen URL-Pfad auf der Web-Site 20 anfordert. Da das Attribut SECURE eingestellt wird, wird das Berechtigungscode-Cookie 42 jedoch nur übertragen, wenn das vom Web-Browser des Webclient 16 verwendete Übertragungsprotokoll sicher ist.
  • Beim Zugriff auf die Web-Site 20 kann der Webclient 16 ein Gastclient 44 oder ein registrierter Client 46 sein. Standardmäßig wird der Webclient 16 bei jedem Zugriff auf die Web-Site 20 als ein Gastclient 44 betrachtet. Der Webclient 16 kann sodann ein Gastclient 44 bleiben oder sich registrieren, um ein registrierter Client 46 zu werden, oder sich als ein registrierter Client 46 anmelden, falls er sich zuvor bei der Web-Site 20 registriert hatte. In allen Fällen verwendet der Webclient 16 einen Web-Browser, um die Webseiten 22 auf der Web-Site 20 anzuschauen. Der Web-Browser könnte Netscape NavigatorTM, Microsoft Internet ExplorerTM oder irgendein anderer geeigneter Web-Browser sein. Der Webclient 16 richtet eine Verbindung mit der Web-Site 20 ein, indem er deren URL anfordert, bei dem es sich um eine spezielle Syntax handelt, die eine Netzadresse definiert. Wenn der Webclient 16 einen URL anfordert, vergleicht der Web-Browser des Webclient 16 den angeforderten URL mit allen im Computersystem des Webclient 16 gespeicherten Cookies, und eine Zeile, die die Name-/Werte- Paare aller übereinstimmenden Cookies enthält, wird in die Anforderung nach der Web-Site 20 aufgenommen. Falls der Webclient 16 die Cookieverwendung in seinem Web-Browser deaktiviert hat, kann er nicht auf die Web-Site 20 zugreifen. In diesem Fall benachrichtigt der Webserver 12 den Webclient 16, dass die Cookieverwendung in seinem Web-Browser aktiviert werden muss.
  • Das Verfahren der vorliegenden Erfindung ist auf mehrere Komponentenprozesse und grundlegende Definitionen angewiesen. Erstens muss die Web-Site 20 die Verwendung von HTTPS erforderlich machen, wenn der Webclient 16 den Zugriff auf sichere Webseiten 32 anfordert. Zweitens werden die Anmelde- und Registrierungswebseiten auf der Web-Site 20 als sichere Webseiten 32 definiert. Die Komponentenprozesse werden nun im Pseudocodeformat gezeigt und erläutert.
  • Der Pseudocode für den Prozess, mit Hilfe dessen die Web-Site 20 feststellt, ob ein sicheres oder ein nichtsicheres Übertragungsprotokoll zwischen dem Webclient 16 und der Web-Site 20 benötigt wird, wird unten als Prozess A gezeigt.
  • Figure 00260001
    Prozess A: Feststellung der Notwendigkeit eines sicheren oder nichtsicheren Übertragungsprotokolls.
  • Der Prozess A beginnt, wenn der Webclient 16 den Zugriff auf die Webseite 22 auf der Web-Site 20 anfordert. Der Webserver 12 ermittelt sodann den URL der Webseite 22 und verwendet diesen als einen Schlüssel für die Tabelle 38 URL_REGISTRY, um den in HTTPS_FLAG 72 enthaltenen Wert zu erhalten, der der Webseite 22 entspricht. Falls der in HTTPS_FLAG 72 enthaltene Wert null ist, wird HTTPS nicht benötigt, und die Anforderung des Webclient 16 wird unabhängig davon verarbeitet, ob er HTTP oder HTTPS verwendet. Falls HTTPS_FLAG 72 andererseits einen Wert von eins enthält, veranlasst der Webserver 12 den Web-Browser des Webclient 16, zum URL der sicheren Web-Site zu gehen, der der Webseite 22 entspricht. Dies erfolgt durch die Bereitstellung des URL der sicheren Web-Site im HTTP-Vorsatz, den der Webserver 12 an den Web-Browser des Webclient 16 überträgt. Der Web-Browser des Webclient 16 weiß, dass HTTPS verwendet werden muss, da "https" im übertragenen URL enthalten ist. Der Web-Browser des Webclient 16 verwendet sodann HTTPS, um den Zugriff auf die Webseite 22 anzufordern, woraufhin die Anforderung verarbeitet wird. In der bevorzugten Ausführungsform muss das Übertragungsprotokoll von HTTP zu HTTPS umgeschaltet werden, falls ein Zugriff auf eine sichere Webseite 32 angefordert wird, wenn der Webclient 16 HTTP verwendet. Falls der Webclient 16 jedoch HTTPS verwendet, wenn er den Zugriff auf eine nichtsichere Webseite 34 anfordert, bleibt das Übertragungsprotokoll, wie es ist. Alternativ kann der Verwalter der Web-Site 20 dieses Merkmal unter Verwendung von Webserver-Software 18 ändern, so dass im Falle einer Verwendung von HTTPS und einer Anforderung des Webclient 16 nach einem Zugriff auf eine nichtsichere Webseite 34 das Übertragungsprotokoll auf HTTP umgeschaltet wird.
  • Ein anderer Prozess wird zum Erstellen eines Gastclientkontos oder eines Sitzungscookie verwendet, wenn der Webclient 16 zum ersten Mal auf die Web-Site 20 zugreift oder diese erneut besucht, kein Sitzungscookie 40 aufweist und kein registrierter Client 46 ist. Der Pseudocode für diesen Prozess wird als Prozess B gezeigt.
  • Figure 00280001
    Prozess B: Gastkonto und Sitzungscookie erstellen
  • Der Prozess B beginnt, wenn der Webserver 12 einen Gastclienteintrag in der Tabelle 36 USER_SESSION erstellt, indem er einen neuen Datensatz hinzufügt. Die Erstellung eines neuen Datensatzes in der Tabelle 36 USER_SESSION beinhaltet das Erzeugen eines neuen Schlüsselwertes und das Speichern desselben in USER_ID 50 im neu erstellten Datensatz in der Tabelle 36 USER_SESSION. Als Nächstes wird für den neu erstellten Gastclienteintrag "Gast" oder ein anderer geeigneter Kennzeichner in USER_TYPE 60 gespeichert. Die Daten, vorzugsweise eine Zeichenfolge, für SESSION_ID 52 werden sodann vom zuvor beschriebenen Verschlüsselungszufallsgenerator nach dem Zufallsprinzip erzeugt und in SESSION_ID 52 gespeichert. Als Nächstes werden die Daten für SESSION_TIMESTAMP 54 berechnet und in SESSION_TIMESTAMP 54 gespeichert. Anschließend wird vorzugsweise die nicht umkehrbare MD5-Quersummenfunktion auf die Verkettung der in SESSION_ID 52 und SESSION_TIMESTAMP 54 enthaltenen Daten angewandt (die in SESSION_TIMESTAMP 54 enthaltenen Daten werden an die in SESSION_ID 52 enthaltenen Daten angehängt). Alternativ kann eine andere Hash-Funktion angewandt werden. Nach dem Stand der Technik sind zahlreiche Hash-Funktionen allgemein bekannt, eine grundlegende Quellenangabe ist "The Art of Computer Programming, Volume 3: Searching and Sorting", von Donald E. Knuth, wobei Professor Knuth eine zukunftsweisende Erläuterung der mathematischen Grundlagen der Erstellung einer Hash-Funktion bereitstellt. Das Ergebnis der MD5-Quersummenfunktion wird mit den in USER_ID 50 enthaltenen Daten verkettet und im Attribut NAME des Sitzungscookie 40 gespeichert. Der Webserver 12 ordnet sodann die anderen Attribute des Sitzungscookie 40 zu und überträgt das Sitzungscookie 40 an den Web-Browser des Webclient 16.
  • Ein anderer Komponentenprozess wird zur Erzeugung des Berechtigungscode-Cookie 42 verwendet. Dies findet normalerweise statt, wenn der Gastclient 44 den Zugriff auf eine sichere Webseite 32 anfordert und das Übertragungsprotokoll HTTPS verwendet, jedoch kein Berechtigungscode-Cookie 42 hat. Der Pseudocode für diesen Prozess wird als Prozess C gezeigt.
  • Figure 00290001
    Prozess C: Erzeugen eines Berechtigungscode-Cookie.
  • Der Prozess C beginnt mit dem Entnehmen von Daten aus dem Attribut NAME des Sitzungscookie 40, die den in USER_ID 50 gespeicherten Daten entsprechen. Diese Daten werden sodann als ein Schlüssel für die Tabelle 36 USER_SESSION verwendet, um festzustellen, ob für einen Gastclient 44 ein Berechtigungscode in AUTHCODE 56 enthalten ist. Falls ein Berechtigungscode in AUTHCODE 56 enthalten ist, ist der Webclient 16 möglicherweise ein unberechtigter Benutzer, folglich weist der Webserver 12 die Anforderung zurück, erzeugt eine Fehlerwebseite und überträgt diese an den Web-Browser des Gastclient 44. Falls AUTHCODE 56 andererseits leer ist, werden Daten für AUTHCODE 56, vorzugsweise eine Zeichenfolge oder eine ganze Zahl, vom zuvor beschriebenen Verschlüsselungszufallsgenerator nach dem Zufallsprinzip erzeugt. Diese Daten werden sodann in AUTHCODE 56 gespeichert. Als Nächstes wird der aktuelle Zeitstempel in AUTHCODE_TIMESTAMP 58 gespeichert. Anschließend wird die nicht umkehrbare MD5-Quersummenfunktion vorzugsweise auf die Verkettung der in AUTHCODE 56 und AUTHCODE_TIMESTAMP 58 enthaltenen Daten angewandt (die in AUTHCODE_TIMESTAMP 58 enthaltenen Daten werden an die in AUTHCODE 56 enthaltenen Daten angehängt). Alternativ kann eine andere als die oben beschriebene Hash-Funktion verwendet werden. Das Ergebnis der MD5-Quersummenfunktion wird sodann im Attribut NAME des Berechtigungscode-Cookie 42 gespeichert. Die restlichen Attribute des Berechtigungscode-Cookie 42 werden zugeordnet, und der Webserver 12 überträgt sodann das Berechtigungscode-Cookie 42 an den Web-Browser des Gastclient 44.
  • Ein anderer Komponentenprozess bearbeitet den Fall, wenn der Gastclient 44 beim Blättern in der Web-Site 20 entscheidet, ein registrierter Client 46 zu werden. Der Pseudocode wird im Folgenden als Prozess D gezeigt.
  • Figure 00310001
    Prozess D: Gastclient entscheidet, ein registrierter Client zu werden.
  • Der Prozess D beginnt mit dem Leiten des Gastclient 44 zu einer Registrierungswebseite, wo vertrauliche Daten bereitgestellt und eine Anmeldekennung und ein Passwort ausgewählt werden. Anschließend werden Daten aus dem Attribut NAME des Sitzungscookie 40 entnommen und zum Zugreifen auf den korrekten Gastclienteintrag in der Tabelle 36 USER_SESSION verwendet. Der Wert in USER_TYPE 60 wird sodann zu "registriert" oder einem anderen geeigneten Kennzeichner für den Gastclient 44 geändert. Der Gastclient 44 wird nun als registrierter Client 460 betrachtet. Der Zeitstempel in SESSION_TIMESTAMP 54 wird aktualisiert. Das Sitzungscookie 40 wird sodann unter Verwendung der neuen in SESSION_TIMESTAMP 54 enthaltenen Daten geändert. Falls das Berechtigungscode-Cookie 42 nicht vorhanden ist, wird es als Nächstes erzeugt, andernfalls wird es geändert. Das Berechtigungscode-Cookie 42 wird sodann geändert, indem der in AUTHCODE_TIMESTAMP 58 gespeicherte Zeitstempel aktualisiert und dieser aktualisierte Zeitstempel zum Ändern des Attributs NAME des Berechtigungscode-Cookies 42 verwendet wird. Das Sitzungscookie 40 und das Berechtigungscode-Cookie 42 werden sodann an den Web-Browser des registrierten Client 46 übertragen. Die Anmeldekennung, das Passwort und andere wichtige, vom registrierten Client 46 eingegebene Daten werden sodann aus den bei der Registrierungswebseite eingegebenen Daten erhalten. Die Anmeldekennung wird in LOGIN_ID 62 in der Tabelle 36 USER_SESSION und das Passwort in PASSWORD 64 in der Tabelle 36 USER_SESSION gespeichert. Andere erhaltene Daten werden anderer Stelle in der Datenbank 24 gespeichert.
  • Ein anderer Komponentenprozess bearbeitet die Situation, in der sich ein bereits bei der Web-Site 20 registrierter Gastclient 44 anmeldet, um als ein registrierter Client 46 erkannt zu werden. Der Pseudocode wird als Prozess E gezeigt.
  • Figure 00320001
    Prozess E: Gastclient meldet sich als registrierter Client an.
  • Der Prozess E beginnt, wenn der Gastclient 44 zu einer Anmeldewebseite auf der Web-Site 20 geleitet wird, wo er seine Anmeldekennung und sein Passwort eingibt. Falls die Anmeldekennung und das Passwort ungültig sind, benachrichtigt der Webserver 12 den Gastclient 44, dass entweder eine ungültige Anmeldekennung und/oder ein ungültiges Passwort eingegeben wurde und dass der Gastclient 44 diese Daten erneut eingeben muss. Wie Fachleute verstehen werden, kann der Anmeldeprozess nach einer bestimmten Anzahl von ungültigen Versuchen beendet werden. Wenn die korrekte Anmeldekennung und das korrekte Passwort eingegeben wurden, werden diese zum Suchen des korrekten Gastclienteintrags in der Tabelle 36 USER_SESSION verwendet. Als Nächstes wird der Zeitstempel in SESSION_TIMESTAMP 54 aktualisiert, und anschließend wird das Sitzungscookie 40 auf der Grundlage dieses neuen Zeitstempelwertes aktualisiert. Als Nächstes wird der Zeitstempel in AUTHCODE_TIMESTAMP 58 aktualisiert, und anschließend wird das Berechtigungscode-Cookie 42 auf der Grundlage dieses neuen Zeitstempelwertes aktualisiert. Als Nächstes werden das Sitzungscookie 40 und das Berechtigungscode-Cookie 42 an den Web-Browser des Gastclient 44 übertragen. Der letzte Schritt ist ein optionaler Schritt zum Löschen des Gastclientkontos, das beim ersten Zugriff auf die Web-Site 20 für den Gastclient 44 eingerichtet wurde. Alternativ kann der Verwalter der Web-Site 20 andere I Dienstprogramme verwenden, die vom Webserver-Softwarepaket 18 bereitgestellt werden, um veraltete Gastclientkonten zu entfernen (d.h. Konten, die eine festgelegte Zeitspanne, z.B. zwei Tage, nicht verwendet werden).
  • Ein anderer Komponentenprozess wird zur Überprüfung des Sitzungscookie 40 verwendet, wenn der Webclient 16 den Zugriff auf eine nichtsichere Webseite 34 auf der Web-Site 20 anfordert. Dieser Prozess stellt sicher, dass das Sitzungscookie 40 nicht gefälscht wurde. Der Pseudocode wird im Folgenden als Prozess F gezeigt.
  • Figure 00340001
    Prozess F: Sitzungscookie-Überprüfung.
  • Der Prozess F beginnt mit der Entnahme von Daten aus dem Attribut NAME des Sitzungscookie 40, die den in USER_ID 50 gespeicherten Daten entsprechen. Diese Daten werden sodann zum Suchen des Eintrags für den Webclient 16 in der Tabelle 36 USER_SESSION verwendet, um die gespeicherten Werte in SESSION_ID 52 und SESSION_TIMESTAMP 54 zu erhalten. Diese gespeicherten Werte werden zum Erneuern des Sitzungscookie 40 verwendet. Das erneuerte Sitzungscookie 40 wird sodann mit dem vom Webclient 16 bereitgestellten Sitzungscookie 40 verglichen. Falls der Vergleich eine Übereinstimmung ergibt, wird die Anforderung des Webclient 16 verarbeitet. Falls der Vergleich jedoch keine Übereinstimmung ergibt, ist der Webclient 16 möglicherweise ein unberechtigter Benutzer, folglich weist der Webserver 12 die Anforderung des Webclient 16 zum Zugriff auf die nichtsichere-Webseite 34 zurück und überträgt eine Fehlerwebseite an den Web-Browser des Webclient 16.
  • Ein anderer Komponentenprozess wird zur Überprüfung des Berechtigungscode-Cookie 42 verwendet, wenn der Webclient 16 den Zugriff auf eine sichere Webseite 32 auf der Web-Site 20 anfordert. Durch diesen Prozess wird sichergestellt, dass das Berechtigungscode-Cookie 42 nicht gefälscht wurde. In diesem Prozess verwendet der Webclient 16 das Übertragungsprotokoll HTTPS und hat sowohl das Sitzungscookie 40 als auch das Berechtigungscode-Cookie 42. Der Pseudocode wird im Folgenden als Prozess G gezeigt.
  • Figure 00350001
    Prozess G: Überprüfung des Berechtigungscode-Cookie.
  • Der Prozess G beginnt mit dem Entnehmen von Daten aus dem Attribut NAME des Sitzungscookie 40, die den in USER_ID 50 gespeicherten Daten entsprechen. Diese Daten werden sodann zum Suchen des Eintrags für den Webclient 16 in der Tabelle 36 USER_SESSION verwendet, um die in AUTHCODE 56 und AUTHCODE_TIMESTAMP 58 gespeicherten Werte zu erhalten. Diese gespeicherten Werte werden zum Erneuern des Berechtigungscode-Cookie 42 verwendet. Das erneuerte Berechtigungscode-Cookie 42 wird sodann mit dem vom Webclient 16 bereitgestellten Berechtigungscode-Cookie 42 verglichen. Falls der Vergleich eine Übereinstimmung ergibt, verarbeitet der Webserver 12 die Anforderung des Webclient 16. Falls der Vergleich jedoch keine Übereinstimmung ergibt, ist der Webclient 16 möglicherweise ein unberechtigter Benutzer, folglich weist der Webserver 12 die Anforderung des Webclient 16 nach einem Zugriff auf eine sichere Webseite 32 zurück und überträgt eine Fehlerwebseite an den Web-Browser des Webclient 16.
  • Ein anderer Komponentenprozess wird verwendet, um den Fall zu bearbeiten, wenn sich der registrierte Client 46 von der Web-Site 20 abmeldet. Der Pseudocode wird im Folgenden als Prozess H gezeigt.
  • Figure 00360001
    Prozess H: Registrierter Client meldet sich ab.
  • Der Prozess H beginnt, wenn der registrierte Client 46 entscheidet, sich von der Web-Site 20 abzumelden. Als Nächstes aktualisiert der Webserver 12 das Sitzungscookie 40 und das Berechtigungscode-Cookie 42, so dass alle Attribute NULL-Werte enthalten. Anschließend überträgt der Webserver 12 das Sitzungscookie 40 und das Berechtigungscode-Cookie 42 an den Web-Browser des registrierten Client 46. Alternativ kann sich der registrierte Client 46 nicht abmelden und einfach eine andere Web-Site besuchen, wobei in diesem Fall sowohl das Sitzungscookie 40 als auch das Berechtigungscode-Cookie 42 im Speicher des vom registrierten Client 46 verwendeten Web-Browser bleiben. Falls der registrierte Client 46 die Web-Site 20 erneut besucht, rücküberträgt dessen Web-Browser das Sitzungscookie 40 an den Webserver 12. Alternativ kann der registrierte Client 46 seine Web-Browser-Anwendung einfach verlassen, ohne sich von der Web-Site 20 abzumelden, wobei in diesem Fall das Sitzungscookie 40 und das Berechtigungscode-Cookie 42 zerstört werden, da sie vorzugsweise zeitweilige Cookies sind.
  • Ein anderer Komponentenprozess bearbeitet die Situation, in der ein registrierter Client 46 den Zugriff auf eine sichere Webseite 32 anfordert, jedoch kein Berechtigungscode-Cookie 42 besitzt. Der Pseudocode wird im Folgenden als Prozess I gezeigt.
  • Figure 00370001
    Prozess I: Registrierter Client greift ohne Berechtigungscode-Cookie auf sichere Webseite zu.
  • Der Prozess I beginnt, wenn der Webclient 16, der bereits bei der Web-Site 20 registriert (d.h. ein zuvor registrierter Webclient 16) ist, auf eine sichere Webseite 32 zuzugreifen versucht, sich jedoch noch nicht bei der Web-Site 20 angemeldet hat, um anzuzeigen, dass er ein registrierter Client 46 ist. Als Nächstes wird der zuvor registrierte Webclient 16 überprüft, um festzustellen, ob er ein Berechtigungscode-Cookie 42 aufweist. Da der zuvor registrierte Webclient 16 kein Berechtigungscode-Cookie 42 aufweist, wird er veranlasst, sich durch Eingabe seiner Anmeldekennung und seines Passwortes auf der Anmeldewebseite bei der Web-Site 20 anzumelden. Als Nächstes werden die Anmeldekennung und das Passwort überprüft. Falls die Überprüfung fehlschlägt, weist der Webserver 12 die Anforderung des zuvor registrierten Webclient 16 nach dem Zugriff auf eine sichere Webseite 32 zurück und überträgt eine Fehlerwebseite an den Web-Browser des zuvor registrierten Webclient 16. Falls die Anmeldekennung und das Passwort jedoch gültig sind, wird das Berechtigungscode-Cookie 42 erzeugt und an den Web-Browser des zuvor registrierten Webclient 16 übertragen. Der zuvor registrierte Webclient wird sodann als ein registrierter Client 46 erkannt. Der Anforderung des registrierten Client 46 nach dem Zugriff auf eine sichere Webseite 32 wird sodann stattgegeben.
  • In der Praxis gibt es drei allgemeine Verwendungsszenarios für die Web-Site 20 gemäß dem in der vorliegenden Erfindung dargelegten Sitzungsverwaltungs- und Berechtigungsschema. Im Allgemeinen greift jeder Webclient 16 auf die Web-Site 20 zu und ist während der gesamten Sitzung mit der Web-Site 20 ein Gastclient 44 (siehe 4a und 4b), oder der Webclient 16 greift auf die Web-Site 20 zu und wird ein registrierter Client 46 (siehe 5a, 5b und 5c), oder der Webclient 16 greift auf die Web-Site 20 zu, ist bereits registriert und meldet sich als ein registrierter Client 46 an (siehe 6a und 6b). Obwohl die 4a, 4b, 5a, 5b, 5c, 6a und 6b den Webclient 16 zeigen, wie er zuerst auf eine Vielzahl von nichtsicheren Webseiten 34 und anschließend auf eine Vielzahl von sicheren Webseiten 32 zugreift, ist zu beachten, dass auch das Gegenteil der Fall sein kann, d.h., der Webclient 16 kann zuerst auf eine Vielzahl von sicheren Webseiten 32 und anschließend auf eine Vielzahl von nichtsicheren Webseiten 34 zugreifen. Alternativ kann der Webclient 16 Anforderungen nach nichtsicheren Webseiten 34 und sicheren Webseiten 32 abwechseln. In der Praxis kann es viele Anwendungsfälle geben, der Einfachheit halber werden in den 6 bis 8 nur einige gezeigt.
  • Mit Bezugnahme auf die 4a und 4b beginnt das Szenario beim Schritt 80, in dem der Webclient 16 auf die Web-Site 20 zugreift. Standardmäßig ist der Webclient 16 als ein Gastclient 44 definiert. Als Nächstes werden im Schritt 82 ein Gastclientkonto in der Tabelle 36 USER_SESSION und ein Sitzungscookie 40 für den Gastclient 44 erstellt. Anschließend fordert der Gastclient 44 im Schritt 84 den Zugriff auf eine nichtsichere Webseite 34 an. Im Schritt 86 wird sodann das Sitzungscookie 40 überprüft. Falls das Sitzungscookie 40 ungültig ist, geht die Steuerung weiter zum Schritt 88, wo der Webserver 12 die Anforderung des Gastclient 44 nach dem Zugriff auf eine nichtsichere Webseite 34 zurückweist und eine Fehlerwebseite an den Web-Browser des Gastclient 44 überträgt. Falls das Sitzungscookie 40 gültig ist, geht die Steuerung zum Schritt 90, wo der Gastclient 44 auf die nichtsichere Webseite 34 zugreift. Anschließend kann der Gastclient 44 auf eine Anzahl von nichtsicheren Webseiten 34 zugreifen, wobei die Überprüfung des Sitzungscookie 40 bei jeder Zugriffsanforderung stattfindet. Schließlich fordert der Gastclient 44 im Schritt 94 den Zugriff auf eine sichere Webseite 32 an. Der Webserver 12 führt sodann im Schritt 95 eine Prüfung aus, um festzustellen, ob der Gastclient 44 HTTPS verwendet. Falls HTTPS nicht verwendet wird, benachrichtigt der Webserver 12 im Schritt 96 den Web-Browser des Gastclient 44, dass HTTPS verwendet werden muss. Falls keine HTTPS-Verbindung bestätigt wird, weist der Webserver 12 im Schritt 98 die Anforderung des Gastclient 44 nach dem Betrachten der sicheren Webseite 32 zurück und überträgt im Schritt 100 eine Fehlerwebseite an den Web-Browser des Gastclient 44. Falls der Gastclient 44 HTTPS verwendet, prüft der Webserver 12 im Schritt 102, ob der Gastclient 44 ein Berechtigungscode-Cookie 42 benötigt, indem er überprüft, ob in AUTHCODE 56 in der Tabelle 36 USER_SESSION ein Berechtigungscode vorhanden ist. Falls der Gastclient 44 bereits einen Berechtigungscode hat, geht die Steuerung weiter zum Schritt 104, wo der Webserver 12 die Anforderung des Gastclient 44 nach dem Zugriff auf die sichere Webseite 32 zurückweist, da der Gastclient 44 an dieser Stelle möglicherweise ein unberechtigter Benutzer ist, und eine Fehlerwebseite an den Web-Browser des Gastclient 44 überträgt. Falls der Gastclient 44 jedoch keinen Berechtigungscode aufweist, geht die Steuerung weiter zum Schritt 106, wo das Berechtigungscode-Cookie 42 erzeugt und an den Gastclient 44 übertragen wird. Der Gastclient 44 kann sodann auf die sichere Webseite 32 zugreifen. Als Nächstes fordert der Gastclient 44 im Schritt 108 den Zugriff auf eine andere sichere Webseite 32 auf der Web-Site 20 an, wobei das Berechtigungscode-Cookie 42 des Gastclient 44 im Schritt 110 überprüft wird, um festzustellen, ob es gültig ist. Falls das Berechtigungscode-Cookie 42 ungültig ist, geht der Prozess zum Schritt 112, wo der Webserver 12 die Anforderung nach dem Zugriff auf die sichere Webseite 32 zurückweist und eine Fehlerwebseite an den Web-Browser des Gastclient 44 überträgt. Falls das Berechtigungscode-Cookie 42 andererseits gültig ist, kann der Gastclient 44 im Schritt 114 auf die sichere Webseite 32 zugreifen. Der Gastclient 44 kann sodann auf eine Anzahl von anderen sicheren Webseiten 32 zugreifen, wobei bei jeder Zugriffsanforderung eine Überprüfung des Berechtigungscode-Cookie 42 stattfindet. Als Nächstes tätigt der Gastclient 44 im Schritt 118 einige Einkäufe und bezahlt im Schritt 120 alle eingekauften Waren und stellt die Versanddaten bereit. Anschließend verlässt der Gastclient 44 im Schritt 122 die Web-Site 20, indem er einfach seinen Web-Browser schließt oder auf eine andere Web-Site zugreift. Sobald der Web-Browser des Gastclient 44 geschlossen worden ist, werden das Sitzungscookie 40 und das Berechtigungscode-Cookie 42 gelöscht, da sie zeitweilige Cookies sind.
  • Mit Bezugnahme auf die 5a, 5b und 5c beginnt das Szenario beim Schritt 130, in dem der Webclient 16 auf die Web-Site 20 zugreift. Standardmäßig ist der Webclient 16 als ein Gastclient 44 definiert. Als Nächstes werden im Schritt 132 ein Gastclientkonto in der Tabelle 36 USER_SESSION und auch das Sitzungscookie 40 erstellt. Das Sitzungscookie 40 wird sodann an den Web-Browser des Gastclient 44 übertragen. Im Schritt 134 entscheidet der Gastclient 44 sodann, ein registrierter Client 46 zu werden. Der Webserver 12 führt sodann im Schritt 136 eine Prüfung aus, um festzustellen, ob der Gastclient 44 HTTPS verwendet. Falls nicht, geht der Prozess zum Schritt 138, wo der Webserver 12 den Web-Browser des Gastclient 44 benachrichtigt, dass HTTPS verwendet werden muss. Im Schritt 140 wird die Verwendung einer HTTPS-Verbindung überprüft. Falls HTTPS nicht verwendet wird, geht der Prozess zum Schritt 142, wo der Webserver 12 die Anforderung des Gastclient 44, ein registrierter Benutzer zu werden, zurückweist und eine Fehlerwebseite an den Web-Browser des Gastclient 44 überträgt. Falls HTTPS vom Gastclient 44 verwendet wird, geht die Steuerung weiter zum Schritt 144, wo das Berechtigungscode-Cookie 42 für den Gastclient 44 erzeugt wird. Als Nächstes wird der Gastclient 44 im Schritt 146 zu einer Registrierungswebseite auf der Web-Site 20 geleitet, wo er Clientdaten bereitstellt. Im Schritt 148 wird ein Konto für einen registrierten Client erstellt, und der Gastclient 44 wird ein registrierter Client 46. Der registrierte Client 46 kann sodann auf nichtsichere Webseiten 34 zugreifen, wie im Schritt 150 gezeigt wird, wobei der Webserver 12 an dieser Stelle im Schritt 152 das Sitzungscookie 40 des registrierten Client 46 überprüft. Falls das Sitzungscookie 40 ungültig ist, geht die Steuerung weiter zum Schritt 154, wo der Webserver 12 die Anforderung des registrierten Client 46 nach dem Zugriff auf die nichtsichere Webseite 34 zurückweist und eine Fehlerwebseite an den Web-Browser des registrierten Client 46 überträgt. Falls das Sitzungscookie 40 andererseits gültig ist, kann der registrierte Client 46 im Schritt 156 auf die nichtsichere Webseite 34 zugreifen. Anschließend kann der registrierte Client 46 weiterhin auf andere nichtsichere Webseiten 34 zugreifen, wobei bei jeder Zugriffsanforderung eine Überprüfung des Sitzungscookie 40 stattfindet. Im Schritt 160 fordert der registrierte Client 46 den Zugriff auf die sichere Webseite 32 an, woraufhin der Webserver 12 im Schritt 162 feststellt, ob der registrierte Client 46 HTTPS verwendet. Falls HTTPS nicht verwendet wird, benachrichtigt der Webserver 12 im Schritt 164 den Web-Browser des registrierten Client 46, auf HTTPS umzuschalten. Im Schritt 166 wird sodann die Verwendung von HTTPS überprüft. Falls der registrierte Client 46 kein HTTPS verwendet, geht der Prozess zum Schritt 168, wo der Webserver 12 die Anforderung des registrierten Client 46 nach dem Zugriff auf die sichere Webseite 32 zurückweist und eine Fehlerwebseite an den Web-Browser des registrierten Client 46 überträgt. Falls andererseits HTTPS verwendet wird, geht die Steuerung weiter zum Schritt 170, wo der Webserver 12 das Berechtigungscode-Cookie 42 überprüft. Falls, das Berechtigungscode-Cookie 42 ungültig ist, geht der Prozess zum Schritt 172, wo der Webserver 12 die Anforderung des registrierten Client 46 nach dem Zugriff auf die sichere Webseite 32 zurückweist und eine Fehlerwebseite an den Web-Browser des registrierten Client 46 überträgt. Falls das Berechtigungscode-Cookie 42 andererseits gültig ist, kann der registrierte Client 46 im Schritt 174 auf die sichere Webseite 32 zugreifen. Anschließend kann der registrierte Client 46 weiterhin auf eine Anzahl von sicheren Webseiten 32 zugreifen, wobei bei jeder Zugriffsanforderung eine Überprüfung des Berechtigungscode-Cookie 42 stattfindet. Außerdem kann der registrierte Client 46 Einkäufe tätigen, wie im Schritt 178 zu sehen ist. Falls der registrierte Client 46 Einkäufe tätigt, bezahlt er im Schritt 180 für die Einkäufe, und der Webserver 12 speichert Daten über die getätigten Einkäufe in der Datenbank 24. Als Nächstes meldet sich der registrierte Client 46 im Schritt 182 von der Web-Site 20 ab, greift auf eine andere Web-Site zu oder verlässt einfach seine Web-Browser-Anwendung. Unabhängig von der vom registrierten Client 46 getroffenen Wahl werden das Sitzungscookie 40 und das Berechtigungscode-Cookie 42 zerstört, sobald der registrierte Client 46 seine Web-Browser-Anwendung verlassen hat, da sie vorzugsweise als zeitweilige Cookies definiert werden.
  • Mit Bezugnahme auf die 6a und 6b beginnt das Szenario beim Schritt 190, in dem der Webclient 16, der sich bereits bei der Web-Site 20 registriert hat, auf diese zugreift. Der Webclient 16 wird standardmäßig als Gastclient 44 definiert. Anschließend wird ein Gastclientkonto in der Tabelle 36 USER_SESSION erstellt, und das Sitzungscookie 40 wird erzeugt und an den Gastclient 44 übertragen. Der Gastclient 44 entscheidet sodann im Schritt 192, sich anzumelden, wobei der Webserver 12 an dieser Stelle im Schritt 194 feststellen muss, ob der Gastclient 44 HTTPS verwendet. Falls nicht, benachrichtigt der Webserver 12 im Schritt 196 den Web-Browser des Gastclient 44, dass HTTPS verwendet werden muss. Im Schritt 198 wird die Verwendung von HTTPS überprüft. Falls HTTPS nicht verwendet wird, geht der Prozess zum Schritt 200, wo der Webserver 12 die Anforderung des Gastclient 44 nach dem Anmelden zurückweist und eine Fehlerwebseite an den Web-Browser des Gastclient 44 überträgt. Falls der Gastclient 44 andererseits HTTPS verwendet, geht der Prozess zum Schritt 202, wo das Berechtigungscode-Cookie 42 erzeugt oder aktualisiert und an den Web-Browser des Gastclient 44 übertragen wird. Als Nächstes meldet sich der Gastclient 44 im Schritt 204 an und wird zum registrierten Client 46. Im Schritt 206 kann der registrierte Client 46 sodann auf eine nichtsichere Webseite 34 auf der Web-Site 20 zugreifen, wobei der Webserver 12 an dieser Stelle im Schritt 208 das Sitzungscookie 40 überprüft. Falls die Überprüfung fehlschlägt, geht der Prozess zum Schritt 210, wo der Webserver 12 die Anforderung des registrierten Client 46 nach dem Zugriff auf die nichtsichere Webseite 34 zurückweist und eine Fehlerwebseite an den Web-Browser des registrierten Client 46 überträgt. Falls das Sitzungscookie 40 andererseits gültig ist, geht der Prozess zum Schritt 212, wo der registrierte Client 46 auf die nichtsichere Webseite 34 zugreift. Anschließend kann der registrierte Client 46 weiterhin auf eine Anzahl von nichtsicheren Webseiten 34 zugreifen, wobei bei jeder Zugriffsanforderung eine Überprüfung des Sitzungscookie 40 stattfindet. Als Nächstes fordert der registrierte Client 46 im Schritt 216 den Zugriff auf eine sichere Webseite 32 an. Im Schritt 218 führt der Webserver 12 sodann eine Prüfung aus, um festzustellen, ob der registrierte Client 46 HTTPS verwendet. Falls HTTPS nicht verwendet wird, benachrichtigt der Webserver 12 im Schritt 220 den registrierten Client 46, dass HTTPS verwendet werden muss. Im Schritt 222 wird die Verwendung von HTTPS überprüft. Falls kein HTTPS verwendet wird, geht der Prozess zum Schritt 224, wo der Webserver 12 die Anforderung des registrierten Client 46 nach dem Zugriff auf die sichere Webseite 32 zurückweist und eine Fehlerwebseite an den Web-Browser des registrierten Client 46 überträgt. Falls der registrierte Client 46 andererseits HTTPS verwendet, geht der Prozess zum Schritt 226, wo das Berechtigungscode-Cookie 42 überprüft wird. Falls die Überprüfung fehlschlägt, geht der Prozess zum Schritt 228, wo der Webserver 12 die Anforderung des registrierten Client 46 nach dem Zugriff auf die sichere Webseite 32 zurückweist und eine Fehlerwebseite an den Web-Browser des registrierten Client 46 überträgt. Falls die Überprüfung andererseits erfolgreich ist, kann der registrierte Client 46 im Schritt 230 auf die sichere Webseite 32 zugreifen. Außerdem kann der registrierte Client 46 Einkäufe tätigen und/oder sein Bestellprotokoll prüfen, wie im Schritt 234 gezeigt wird. Falls Einkäufe getätigt werden, bezahlt der registrierte Client 46 für diese Einkäufe, und der Webserver 12 speichert im Schritt 236 Daten über diese Einkäufe in der Datenbank 24. Anschließend kann der registrierte Client 46 die Web-Site 20 im Schritt 238 verlassen, indem er sich abmeldet, auf eine andere Web-Site zugreift oder einfach seine Web-Browser-Anwendung verlässt. Unabhängig von der vom registrierten Client 46 getroffenen Wahl werden das Sitzungscookie 40 und des Berechtigungscode-Cookie 42 zerstört, sobald der registrierte Client 46 seine Web-Browser-Anwendung verlässt, da sie vorzugsweise als zeitweilige Cookies definiert werden.
  • Das in der vorliegenden Erfindung realisierte System und das Verfahren sind so gestaltet, dass der Zugriff auf sensitive Daten über die Web-Site 20 oder den Webclient 16 durch unberechtigte Benutzer verhindert wird. Falls der Webclient 16 beispielsweise ein Gastclient 44 ohne Berechtigungscode-Cookie 42 ist, d.h., der Gastclient 44 hat nicht auf irgendeine sichere Webseite 32 zugegriffen, werden dem Gastclient 44 keine sicheren Daten zugeordnet. Der unberechtigte Benutzer kann in diesem Fall nichts Schädliches unternehmen. Eine andere Situation läge vor, wenn der Webclient 16 ein Gastclient 44 mit einem Berechtigungscode-Cookie 42 ist (d.h., der Webclient 16 hat bereits auf eine sichere Webseite 32 zugegriffen). In diesem Fall schlägt der Versuch eines unberechtigten Benutzers fehl, da dieser lediglich das Sitzungscookie 40 verwenden kann, kein Berechtigungscode-Cookie 42 hat und der Webserver 12 bereits weiß, dass der Gastclient 44 ein Berechtigungscode-Cookie 42 hat (indem er AUTHCODE 56 in der Tabelle 36 USER_SESSION überprüft). Eine andere Situation läge vor, wenn der Webclient 16 ein registrierter Client 46 ist und ein unberechtigter Benutzer versucht, das Sitzungscookie 40 zu verwenden, um in sicheren Webseiten 32 zu blättern. Da der unberechtigte Benutzer kein Berechtigungscode-Cookie 42 hat, leitet der Webserver 12 diesen zur Anmeldewebseite um, wobei der unberechtigte Benutzer sich an dieser Stelle nicht anmelden kann, da er weder die Anmeldekennung noch das Passwort des registrierten Client 46 hat.
  • Zusammenfassend gesagt ermöglicht die vorliegende Erfindung sowohl die Verwendung eines nichtsicheren (HTTP) als auch eines sicheren (HTTPS) Übertragungsprotokolls, wenn ein Webclient auf eine nichtsichere bzw. eine sichere Webseite auf einer Web-Site zugreift. Dies schafft die Voraussetzungen für eine sichere und leistungsfähige Sitzung zwischen dem Webclient und der Web-Site. Außerdem werden zwei verschiedene Cookies verwendet, ein Sitzungscookie (zur Sitzungsverwaltung) und ein Berechtigungscode-Cookie (zur Berechtigungsüberprüfung). Das Sitzungscookie ist außerdem so gestaltet, dass es keine sensitiven Daten über den Webclient enthält. Schließlich ermöglicht die Web-Site den Zugriff eines Gastclient oder eines registrierten Client, wodurch die Flexibilität und der Anklang, den die Web-Site bei Benutzern findet, erhöht werden.
  • Es sei darauf hingewiesen, dass es trotz der Beschreibung der vorliegenden Erfindung im Kontext einer Web-Site des elektronischen Handels nicht die Absicht des Erfinders ist, die Verwendung der vorliegenden Erfindung auf die ausschließliche Verwendung im elektronischen Handel zu begrenzen. Beispielsweise kann die vorliegende Erfindung zum Sichern des Datenaustauschs für Funktionen verwendet werden, die nicht aus dem Bereich des elektronischen Handels stammen, zum Beispiel für Online-Abstimmungen, die Ausgabe von Kreditkartennummern, Online-Aktienhandel und dergleichen.
  • Außerdem kann die vorliegende Erfindung problemlos an die Verwendung von Name-Werte-Paaren zur Berechtigungsüberprüfung und Sitzungsverwaltung zwischen der Web-Site und dem Webclient angepasst werden, indem der Webserver 12 zum Erzeugen eines Name-Werte-Paars für eine Sitzung und zum Weiterleiten desselben an jede Webseite 22 auf der Web-Site 20 veranlasst wird. Außerdem erzeugt der Webserver 12 ein Name-Werte-Paar als Berechtigungscode und leitet dieses an jede sichere Webseite 32 auf der Web-Site 20 weiter.

Claims (23)

  1. Verfahren zur sicheren Sitzungsverwaltung und Berechtigungsüberprüfung zwischen einer Web-Site (20) und einem Webclient (16), wobei die Web-Site sichere (32) und nichtsichere Webseiten (28, 34) aufweist, wobei das verfahren die folgenden Schritte umfasst: a) Verwenden (82, 86) eines nichtsicheren Übertragungsprotokolls und eines Sitzungscookie (40), wenn der Webclient den Zugriff auf die nichtsicheren Webseiten anfordert; und b) Verwenden (106, 110) eines sicheren Übertragungsprotokolls und eines Berechtigungscode-Cookie (42), wenn der Webclient den Zugriff auf die sicheren Webseiten anfordert, gekennzeichnet durch c) Speichern eines Sitzungscodes (52) zur Erzeugung eines Sitzungscookie (40) und eines Berechtigungscodes (56) zur Erzeugung eines Berechtigungscode-Cookie (42) in einer einzigen Datenbanktabelle (36), und d) beim Wechsel zwischen Webseiten (28, 32, 34) Zugreifen auf eine Registertabelle (38), die eine Vielzahl von URL-Adressen (70) speichert, die jeweils auf eine entsprechende Webseite und eine entsprechende sichere/nichtsichere Markierung (72) zeigen, um das sichere oder nichtsichere Übertragungsprotokoll auszuwählen.
  2. Verfahren nach Anspruch 1, wobei das Verfahren außerdem die folgenden Schritte umfasst: e) Anfordern des Sitzungscookie (40) vom Webclient (16), wenn der Webclient den Zugriff auf die nichtsicheren Webseiten (28, 34) anfordert, und Überprüfen (86) des angeforderten Sitzungscookie; und f) Anfordern des Berechtigungscode-Cookie (42) vom Webclient (16), wenn der Webclient den Zugriff auf die sicheren Webseiten (32) anfordert, und Überprüfen (110) des angeforderten Berechtigungscode-Cookie.
  3. Verfahren nach Anspruch 1, wobei das Verfahren außerdem den Schritt des Ermöglichens (82) umfasst, dass der Webclient (16) ein Gastclient oder ein registrierter Client ist.
  4. Verfahren nach Anspruch 3, wobei das Verfahren außerdem das Erzeugen von gespeicherten Daten umfasst, zu denen im Sitzungscookie (40) enthaltene Daten (52), im Berechtigungscode-Cookie (42) enthaltenen Daten (56) und Daten (50) über den Webclient (16) gehören.
  5. Verfahren nach Anspruch 1, wobei das nichtsichere Übertragungsprotokoll HTTP ist.
  6. Verfahren nach Anspruch 1, wobei das sichere Übertragungsprotokoll HTTPS ist.
  7. Verfahren nach Anspruch 4, wobei das Sitzungscookie (40) einen Zeiger und einen verschlüsselten Teil enthält, wobei der Zeiger auf die gespeicherten Daten zeigt, wobei der verschlüsselte Teil einen Zufallsteil und einen Datumsteil aufweist.
  8. Verfahren nach Anspruch 7, wobei das Sitzungscookie (40) ein zeitweiliges Cookie oder ein dauerhaftes Cookie ist.
  9. Verfahren nach Anspruch 4, wobei das Berechtigungscode-Cookie (42) einen verschlüsselten Teil enthält, wobei der verschlüsselte Teil einen Zufallsteil und einen Datumsteil aufweist.
  10. Verfahren nach Anspruch 4, wobei das Berechtigungscode-Cookie (42) zeitweilig ist.
  11. Verfahren nach Anspruch 7, wobei das Überprüfen (86) des angeforderten Sitzungscookie (40) vom Webclient (16) die Verwendung der gespeicherten Daten beinhaltet, um ein zweites Sitzungscookie zu erzeugen und das zweite Sitzungscookie mit dem vom Webclient angeforderten Sitzungscookie zu vergleichen.
  12. Verfahren nach Anspruch 9, wobei das Überprüfen des angeforderten Berechtigungscode-Cookie (42) vom Webclient (16) das Verwenden der gespeicherten Daten zur Erzeugung eines zweiten Berechtigungscode-Cookie und das Vergleichen des zweiten Berechtigungscode-Cookie mit dem vom Webclient angeforderten Berechtigungscode-Cookie beinhaltet.
  13. System zur sicheren Sitzungsverwaltung und Berechtigungsüberprüfung zwischen einer Web-Site und einem Webclient, wobei das System einen Webserver, einen Webclient und einen Datenübertragungskanal umfasst, wobei der Webserver über den Datenübertragungskanal mit dem Webclient verbunden ist, wobei der Webserver eine Web-Site aufweist, wobei die Web-Site Folgendes enthält: a) sichere und nichtsichere Webseiten; b) ein nichtsicheres Übertragungsprotokoll und ein Sitzungscookie, um dem Webclient den Zugriff auf die nichtsicheren Webseiten zu ermöglichen; und c) ein sicheres Übertragungsprotokoll und ein Berechtigungscode-Cookie, um dem Webclient den Zugriff auf die sicheren Webseiten zu ermöglichen, wobei das System dadurch gekennzeichnet ist, dass es Folgendes umfasst: d) eine einzige Datenbanktabelle (36), die einen Sitzungscode (52) zur Erzeugung eines Sitzungscookie (40) und einen Berechtigungscode (56) zur Erzeugung eines Berechtigungscode-Cookie (42) speichert, und e) eine Registertabelle (38), die eine Vielzahl von URL-Adressen (70) speichert, die auf eine entsprechende Webseite und eine entsprechende sichere/nichtsichere Markierung (72) zeigen, um das sichere oder nichtsichere Übertragungsprotokoll auszuwählen.
  14. System nach Anspruch 13, wobei die Web-Site (20) außerdem Folgendes enthält: f) Überprüfungsmittel (18, 24) zum Überprüfen (86) des Sitzungscookie (40), wenn das Sitzungscookie vom Webclient angefordert wird; und g) Überprüfungsmittel (18, 24) zum Überprüfen des Berechtigungscode-Cookie (42), wenn das Berechtigungscode-Cookie vom Webclient angefordert wird.
  15. System nach Anspruch 14, wobei die Web-Site (20) ein Zugriffsmittel enthält, um es dem Webclient (16) zu ermöglichen (82), als ein Gastclient oder ein registrierter Client auf die Web-Site zuzugreifen.
  16. System nach Anspruch 15, wobei der Webserver ein Speichermittel (24) aufweist, das gespeicherte Daten über den Webclient, im Sitzungscookie (40) enthaltene Daten (52) und im Berechtigungscode-Cookie (42) enthaltene Daten (56) enthält.
  17. System nach Anspruch 18, wobei das nichtsichere Übertragungsprotokoll HTTP ist.
  18. System nach Anspruch 14, wobei das sichere Übertragungsprotokoll HTTPS ist.
  19. System nach Anspruch 15, wobei das Sitzungscookie (40) einen Zeiger und einen verschlüsselten Teil enthält, wobei der Zeiger auf die gespeicherten Daten zeigt, wobei der verschlüsselte Teil einen Zufallsteil und einen Datumsteil aufweist.
  20. System nach Anspruch 19, wobei das Sitzungscookie (40) ein zeitweiliges Cookie oder ein dauerhaftes Cookie ist.
  21. System nach Anspruch 16, wobei das Berechtigungscode-Cookie (42) einen verschlüsselten Teil enthält, wobei der verschlüsselte Teil einen Zufallsteil und einen Datumsteil enthält.
  22. System nach Anspruch 21, wobei das Berechtigungscode-Cookie (42) zeitweilig ist.
  23. In einem Computer verwendbares Medium, das ein computerlesbares Programmmittel umfasst, um einen Computer zum Ausführen eines Verfahrens nach irgendeinem der vorhergehenden Ansprüche 1 bis 12 zu veranlassen, wenn es im Computer ausgeführt wird.
DE60116903T 2000-11-30 2001-11-09 Gesicherte sitzungverwaltung und authentifizierung für websites Expired - Lifetime DE60116903T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CA2327078 2000-11-30
CA002327078A CA2327078C (en) 2000-11-30 2000-11-30 Secure session management and authentication for web sites
PCT/EP2001/012963 WO2002045370A2 (en) 2000-11-30 2001-11-09 Secure session management and authentication for web sites

Publications (2)

Publication Number Publication Date
DE60116903D1 DE60116903D1 (de) 2006-04-13
DE60116903T2 true DE60116903T2 (de) 2006-08-17

Family

ID=4167768

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60116903T Expired - Lifetime DE60116903T2 (de) 2000-11-30 2001-11-09 Gesicherte sitzungverwaltung und authentifizierung für websites

Country Status (9)

Country Link
US (1) US7216236B2 (de)
EP (1) EP1346548B1 (de)
JP (1) JP4056390B2 (de)
CN (1) CN100486243C (de)
AT (1) ATE316731T1 (de)
AU (1) AU2002217011A1 (de)
CA (1) CA2327078C (de)
DE (1) DE60116903T2 (de)
WO (1) WO2002045370A2 (de)

Families Citing this family (170)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7058817B1 (en) 1999-07-02 2006-06-06 The Chase Manhattan Bank System and method for single sign on process for websites with multiple applications and services
US8571975B1 (en) 1999-11-24 2013-10-29 Jpmorgan Chase Bank, N.A. System and method for sending money via E-mail over the internet
US7426530B1 (en) 2000-06-12 2008-09-16 Jpmorgan Chase Bank, N.A. System and method for providing customers with seamless entry to a remote server
US10185936B2 (en) 2000-06-22 2019-01-22 Jpmorgan Chase Bank, N.A. Method and system for processing internet payments
CA2342578A1 (en) * 2001-03-29 2002-09-29 Ibm Canada Limited-Ibm Canada Limitee Method and apparatus for security of a network server
DE10115895C1 (de) * 2001-03-30 2002-12-19 Siemens Ag Verfahren zur Erzeugung einer Darstellung für das Wiederfinden einer bereits aufgerufenen Informationsseite
US8849716B1 (en) 2001-04-20 2014-09-30 Jpmorgan Chase Bank, N.A. System and method for preventing identity theft or misuse by restricting access
US6741990B2 (en) * 2001-05-23 2004-05-25 Intel Corporation System and method for efficient and adaptive web accesses filtering
WO2002099598A2 (en) 2001-06-07 2002-12-12 First Usa Bank, N.A. System and method for rapid updating of credit information
US7054939B2 (en) * 2001-06-28 2006-05-30 Bellsouth Intellectual Property Corportion Simultaneous visual and telephonic access to interactive information delivery
US7266839B2 (en) 2001-07-12 2007-09-04 J P Morgan Chase Bank System and method for providing discriminated content to network users
US7058673B2 (en) * 2001-08-02 2006-06-06 America Online, Inc. Method for generating positive integer number in Chinese number system
JP2003108520A (ja) * 2001-09-28 2003-04-11 Canon Inc 情報提供サーバ、端末装置及びその制御方法並びに情報提供システム
US7275260B2 (en) 2001-10-29 2007-09-25 Sun Microsystems, Inc. Enhanced privacy protection in identification in a data communications network
US20030084171A1 (en) * 2001-10-29 2003-05-01 Sun Microsystems, Inc., A Delaware Corporation User access control to distributed resources on a data communications network
US20030084172A1 (en) * 2001-10-29 2003-05-01 Sun Microsystem, Inc., A Delaware Corporation Identification and privacy in the World Wide Web
US20030084302A1 (en) * 2001-10-29 2003-05-01 Sun Microsystems, Inc., A Delaware Corporation Portability and privacy with data communications network browsing
CA2466071C (en) 2001-11-01 2016-04-12 Bank One, Delaware, N.A. System and method for establishing or modifying an account with user selectable terms
US7315944B2 (en) * 2001-11-13 2008-01-01 Ericsson Inc. Secure handling of stored-value data objects
US7987501B2 (en) 2001-12-04 2011-07-26 Jpmorgan Chase Bank, N.A. System and method for single session sign-on
US20180165441A1 (en) 2002-03-25 2018-06-14 Glenn Cobourn Everhart Systems and methods for multifactor authentication
US20030208594A1 (en) * 2002-05-06 2003-11-06 Urchin Software Corporation. System and method for tracking unique visitors to a website
US7100049B2 (en) * 2002-05-10 2006-08-29 Rsa Security Inc. Method and apparatus for authentication of users and web sites
US7143174B2 (en) * 2002-06-12 2006-11-28 The Jpmorgan Chase Bank, N.A. Method and system for delayed cookie transmission in a client-server architecture
US7058660B2 (en) * 2002-10-02 2006-06-06 Bank One Corporation System and method for network-based project management
US8301493B2 (en) 2002-11-05 2012-10-30 Jpmorgan Chase Bank, N.A. System and method for providing incentives to consumers to share information
US7264411B2 (en) * 2002-11-06 2007-09-04 Matsushita Electric Industrial Co., Ltd. Print system, print device and print instruction method
US7233927B1 (en) * 2002-11-27 2007-06-19 Microsoft Corporation Method and system for authenticating accounts on a remote server
CN100518176C (zh) * 2002-12-02 2009-07-22 Sap股份公司 实现有状态网络应用的会话返回
US20040193605A1 (en) * 2003-03-25 2004-09-30 Weisman Mitchell T. Control of access to computers in a computer network
US7254542B2 (en) 2003-03-31 2007-08-07 International Business Machines Corporation Portal data passing through non-persistent browser cookies
US7299492B2 (en) * 2003-06-12 2007-11-20 International Business Machines Corporation Multi-level multi-user web services security system and method
CA2686265A1 (en) * 2003-06-17 2004-12-17 Ibm Canada Limited - Ibm Canada Limitee Multiple identity management in an electronic commerce site
US7490237B1 (en) * 2003-06-27 2009-02-10 Microsoft Corporation Systems and methods for caching in authentication systems
US8429249B2 (en) * 2003-07-11 2013-04-23 Ca, Inc. System and method for configuring servlet-based components as dynamic content components
US20050076230A1 (en) * 2003-10-02 2005-04-07 George Redenbaugh Fraud tracking cookie
DE10349015A1 (de) * 2003-10-17 2005-05-19 Siemens Ag Betriebsverfahren für einen Server und hiermit korrespondierende Gegenstände
US7886032B1 (en) * 2003-12-23 2011-02-08 Google Inc. Content retrieval from sites that use session identifiers
US20050166053A1 (en) * 2004-01-28 2005-07-28 Yahoo! Inc. Method and system for associating a signature with a mobile device
EP1870814B1 (de) 2006-06-19 2014-08-13 Texas Instruments France Verfahren und Vorrichtung für sicheren, nachfragebasierten Seitenabruf für Prozessorvorrichtungen
WO2006002068A2 (en) * 2004-06-15 2006-01-05 Passmark Security, Inc. Method and apparatus for making accessible a set of services to users
US8346593B2 (en) 2004-06-30 2013-01-01 Experian Marketing Solutions, Inc. System, method, and software for prediction of attitudinal and message responsiveness
US7487361B2 (en) * 2004-06-30 2009-02-03 International Business Machines Corporation Dynamic cache lookup based on dynamic data
JP2006023827A (ja) * 2004-07-06 2006-01-26 Fujitsu Ltd 文書データ管理装置、文書データ管理方法および文書データ管理プログラム
JP4710267B2 (ja) * 2004-07-12 2011-06-29 株式会社日立製作所 ネットワークシステム、データ中継装置、セッションモニタシステム、およびパケットモニタ中継装置
US7571322B2 (en) * 2004-08-10 2009-08-04 Microsoft Corporation Enhanced cookie management
JP2006092116A (ja) * 2004-09-22 2006-04-06 Canon Inc Webサーバ及びその制御方法
US8732004B1 (en) 2004-09-22 2014-05-20 Experian Information Solutions, Inc. Automated analysis of data to generate prospect notifications based on trigger events
US7848749B2 (en) * 2004-11-08 2010-12-07 Alcatel-Lucent Usa Inc. Method and apparatus for activating a dormant mobile unit in a distributed network
JP2006243924A (ja) * 2005-03-01 2006-09-14 Nec Corp ウェブサイトのための安全なセッション管理用プログラム、セッション管理方法、及びセッション管理システム
US20060224518A1 (en) * 2005-04-05 2006-10-05 International Business Machines Corporation Partial credential processing for limited commerce interactions
CA2648523C (en) 2005-04-21 2018-09-04 Securedpay Solutions, Inc. Portable handheld device for wireless order entry and real time payment authorization and related methods
US9407608B2 (en) 2005-05-26 2016-08-02 Citrix Systems, Inc. Systems and methods for enhanced client side policy
US9621666B2 (en) 2005-05-26 2017-04-11 Citrix Systems, Inc. Systems and methods for enhanced delta compression
US8943304B2 (en) 2006-08-03 2015-01-27 Citrix Systems, Inc. Systems and methods for using an HTTP-aware client agent
US9692725B2 (en) 2005-05-26 2017-06-27 Citrix Systems, Inc. Systems and methods for using an HTTP-aware client agent
US20070022015A1 (en) * 2005-07-22 2007-01-25 Tarinelli Gillian J System and method for the on-line purchase of products through a guest registration
US8583926B1 (en) 2005-09-19 2013-11-12 Jpmorgan Chase Bank, N.A. System and method for anti-phishing authentication
JP2007140901A (ja) * 2005-11-18 2007-06-07 Fuji Xerox Co Ltd 画像処理システム
US7765275B2 (en) * 2006-01-27 2010-07-27 International Business Machines Corporation Caching of private data for a configurable time period
JP2007213397A (ja) * 2006-02-10 2007-08-23 Fuji Xerox Co Ltd データ管理プログラム、データ管理装置およびプロトコルの切り替え方法
US20070204167A1 (en) * 2006-02-28 2007-08-30 Aladdin Knowledge Systems Ltd. Method for serving a plurality of applications by a security token
US20070204156A1 (en) * 2006-02-28 2007-08-30 Mark Jeghers Systems and methods for providing access to network resources based upon temporary keys
US20070299928A1 (en) * 2006-06-22 2007-12-27 Pooja Kohli Maintaining sessions using cookie updation
US8561155B2 (en) 2006-08-03 2013-10-15 Citrix Systems, Inc. Systems and methods for using a client agent to manage HTTP authentication cookies
EP2070297B1 (de) * 2006-08-03 2019-05-22 Citrix Systems Inc. Systeme und verfahren zur verwendung eines http-bewussten client-agenten
US8036979B1 (en) 2006-10-05 2011-10-11 Experian Information Solutions, Inc. System and method for generating a finance attribute from tradeline data
US10110687B2 (en) * 2006-10-06 2018-10-23 International Business Machines Corporation Session based web usage reporter
CA2662098A1 (en) * 2006-10-23 2008-05-02 Real Enterprise Solutions Development B.V. Methods, programs and a system of providing remote access
US20080141352A1 (en) * 2006-12-11 2008-06-12 Motorola, Inc. Secure password distribution to a client device of a network
US8079067B2 (en) * 2007-01-05 2011-12-13 Seiko Epson Corporation Streaming content in guest mode
US9912766B2 (en) * 2007-03-23 2018-03-06 Yahoo Holdings, Inc. System and method for identifying a link and generating a link identifier for the link on a webpage
JP4946564B2 (ja) * 2007-03-27 2012-06-06 富士通株式会社 認証処理方法及びシステム
US8285656B1 (en) 2007-03-30 2012-10-09 Consumerinfo.Com, Inc. Systems and methods for data verification
US20080262937A1 (en) * 2007-04-18 2008-10-23 Kerry Wayne Willis Method and system for performing automated group purchasing
US8473735B1 (en) 2007-05-17 2013-06-25 Jpmorgan Chase Systems and methods for managing digital certificates
US8452882B2 (en) * 2007-05-18 2013-05-28 Red Hat, Inc. Method and an apparatus to validate a web session in a proxy server
US8489740B2 (en) * 2007-05-18 2013-07-16 Red Hat, Inc. Method and an apparatus to generate message authentication codes at a proxy server for validating a web session
US20080294540A1 (en) 2007-05-25 2008-11-27 Celka Christopher J System and method for automated detection of never-pay data sets
US8266062B2 (en) * 2007-06-27 2012-09-11 Microsoft Corporation Server side reversible hash for telephone-based licensing mechanism
CN101127603B (zh) * 2007-08-16 2010-08-04 中兴通讯股份有限公司 一种实现门户网站单点登录的方法及ims客户端
US8543638B2 (en) * 2007-09-24 2013-09-24 Microsoft Corporation Security system for a browser-based environment
US20090089311A1 (en) * 2007-09-28 2009-04-02 Yahoo! Inc. System and method for inclusion of history in a search results page
US7996521B2 (en) 2007-11-19 2011-08-09 Experian Marketing Solutions, Inc. Service for mapping IP addresses to user segments
US8997076B1 (en) 2007-11-27 2015-03-31 Google Inc. Auto-updating an application without requiring repeated user authorization
US7970946B1 (en) * 2007-11-27 2011-06-28 Google Inc. Recording and serializing events
US8533852B2 (en) * 2007-12-19 2013-09-10 The Directv Group, Inc. Method and system for securely communicating between a primary service provider and a partner service provider
US9137018B2 (en) * 2007-12-19 2015-09-15 The Directv Group, Inc. Method and system for providing a generic program guide data from a primary content provider to a user network device through a partner service provider
US8453251B2 (en) * 2007-12-19 2013-05-28 The Directv Group, Inc. Method and system for securely communicating between a user network device, a primary service provider and a partner service provider
US8621646B2 (en) * 2007-12-19 2013-12-31 The Directv Group, Inc. Method and system for authenticating a user receiving device into a primary service provider system to communicate with a partner service provider
US8321682B1 (en) 2008-01-24 2012-11-27 Jpmorgan Chase Bank, N.A. System and method for generating and managing administrator passwords
WO2009094657A1 (en) 2008-01-26 2009-07-30 Citrix Systems, Inc. Systems and methods for fine grain policy driven cookie proxying
US8229969B1 (en) * 2008-03-04 2012-07-24 Open Invention Network Llc Maintaining web session data spanning multiple application servers in a session database
CN101251858B (zh) * 2008-03-12 2010-04-14 腾讯科技(深圳)有限公司 多页面浏览器中数据管理的方法及浏览器
GB2459529A (en) * 2008-04-28 2009-11-04 Ice Organisation Online transaction authentication using two servers
US8103607B2 (en) * 2008-05-29 2012-01-24 Red Hat, Inc. System comprising a proxy server including a rules engine, a remote application server, and an aspect server for executing aspect services remotely
US8312033B1 (en) 2008-06-26 2012-11-13 Experian Marketing Solutions, Inc. Systems and methods for providing an integrated identifier
US8438622B2 (en) * 2008-07-10 2013-05-07 Honesty Online, Llc Methods and apparatus for authorizing access to data
US8204180B1 (en) * 2008-08-08 2012-06-19 Intervoice Limited Partnership Systems and methods for preventing sensitive information from being communicated into a non-secure environment
US9262147B1 (en) 2008-12-30 2016-02-16 Google Inc. Recording client events using application resident on removable storage device
US7941550B1 (en) * 2009-02-12 2011-05-10 Sprint Communications Company L.P. Multiple cookie handling
WO2010132492A2 (en) 2009-05-11 2010-11-18 Experian Marketing Solutions, Inc. Systems and methods for providing anonymized user profile data
US8195818B2 (en) * 2009-06-22 2012-06-05 Oracle International Corporation Enforcing communication security for selected resources
US9608826B2 (en) 2009-06-29 2017-03-28 Jpmorgan Chase Bank, N.A. System and method for partner key management
US8924553B2 (en) * 2009-08-31 2014-12-30 Red Hat, Inc. Multifactor validation of requests to thwart cross-site attacks
US8775818B2 (en) * 2009-11-30 2014-07-08 Red Hat, Inc. Multifactor validation of requests to thwart dynamic cross-site attacks
US8904521B2 (en) * 2009-11-30 2014-12-02 Red Hat, Inc. Client-side prevention of cross-site request forgeries
US8850219B2 (en) * 2010-05-13 2014-09-30 Salesforce.Com, Inc. Secure communications
US9152727B1 (en) * 2010-08-23 2015-10-06 Experian Marketing Solutions, Inc. Systems and methods for processing consumer information for targeted marketing applications
JP5669497B2 (ja) * 2010-09-22 2015-02-12 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、及びプログラム
US9147042B1 (en) 2010-11-22 2015-09-29 Experian Information Solutions, Inc. Systems and methods for data verification
US9965613B2 (en) * 2010-12-03 2018-05-08 Salesforce.Com, Inc. Method and system for user session discovery
CN103392320B (zh) 2010-12-29 2016-08-31 思杰系统有限公司 对加密项目进行多层标记以提供额外的安全和有效的加密项目确定的系统和方法
US8661519B2 (en) 2011-06-03 2014-02-25 Microsoft Corporation Redirection using token and value
JP5677899B2 (ja) * 2011-06-16 2015-02-25 株式会社三菱東京Ufj銀行 情報処理装置及び情報処理方法
US8955078B2 (en) 2011-06-30 2015-02-10 Cable Television Laboratories, Inc. Zero sign-on authentication
FR2985400B1 (fr) * 2012-01-03 2013-12-20 Alcatel Lucent Transmission securisee de donnees
US8949952B2 (en) * 2012-04-25 2015-02-03 Cisco Technology, Inc. Multi-stack subscriber sign on
US9705729B2 (en) 2012-06-01 2017-07-11 Dell Products L.P. General client engine with load balancing for client-server communication
CN102769625A (zh) * 2012-07-25 2012-11-07 亿赞普(北京)科技有限公司 客户端Cookie信息获取方法和装置
CN102970297B (zh) * 2012-11-27 2015-03-04 飞天诚信科技股份有限公司 一种行程记录方法
US9697263B1 (en) 2013-03-04 2017-07-04 Experian Information Solutions, Inc. Consumer data request fulfillment system
US9533213B2 (en) * 2013-03-14 2017-01-03 Chris M. Clark Web-based scoring system for golf tournaments
US9419957B1 (en) 2013-03-15 2016-08-16 Jpmorgan Chase Bank, N.A. Confidence-based authentication
JP6128958B2 (ja) 2013-05-28 2017-05-17 キヤノン株式会社 情報処理サーバーシステム、制御方法、およびプログラム
US10193993B2 (en) 2013-05-30 2019-01-29 Ebay Inc. Systems and methods of token piggybacking
US9300669B2 (en) 2013-06-14 2016-03-29 Dell Products L.P. Runtime API framework for client-server communication
US9407725B2 (en) 2013-06-14 2016-08-02 Dell Products L.P. Generic transcoding service for client-server communication
US9716740B2 (en) * 2013-06-14 2017-07-25 Dell Products L.P. Web-based transcoding to clients for client-server communication
KR101492821B1 (ko) 2013-07-30 2015-02-12 캠프모바일 주식회사 Http 페이지로 안전하게 키를 전달하기 위한 키 전달 방법 및 시스템
EP2849110A1 (de) * 2013-09-13 2015-03-18 Gemalto SA Server mit unvorhersagbaren, verschlüsselten Cookie-Namen
CN103577585B (zh) * 2013-11-08 2018-02-23 北京国双科技有限公司 互联网中用户的标识方法和装置
US10102536B1 (en) 2013-11-15 2018-10-16 Experian Information Solutions, Inc. Micro-geographic aggregation system
US9529851B1 (en) 2013-12-02 2016-12-27 Experian Information Solutions, Inc. Server architecture for electronic data quality processing
US10148726B1 (en) 2014-01-24 2018-12-04 Jpmorgan Chase Bank, N.A. Initiating operating system commands based on browser cookies
US10262362B1 (en) 2014-02-14 2019-04-16 Experian Information Solutions, Inc. Automatic generation of code for attributes
US9576030B1 (en) 2014-05-07 2017-02-21 Consumerinfo.Com, Inc. Keeping up with the joneses
US9929995B2 (en) * 2014-05-21 2018-03-27 Go Daddy Operating Company, LLC Third party messaging system for monitoring and managing domain names and websites
US9646104B1 (en) 2014-06-23 2017-05-09 Amazon Technologies, Inc. User tracking based on client-side browse history
US9712520B1 (en) * 2015-06-23 2017-07-18 Amazon Technologies, Inc. User authentication using client-side browse history
US10182046B1 (en) 2015-06-23 2019-01-15 Amazon Technologies, Inc. Detecting a network crawler
US11257117B1 (en) 2014-06-25 2022-02-22 Experian Information Solutions, Inc. Mobile device sighting location analytics and profiling system
US10242019B1 (en) 2014-12-19 2019-03-26 Experian Information Solutions, Inc. User behavior segmentation using latent topic detection
US9614816B2 (en) * 2015-03-23 2017-04-04 Oracle International Corporation Dynamic encryption for tunneled real-time communications
US10290022B1 (en) 2015-06-23 2019-05-14 Amazon Technologies, Inc. Targeting content based on user characteristics
US10243957B1 (en) * 2015-08-27 2019-03-26 Amazon Technologies, Inc. Preventing leakage of cookie data
US10218698B2 (en) * 2015-10-29 2019-02-26 Verizon Patent And Licensing Inc. Using a mobile device number (MDN) service in multifactor authentication
US9767309B1 (en) 2015-11-23 2017-09-19 Experian Information Solutions, Inc. Access control system for implementing access restrictions of regulated database records while identifying and providing indicators of regulated database records matching validation criteria
CN106844288B (zh) 2015-12-07 2022-03-22 创新先进技术有限公司 一种随机字符串生成方法及装置
CN107025563A (zh) * 2016-01-29 2017-08-08 福建天晴数码有限公司 追踪投放广告的方法及系统
WO2017149159A1 (en) * 2016-03-03 2017-09-08 Afilias Technologies Limited Counterfeit electronic device detection
CN107547468B (zh) * 2016-06-23 2020-03-03 广州市动景计算机科技有限公司 网络协议切换装置、方法及终端
WO2018039377A1 (en) 2016-08-24 2018-03-01 Experian Information Solutions, Inc. Disambiguation and authentication of device users
US10600108B2 (en) * 2016-09-26 2020-03-24 Target Brands, Inc. Web session security and computational load management
CN108153772A (zh) * 2016-12-05 2018-06-12 天脉聚源(北京)科技有限公司 一种免密码登录网页的方法和系统
CN116205724A (zh) 2017-01-31 2023-06-02 益百利信息解决方案公司 大规模异构数据摄取和用户解析
US10348701B2 (en) * 2017-03-02 2019-07-09 Citrix Systems, Inc. Protecting clients from open redirect security vulnerabilities in web applications
US10645177B2 (en) 2017-04-19 2020-05-05 International Business Machines Corporation Cookie based session timeout detection and management
CN107332821B (zh) * 2017-05-27 2020-11-13 北京奇虎科技有限公司 一种实现客户端与服务器之间通信的方法、装置和服务器
US11263283B1 (en) * 2018-06-22 2022-03-01 Proof of Concept LLC Method and system for asynchronous correlation of data entries in spatially separated instances of heterogeneous databases
CN109802925B (zh) * 2017-11-17 2021-10-29 阿里巴巴(中国)有限公司 一种公共WiFi接入的认证方法和系统
US11500948B1 (en) 2018-06-01 2022-11-15 Proof of Concept, LLC Method and system for asynchronous correlation of data entries in spatially separated instances of heterogeneous databases
US10963434B1 (en) 2018-09-07 2021-03-30 Experian Information Solutions, Inc. Data architecture for supporting multiple search models
CN111274516B (zh) * 2018-12-04 2024-04-05 阿里巴巴新加坡控股有限公司 页面展示方法、页面配置方法和装置
CN110619071B (zh) * 2019-08-06 2022-08-05 微梦创科网络科技(中国)有限公司 一种帐号的访问安全监测和处理方法及装置
US11941065B1 (en) 2019-09-13 2024-03-26 Experian Information Solutions, Inc. Single identifier platform for storing entity data
US11682041B1 (en) 2020-01-13 2023-06-20 Experian Marketing Solutions, Llc Systems and methods of a tracking analytics platform
US11165586B1 (en) * 2020-10-30 2021-11-02 Capital One Services, Llc Call center web-based authentication using a contactless card
US11880377B1 (en) 2021-03-26 2024-01-23 Experian Information Solutions, Inc. Systems and methods for entity resolution
US11861023B2 (en) * 2021-08-25 2024-01-02 International Business Machines Corporation Matching cryptographic computing resources to the predicted requirements for decrypting encrypted communications

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6535880B1 (en) * 2000-05-09 2003-03-18 Cnet Networks, Inc. Automated on-line commerce method and apparatus utilizing a shopping server verifying product information on product selection
US5963915A (en) * 1996-02-21 1999-10-05 Infoseek Corporation Secure, convenient and efficient system and method of performing trans-internet purchase transactions
US5875296A (en) * 1997-01-28 1999-02-23 International Business Machines Corporation Distributed file system web server user authentication with cookies
US5966705A (en) * 1997-06-30 1999-10-12 Microsoft Corporation Tracking a user across both secure and non-secure areas on the Internet, wherein the users is initially tracked using a globally unique identifier
US6049877A (en) * 1997-07-16 2000-04-11 International Business Machines Corporation Systems, methods and computer program products for authorizing common gateway interface application requests
US6101482A (en) 1997-09-15 2000-08-08 International Business Machines Corporation Universal web shopping cart and method of on-line transaction processing
US6574661B1 (en) * 1997-09-26 2003-06-03 Mci Communications Corporation Integrated proxy interface for web based telecommunication toll-free network management using a network manager for downloading a call routing tree to client
US6092196A (en) * 1997-11-25 2000-07-18 Nortel Networks Limited HTTP distributed remote user authentication system
JP2000276444A (ja) 1999-03-19 2000-10-06 Canon Inc 通信装置、通信システム及びコンピュータ読み取り可能な記憶媒体
GB2349960A (en) 1999-05-08 2000-11-15 Ibm Secure password provision
US6226752B1 (en) 1999-05-11 2001-05-01 Sun Microsystems, Inc. Method and apparatus for authenticating users
US6701438B1 (en) * 1999-06-14 2004-03-02 Sun Microsystems, Inc. Methods and apparatus for providing customizable security and logging protocols in a servlet engine
US6691232B1 (en) * 1999-08-05 2004-02-10 Sun Microsystems, Inc. Security architecture with environment sensitive credential sufficiency evaluation
US6892307B1 (en) * 1999-08-05 2005-05-10 Sun Microsystems, Inc. Single sign-on framework with trust-level mapping to authentication requirements
US6601169B2 (en) * 1999-12-30 2003-07-29 Clyde Riley Wallace, Jr. Key-based secure network user states

Also Published As

Publication number Publication date
WO2002045370A3 (en) 2003-03-13
CA2327078C (en) 2005-01-11
EP1346548B1 (de) 2006-01-25
JP2004514996A (ja) 2004-05-20
JP4056390B2 (ja) 2008-03-05
CA2327078A1 (en) 2002-05-30
CN100486243C (zh) 2009-05-06
ATE316731T1 (de) 2006-02-15
WO2002045370A2 (en) 2002-06-06
EP1346548A2 (de) 2003-09-24
US7216236B2 (en) 2007-05-08
DE60116903D1 (de) 2006-04-13
AU2002217011A1 (en) 2002-06-11
CN1478348A (zh) 2004-02-25
US20020099936A1 (en) 2002-07-25

Similar Documents

Publication Publication Date Title
DE60116903T2 (de) Gesicherte sitzungverwaltung und authentifizierung für websites
DE69633564T2 (de) Zugangskontrolle und überwachungssystem für internetserver
DE602004012870T2 (de) Verfahren und system zur benutzerauthentifizierung in einer benutzer-anbieterumgebung
DE10051571B4 (de) Methode und System zur Unterstützung von Sicherheitsvorgaben unter Verwendung einer Stylesheet-Verarbeitung
DE69832786T2 (de) Vorrichtung und verfahren zur identifizierung von klienten die an netzwer-sites zugreifen
DE69736696T2 (de) Netzwerk-Daten-Ubertragungssystem
DE60308692T2 (de) Verfahren und system für benutzerbestimmte authentifizierung und einmalige anmeldung in einer föderalisierten umgebung
DE60214632T2 (de) Multidomäne Berechtigung und Authentifizierung
DE60031755T2 (de) Verfahren und Vorrichtung für authentifizierten Zugang zu einer Mehrzahl von Netzbetreibern durch eine einzige Anmeldung
DE60007883T2 (de) Verfahren und vorrichtung zum durchführen von elektronischen transaktionen
US7673045B1 (en) Multiple site automated logout
US9900305B2 (en) Internet server access control and monitoring systems
DE69921455T2 (de) System und verfahren zur zugriffssteuerung auf gespeicherte dokumente
DE60130037T2 (de) Verfahren und system zur web-basierten cross-domain berechtigung mit einmaliger anmeldung
DE60027971T2 (de) Einmalige Anmeldung in einem Netzwerksystem, das mehrere gesondert steuerbare Ressourcen mit begrenztem Zugang enthält
DE60222871T2 (de) Anordnung und Verfahren zum Schutz von Endbenutzerdaten
US8214510B2 (en) Maintaining state information on a client
US8606900B1 (en) Method and system for counting web access requests
US8504705B2 (en) Systems and methods for limiting web site access
US5812776A (en) Method of providing internet pages by mapping telephone number provided by client to URL and returning the same in a redirect command by server
DE60307736T2 (de) Serverarchitektur für sichere Plug-ins in digitalen Rechteverwaltungsssystemen
US6988085B2 (en) System and method for real-time electronic inquiry, delivery, and reporting of credit information
DE60126096T2 (de) Digitale transaktionsquittung
EP1260077B1 (de) Verfahren zur transaktionsbestaetigung, authentifizierungsserver und wap-server
DE60315914T2 (de) Ad hoc Sicherheitszugriff auf Dokumente und Dienste

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8320 Willingness to grant licences declared (paragraph 23)