Eine Einführung in die Sitepersonalisierung durch Microsoft Passport

Veröffentlicht: 26. Jun 2002 | Aktualisiert: 10. Nov 2004

Von Drew Mayo

Passport speichert auf Wunsch die persönlichen Kenndaten zwischen Besuchen einer Website. Auch auf Ihrer Website können Sie diesen Service einsetzen. Ein Onlinekauf wird dadurch für Ihre Kunden wesentlich einfacher, schneller und sicherer. Wie das funktioniert, erklärt Drew Mayo in seinem Artikel.

Auf dieser Seite

 Der Einmal-Anmeldeservice (Single Sign-In Service)
 Der Passport Wallet-Dienst
 Kids Passport
 Passport-Netzwerkarchitektur
 Zusammenfassung

Zur Homepage von Wrox

Diesen Artikel können Sie dank freundlicher Unterstützung von Wrox auf MSDN Online lesen. Wrox ist ein Partner von MSDN Online.

Zur Partnerübersichtsseite von MSDN Online

Wenn Ihnen die Anmelde-/Abmeldelogos auf https://www.msn.com/ vertraut sind oder wenn Sie bereits über ein Hotmail-Konto verfügen, ist Ihnen sicherlich bekannt, wie diese Sites Ihre persönlichen Kenndaten zwischen den einzelnen Sitzungen speichern. Diese Logos verweisen auf ein Hotmail- und MSN-Feature, das Microsoft Passport genannt wird. Hierbei handelt es sich um einen Personalisierungs- und Mitgliedschaftsdienst, der Benutzerinformationen an einem zentralen Ort ablegt. Was Sie möglicherweise noch nicht wissen ist, dass MS Passport jetzt auf Ihrer Website verwendet werden kann. Ein Onlinekauf wird dadurch für Ihre Kunden wesentlich einfacher, schneller und sicherer. Nachfolgend wird dies nun von Drew Mayo erklärt.

Wenn sich ein Benutzer an www.msn.com oder ein Hotmail-Konto anmeldet, ruft Microsoft Passport die entsprechenden Benutzerinformationen ab, und die Site kann den vom Benutzer gewünschten Inhalt zusammenstellen: Sportinformationen, Nachrichten oder Aktienkurse etc.

Was Sie möglicherweise noch nicht wissen ist, dass diese Art von E-Commerce-Diensten jetzt für Ihre Website verfügbar ist. Hierdurch können Sie den Onlineeinkauf für Ihre Kunden einfacher, schneller und sicherer gestalten. Der Kunde muss sich keinen weiteren neuen Benutzernamen und kein neues Kennwort für Ihre Site merken, sondern kann auf Ihrer Site auf seine persönlichen Daten und Zahlungsinformationen mithilfe seiner Passport-Benutzerdaten zugreifen.

Dieser Artikel beschreibt die Eigenschaften von Microsoft Passport und wie diese E-Commerce-Dienste die Online-Einkäufe auf Websites für Kunden schneller, sicherer und einfacher gestalten. Dieser Artikel gibt zunächst einen Überblick. In Teil II finden Sie eine detaillierte Beschreibung der Implementierung von MS Passport.

Die Technologien, die zum Implementieren von Microsoft Passport in Ihre Website verwendet werden, sind ASP, SSL, HTML-Formulare und XML. Auf dem Computer des Kunden muss für das Verwenden von Passport keine besondere Software installiert werden. Es gibt eine installierbare COM-Komponente für den Server, der als Host für die Website dient. Sie können darauf wie auf jede andere COM-Komponente über C++, Visual Basic und ASP zugreifen. Bei dieser Komponente handelt es sich um das Passport Manager-Objekt, das im weiteren Verlauf detaillierter erläutert wird.

Der Einmal-Anmeldeservice (Single Sign-In Service)

Der erste Schritt von Passport umfasst die Anmeldung auf Basis der persönlichen Daten. Der Einmal-Anmeldeservice speichert die wesentlichen Profilinformationen des Benutzers. Diese Daten werden nicht auf Ihrem Webserver oder auf Clientseite, sondern auf den Passport-Servern gespeichert.

Hier werden allgemeine Daten, wie z. B. Name, Zeitzone, Land und Geburtstag abgefragt. Sicherheitskritische Daten (wie Zahlungsinformationen und Adressen- oder Telefonnummerangaben etc.) werden hier nicht angefordert (Details zu Kreditkarten- und Zahlungsinformationen werden in Passport Wallet angegeben). Als Sicherheitsfeature dient hier, dass die Partnersite nicht das Benutzerkennwort erhält.

Bild01

 

Der Passport Wallet-Dienst

Der Passport Wallet-Dienst ist vergleichbar mit einer Geldbörse für Bargeld und Kreditkarten: einem Ort, an dem Kreditkarten und Geld griffbereit aufbewahrt werden. Der Wallet-Dienst funktioniert im Wesentlichen ähnlich: Wallet bietet einen zentralen Ort zum Speichern von Zahlungsinformationen und ruft diese Daten beim Kauf ab. Da die Daten bereits online gespeichert sind, können Sie Wallet jederzeit aufrufen, wenn Sie sich für den Erwerb bestimmter Waren oder Dienste entschieden haben. Sie können dies auf unterschiedlichen Websites durchführen, ohne auf jeder Website erneut Ihre Zahlungsinformationen eingeben zu müssen.

Im Folgenden sehen Sie eine Bildschirmabbildung des Formulars, mit dem Sie Ihr persönliches Passport Wallet einrichten können. Es handelt sich hierbei um ein einfaches HTML-Formular, das Sie auf gewohnte Art und Weise ausfüllen und übermitteln können. Beachten Sie das Vorhängeschloss in der rechten unteren Ecke der Abbildung als Symbol für SSL (Secure Socket Layer). Dieser Dienst ist nicht derselbe wie das Microsoft Passport-ActiveX-Steuerelement bzw. das Microsoft Passport-ActiveX-Applet (bei beiden handelt es sich um clientseitige Tools). Passport Wallet ist vollständig serverseitig, so dass Browserprobleme entfallen, die bei den bisherigen Steuerelementen auftraten.

Bild02

Beachten Sie jedoch, dass Passport keine Authentifizierung von Kreditkarten oder Zahlungsabläufe für Ihre Website durchführt. Dafür sind Sie weiterhin verantwortlich. Sie verfügen jedoch bereits über die erforderlichen Daten. Wallet erfordert außerdem das Übermitteln von Informationen mithilfe von SSL und unterstützt keine Klartextbereitstellung. Berücksichtigen Sie dies beim Erstellen Ihrer Website.

 

Kids Passport

Allein ein Blick in Ihren Posteingang genügt, um zu wissen, dass nicht alle Websites kindgerecht und jugendfrei sind. Um Kinder online zu schützen, erstellte die Regierung der USA den Children's Online Privacy Protection Act (COPPA). Dieser Erlass erfordert die elterliche Zustimmung, bevor eine Website Daten von Minderjährigen einholen darf, und bestimmt, wofür diese Informationen verwendet werden dürfen.

Kids Passport unterstützt bei ordnungsgemäßer Verwendung die elterliche Zustimmung. Zudem können Eltern Inhalte, vor denen sie ihre Kinder schützen möchten, auf einfache Weise sperren. Sites mit Passport können bei entsprechender Programmierung minderjährige Benutzer identifizieren und diesen den Zugriff auf für sie nicht bestimmte Sitebereiche verweigern (hierzu zählen z. B. auch Wettbewerbe, Chaträume oder alles, was die Abfrage oder Verteilung persönlicher Daten erfordert).

Als Websiteentwickler oder -inhaber erhalten Sie hierdurch zwei wesentliche Vorteile: Zum einen die Unterstützung von Eltern, die ihren Kindern den Besuch Ihrer Website erlauben, weil sie wissen, dass sie für Kinder geeignet ist. Zum anderen die Zeit, die Sie sparen können, weil das Erstellen und Warten eines eigenen Systems zum Identifizieren von minderjährigen Benutzern entfällt. Obwohl COPPA in den USA erlassen wurde, ist Kids Passport auch für Websites in anderen Ländern verfügbar. Diese Websites können ebenso von der elterlichen Unterstützung und der Zeitersparnis bei der Siteentwicklung profitieren.

 

Passport-Netzwerkarchitektur

Betrachten wir nun den genauen Ablauf. Ein Benutzer versucht zunächst, auf eine Seite Ihrer Website zuzugreifen, die nur von aktuell angemeldeten Passport-Mitgliedern verwendet werden kann. (Mithilfe von ASP-Code auf Seitenebene definieren Sie, welche Seiten Ihrer Website dies erfordern.) Der darauf folgende Vorgang wird auch ausgelöst, wenn ein Benutzer auf das Anmeldelogo klickt:

Bild03

Das Logo ist mit den Passport-Authentifizierungsservern verbunden, und der Benutzer wird aufgefordert, sich an dem Passport-Dienst anzumelden. Die folgende Bildschirmabbildung zeigt das Anmeldeformular, in das der Benutzername und das Kennwort eingegeben werden müssen.

Bild04

Die Passport-Server bilden eine Serversammlung, die Passport Nexus genannt wird. Sie besteht aus koordinierenden Webservern, Datenbankservern und Anmeldeservern, die Profildaten speichern, Benutzer und Partnersites authentifizieren, Daten aktualisieren und den Wallet-Dienst in einer Webfarm verwalten, die für Fehlertoleranz, Skalierbarkeit, Sicherheit, Leistung und eine maximale Betriebszeit erstellt wurde. Die Anmeldeserver authentifizieren den Benutzer (vorausgesetzt der Name und das Kennwort sind korrekt) und melden den Benutzer an das entsprechende Passport-Konto an.

Beim Authentifizieren des Benutzers schreibt der Passport-Server bis zu fünf Cookies in den Browser des Benutzers. Diese fünf Cookies sind charakteristisch für die Anmeldeserver. Sie werden im Folgenden aufgezählt:

  • MSPSAuth enthält den Zeitstempel der letzten erfolgreichen Anmeldung und gibt an, ob der Benutzer nur auf diesem Computer eine automatische Anmeldung angefordert hat.

  • MSPDom der Domain Authority-Server, der den Passport des Benutzers zuletzt authentifiziert hat.

  • MSPProf speichert die Profildaten des angemeldeten Benutzers.

  • MSPVis die Liste der teilnehmenden Sites, die der Benutzer mit Passport besucht hat.

  • MSPSec kodiert einen speziellen numerischen 64-Bit-Primärschlüssel, der den Benutzer eindeutig kennzeichnet. Dieser Primärschlüssel wird technisch als PUID (Pairwise Unique ID) bezeichnet. Durch das Dekodieren dieser PUID innerhalb Ihres Skriptcodes, können Sie die Funktionen der Site den Wünschen und Bedürfnissen des Benutzers zuordnen.

An den Browser des Benutzers werden weitere Abfragezeichenfolgen und Cookiedaten zurückgegeben, die von den Passport-Servern abgerufen wurden und durch einen Passport-Netzwerkschlüssel verschlüsselt sind. Um diesen Schlüssel zu dekodieren, muss er mithilfe eines passenden Decoderrings entschlüsselt werden. Dieser wird Ihrer Website zugeordnet, wenn Sie anfordern, eine teilnehmende Site zu werden. Diese Schlüssel teilnehmender Sites werden speziell für den Server generiert, auf dem sie ausgeführt werden. Hierzu werden hardwarespezifische Daten wie MAC-Adresse, Festplattendaten oder CPU-IDs verwendet, um Eindeutigkeit zu gewährleisten. Teilnehmerschlüssel sind somit eindeutig, und die Passport-Server antworten nur auf bereits registrierte Schlüssel.

Bei diesem Dekoderring handelt es sich um den bereits erwähnten Passport Manager. Der Passport Manager ist die einzige auf dem Webserver zu installierende Komponente (auf dem Computer des Benutzers ist keine Installation erforderlich). Wenn Sie Ihre Webseiten für Passport kodieren, fügen Sie einfachen ASP-Code auf Seitenebene hinzu. Hierdurch wird diese Aufgabe mithilfe von COM erledigt. Der Passport Manager entdeckt Benutzerauthentifizierung, bietet Entschlüsselungsdienste, verwaltet Netzwerkaktualisierungen mithilfe von Passport Nexus, überprüft das Benutzeralter im Falle von Kids Passport und überprüft den Zeitraum seit der letzten Anmeldung sowie ob eine erneute Authentifizierung des Benutzers erforderlich ist. Der Passport Manager schreibt außerdem zwei weitere Cookies in den Browser des Benutzers.

  • MSPSAuth enthält den Zeitstempel der letzten erfolgreichen Anmeldung und Informationen darüber, ob der Benutzer nur auf diesem Computer eine automatische Anmeldung angefordert hat.

  • MSPProf speichert die Profildaten des angemeldeten Benutzers.

Diese verfügen über dieselben Namen wie die Domain Authority-Cookies sie bieten jedoch unterschiedliche Dienste und Informationen. Bei allen sieben Cookies handelt es sich um gewöhnliche Cookies. Da die Cookies nicht direkt von Ihrer Website geschrieben werden, können Sie diese nicht lesen. Diese Aufgabe führt der Passport Manager für Sie durch. In diesem Zusammenhang wird gelegentlich von einer "Sicherheitslücke" geredet, weil eine Website die Cookies anderer Websites lesen kann. Informationen zu diesem Problem und zu einem clientseitigen Fix finden Sie in der Microsoft Knowledge Base, Article Q258430.

Nach Abschluss dieser Transaktionen wird der Benutzer wieder zu der ursprünglich angeforderten Seite geleitet (mithilfe von Response.Header 302). Auf jeder Mitglieder-Seite Ihrer Website überprüft der Passport Manager, ob der Benutzer noch angemeldet ist, und erzwingt gegebenenfalls diese Aktion. Sie geben den Code zwar selbst ein, dieser ist jedoch bereits im Passport SDK dokumentiert.

Möglicherweise möchte der Benutzer nun etwas auf Ihrer Website erwerben. In diesem Fall wird der Wallet-Dienst eingesetzt. Wenn der Käufer seinen Warenkorb gefüllt hat und zahlen möchte, navigiert er durch den Einkaufsbereich Ihrer Website. Sie können ihm an dieser Stelle die Standardelemente der HTML-Formulare präsentieren, um Daten zu sammeln. Da es sich bei Ihrer Website um eine Partnersite handelt, können Sie dem Käufer die bequeme und sichere Möglichkeit bieten, den Zahlungsvorgang mit Wallet durchzuführen. Führen Sie ihn zu folgenden Logos, auf die der Kunde klicken soll:

Bild05

Oder

Bild06

Der Käufer wird mit einigen Abfragezeichenfolgen zum Identifizieren der teilnehmenden Site zur Wallet-Serverwebseite weitergeleitet. Während der Übertragung überprüfen die Passport-Server den Benutzer, um sicherzustellen, dass dieser angemeldet ist. Zudem wird der Netzwerkschlüssel der Partnersite überprüft, um ihre Identität ebenfalls zu bestätigen.

Wenn beide Überprüfungen abgeschlossen sind, leitet der Server den Browser zur Wallet-Formularseite weiter. Bei dieser Seite handelt es sich um eine HTML-Formularseite, die durch Co-Branding einheitlich passend zu Ihrer Website gestaltet werden kann. Abhängig von der Abfragezeichenfolge, die an die Seite weitergegeben wird, kann sie durch Speicherort, Sprache und sogar durch die Auswahl der akzeptierten Kreditkarten angepasst werden. Der Käufer wird nun die in Wallet gespeicherten Zahlungsinformationen überprüfen, die gewünschte Kreditkarte auswählen und auf Weiter klicken, um zurück zu Ihrer Website zu gelangen.

Dort sind die ausgewählten Daten von Wallet jetzt verfügbar, um von ASP direkt über den Passport Manager abgerufen zu werden. Nachdem diese zusammengestellt sind, können sie zu Ihrer Datenbank hinzugefügt und erneut zur Bestätigung durch den Benutzer angezeigt werden. Die Daten können zudem in Ihre Kontaktliste eingefügt und vor allem für den Zahlungsvorgang verwendet werden.

Anschließend meldet sich der Benutzer von Passport ab. Dies erfolgt durch Klicken auf das Abmeldelogo (siehe unten):

Bild07

Die Cookies werden vom Computer des Benutzers entfernt, die Passport-Datenbanken werden aktualisiert, und der Benutzer wird von Passport Nexus abgemeldet. Die Cookies werden auch durch den Benutzer entfernt, wenn dieser den Browser schließt und beim Anmelden das Kontrollkästchen zum automatischen Anmelden an den Computer nicht aktiviert hatte. Microsoft Passport wartet jetzt bis zum nächsten Aufrufvorgang.

 

Zusammenfassung

Wozu führt dies alles? Das Ziel aller E-Commerce-Unternehmen ist es, möglichst hohe Gewinne zu erzielen. Durch eine verbesserte Benutzerfreundlichkeit Ihrer Site, erhöhen sich auch die Aussichten für eine Steigerung Ihrer Umsätze. Beachten Sie dies: Microsoft hat bereits ungefähr 40 Millionen Hotmail-Benutzer zu Passport-Benutzer umgewandelt. Allein für diese große Anzahl an Benutzern würde sich der Einkauf auf Ihrer Site wesentlich erleichtern.

Durch Co-Branding können die oben abgebildeten Seiten zur Registrierung, zu Wallet sowie zum Anmelde- und Abmeldevorgang im Aussehen und in der Funktionalität an Ihre Website angepasst werden. Sie können zu diesen Seiten spezielle Textblöcke und Bilder extra für Ihre Website hinzufügen und dadurch den Wechsel zwischen Website- und Passport-Bildschirm einheitlicher gestalten. Zudem fühlen sich auch Benutzer beim Verwenden einer bestätigten Passport-Site sicherer.

Das Passport-Siteverzeichnis führt die aktuell teilnehmenden und die voraussichtlich teilnehmenden Sites auf. Hier finden Sie die Namen vieler führender Unternehmen, die bereits auf den Zug aufgesprungen sind. Wenn Sie Passport in Ihre Website einbinden, erscheint auch der Name Ihres Unternehmens hier.

Ich hoffe, dieser Artikel hat Ihr Interesse an Microsoft Passport und die damit verbundenen Möglichkeiten geweckt. Mein nächster Artikel geht detaillierter auf technische Aspekte ein und beschreibt die Implementierung von Passport auf Ihrer Site.

Verwandte ASPToday-Artikel

  • Creating A Pop-up Modal Dialog Box for a Login Page and
    Redirecting Authenticated Users (8. März 2000 englischsprachig)

Verwandte Quellen

ASPToday wird Ihnen von Wrox Press (http://www.wrox.com/)zur Verfügung gestellt. Bitte leiten Sie alle auftretenden Probleme an die folgende Adresse weiter: webmaster@asptoday.com. Copyright © 2002 Wrox Press. Alle Rechte vorbehalten.