Mathias Raacke Senior Student Partner Microsoft Deutschland GmbH.
-
Upload
ishild-gemmel -
Category
Documents
-
view
108 -
download
1
Transcript of Mathias Raacke Senior Student Partner Microsoft Deutschland GmbH.
Identity 2.0{ Windows CardSpace }
Mathias RaackeSenior Student PartnerMicrosoft Deutschland GmbH
Identity 2.0: Windows CardSpace
“Identity 2.0, also called digital identity, is the anticipated revolution of identity verification on the internet using emerging user-centric technologies such as Information Cards or OpenID. Identity 2.0 stems from the Web 2.0 theory of the world wide web transition. Its emphasis is a simple and open method of identity transactions similar to those in the physical world, such as driver's license.” (Quelle: Wikipedia, http://en.wikipedia.org/wiki/Identity_2.0)
Zu viele Kennwörter
3
?????
?????
Mai Ju
li
Sept
embe
r
Novem
ber
Janu
arMär
zMai
10,000
11,000
12,000
13,000
14,000
15,000
16,000
17,000
18,000
19,000
20,000
Quelle: http://www.antiphishing.org
Im Moment werden jede Woche 1 Million Angriffe
durch den Internet Explorer 7 Phishing-Filter blockiert.
Quelle: Internet Explorer Blog, http://blogs.msdn.com/ie
Berichte über Phishing-Angriffe Mai ‘05 – Mai ‘06
4
Beteiligte ParteienBenutzername + Kennwort
Benutzer
Webseite
Identitäts-anbieter(offline)
5
z.B. PostIdent
Benutzername +
Kennwort
Identitäten in der „Offlinewelt“Microsoft•Senior Student Partner•[email protected]
Freiberuflich•.NET Trainer & Entwickler•[email protected]
Campus Consult Projektmanagement GmbH•Berater•[email protected]
.NET User Group Paderborn•Gründer•[email protected]
INETA Europe•Vice President Academic•[email protected]
Uni Paderborn•Student•[email protected]
Authentifizierung: Wer bin ich?
Wonach wird gefragt?Name, Adresse,
Kreditkartennummer, Alter,…
Wer fragt?Händler, Polizei,
Fahrkartenkontrolleur, Geschäftspartner, …
Wer bestätigt die Angaben?Bank, Staat, Bahn,
Automobilclub, ich selbst, …
Die Antwort hängt vom Kontext ab:
7
Beteiligte Parteien„Offlinewelt“ – Beispiel Bank
Benutzer
Geld-automat
Bank
8
Personalausweis
EC Karte
WCS
WFWCF
WPF.NET 3.0
Identitätsverwaltung mit Windows CardSpace™
Einfacher
Einheitliche User Experience
Sichere Token statt Benutzername + Kennwort
Sicherer
Schützt vor Phishing
Token sind kryptographisch stark verschlüsselt
Offene Standards
Basiert auf WS-* Protokollen
Auf jeder Plattform verwendbar
9
{ CardSpace aus Endanwendersicht}
demo
Die CardSpace Umgebung
Läuft in einem geschützten
Desktop
Vom Windows Desktop isoliert
Geschützt vor Hacking durch
Usermode-Prozesse11
Plattformunabhängig und Interoperabel
12
IE7 Windows
Internet Explorer 7
CardSpace / .NET 3.0
Vista, XP, 2003
Firefox 2.0 Windows
Firefox 2.0 + Plugin
CardSpace / .NET 3.0
Vista, XP, 2003
Firefox 2.0 „überall“
Firefox 2.0
Xmldap (Java)
Windows, Mac, Linux
Safari
Safari + Plugin
Xmldap (Java)
Mac
Ab Firefox 3.0 direkt in Firefox integriert
{ CardSpace und Firefox}
demo
Kartentypen
Selbstausgestellte Karten
•Enthält vom Nutzer aufgestellte Identitäts-behauptungen•Nicht überprüft•Lokal gespeichert•Signiert und ver-schlüsselt, geschützt vor „replay“-Angriffen
Verwaltete Karten
•Von einem Identitäts-anbieter (Bank, Behörde, Verein, …) ausgestellt•Lokal nur Metadaten gespeichert•Daten werden beim Identitätsanbieter gespeichert
14
Beteiligte ParteienWindows CardSpaceBenu
tzermit
„Identity
Selector“
„Relaying Party
“ (Webseite)
Identitäts-anbieter
15
Benutzer
„Relaying Party
“ (Webseite)
Identitäts-anbieter
Scenario 1: Anmeldung mit selbstausgestellter Karte(„Visitenkarte“)
1. Benutzer ruft Webseite auf2. Server sendet HTML Seite
mit CardSpace <object> Tag3. Benutzer wählt selbsterstellte
Karte4. Verschlüsseltes Token mit
Benutzerdaten wird an Server übermittelt
16
Benutzer
„Relaying Party
“ (Webseite)
Identitäts-anbieter
Scenario 2: Anmeldung mit verwalteter Karte („Ausweis“)
1. Benutzer ruft Webseite auf2. Server sendet HTML Seite mit
CardSpace <object> Tag3. Benutzer wählt verwaltete Karte4. CardSpace fordert
Sicherheitstoken von Identitätsanbieter an
5. Identitätsanbieter antwortet mit signiertem und verschlüsseltem Token
6. CardSpace sendet Token an den Server
17
Benutzer
„Relaying Party
“ (Webseite)
Identitäts-anbieter
Authentifizierung beim Identitätsanbieter
Authentifizierung beim Identitätsanbieter mit
- Benutzername + Kennwort- Selbstausgestellter Karte- X.509- Kerberos
18
CardSpace in eigenen Webseiten verwenden
20
SSL konfigurieren (ab 3.5 optional)
Formular mit CardSpace Object-
Tag
Token entschlüsseln• XML Encryption• Zugriff auf den private
Key des SSL Zertifikats
Signatur des Tokens überprüfen
• XML Signturen• Canonical XML
Gültigkeit des Tokens überprüfen
• SAML
Claims aus dem Token auslesen
• SAML
Das kann man alles selbst machen…
21
…muss man aber nicht ASP.NET
Token Klasse aus den CardSpace Samples von MicrosoftViele fertige Steuerelemente
Bibliotheken für PHPKim Cameronhttp://www.identityblog.comRob Richardshttp://www.cdatazone.org
Auch für Java und andere Plattformen gibt es CardSpace Bibliotheken
{ CardSpace in Webseiten integrieren}
demo
Login und Registrierungsseiten
<asp:Button ID="AnmeldeButton" runat="server" Text="Anmeldung mit Windows CardSpace" /> <object type="application/x-informationcard" name="xmlToken"><param name="tokenType" value="urn:oasis:names:tc:SAML:1.0:assertion"/><param name="issuer" value="http://.../identity/issuer/self"/><param name="requiredClaims" value="http://.../claims/givenname http://.../claims/surname http://.../claims/emailaddress http://.../claims/privatepersonalidentifier"/></object>
23
CardSpace Claims für selbstausgestellte Karten
Vorname
Nachname E-Mail
Straße Ort Bundesland
Postleitzahl Land Telefon
(privat)
Telefon (weitere Nr.)
Telefon (mobil)
Geburtsdatum
Aussteller URI: http://schemas.xmlsoap.org/ws/2005/05/identity/issuer/self
24
Der Private Personal Identifier
Eindeutiger Wert berechnet aus Karte und Relying Party
Jede Kombination hat unterschiedliche PPIDWird berechnet aus
Relying Party SSL Zertifikat falls vorhanden,ansonsten DNS Hostname / IPWert aus der Karte
„Ersetzt“ das Kennwort, es geht aber noch sicherer: UniqueID (= PPID + Public Key)
Siehe Token.cs Beispiel auf netfx3.com
{ Claims auslesen}
demo
Das Security-Token auslesen
protected void Page_Load(object sender, EventArgs e) { string xmlToken = Convert.ToString(Request["XmlToken"]);
Token token = new Token(xmlToken);
// Benutzername mit dieser InfoCard findenstring username =
MembershipHelper.GetUser(token.UniqueID);
// Diesen Benutzer anmelden
Token-Klasse
•Entschlüsselt das Token•Ermöglicht Zugriff auf Claims•Code auf netfx3.com
MembershipHelper-Klasse
•Kapselt Datenbankzugriff•Sucht Benutzer aus der Datenbank mit ID aus Token27
Anpassen der Datenbank
CREATE PROCEDURE aspnet_CardSpace_lookup (@card nvarchar(50) ) AS SELECT UserName FROM aspnet_UsersWHERE UniqueHash = @card
CREATE PROCEDURE aspnet_CardSpace_associate (@UserID nvarchar(256), @card nvarchar(50) )
AS UPDATE aspnet_Users SET UniqueHash = @cardWHERE UserName = @UserID
28
Testzertifikat erstellen
29
Windows CardSpace unter .NET 3.0 funktioniert nur mit gültigem SSL-Zertifikat, ab 3.5 optionalSelfssl.exe aus Internet Information Services (IIS) 6.0 Resource Kit ToolsFindprivatekey.exe aus „Introduction … with IE7“ SampleIIS Account benötigt Leserechte auf die Keydatei
selfssl.exe /N:CN=www.adventureworks-cinema.de /T /V:365
findprivatekey.exe My Localmachine -n CN=www.adventureworks-cinema.de
CardSpace und OpenID
OpenID ist anfällig für PhishingCardSpace als Login beim OpenID Identity Provider löst dieses ProblemBeispiel: myOpenID.com
Jede OpenID Seite unterstützt (indirekt) auch CardSpace!
{ CardSpace und OpenID}
demo
CardSpace in der Praxis
Otto StoreLiveID (Beta)myOpenID.comfun communications GmbH: WebCard Loaylty
Virtuelle KundenkarteVorstellung auf der CeBit, Halle 6, Stand E12http://www.fun.de/deutsch/Solutions/CardSpace.asp
{ CardSpace in der Praxis }
Christian ArnoldATE Software
partner
CardSpace – neues in .NET 3.5
Kein SSL Zertifikat mehr erforderlichVerbesserte BenutzeroberflächeFunktioniert auch auf FAT PartitionenIdentity Provider können eigene Fehlermeldungen anzeigenUnterstützung für aktuelle OASIS Web Service Security Exchange Standards (WS-SX)
{ CardSpace für WCF Clients}
demo
Offene Probleme
37
Portabilität von InfoCardsCardSpace v2?Novell und andere Anbieter
BekanntheitSSL - nicht für „billige“ Shared Hosting Angebote geeignet .NET 3.5
Zusammenfassung
Vereinheitlicht Authentifizierung
Besserer Schutz vor Phishing
Geringer Implementierungsaufwand
Basiert auf offenen Standards
Daten nicht zentral gespeichert
Nicht nur für Web-Anwendungen!
http://cardspace.netfx3.com/
38
Fragen?
[email protected]@raacke.infohttp://www.outofcoffeeexception.de
http://www.identityblog.com (Kim Cameron)http://www.windowscardspace.de (Christian Arnold)http://www.leastprivilege.com (Dominik Baier)http://staff.newtelligence.de/michaelw (Michael Willers)http://blogs.msdn.com/card (CardSpace Team)
39
Visual Studio 2008weitere Angebote
Visual Studio Team System Information DayRegelmäßige ganztägige Informationsveranstaltung von MicrosoftPraxisnahe Demos & viel Raum für DiskussionenDetails & Anmeldung: www.event-team.com/events/visualstudio
TeamConf 2008 – Die Visual Studio Team System KonferenzVSTS in der Praxis - 22.-24. April 2008 in MünchenAnwenderberichte (Siemens, ABB, Commerzbank, Datev, Münchener Rück,..)Fach- und TechnologievorträgeVortragsprogramm und Anmeldung: www.teamconf.de
Visual Studio Launch PromotionTauschen Sie Ihre Visual Studio Standard in eine höherwertige Visual Studio Edition Ihrer Wahl Anrechnung in Höhe von 299 € beim Kauf eines anderen VS Produktesvom 19. Februar bis zum 30. April 2008Nur bei den Partnern: PC Ware, SoftExpress, SOS und Zoschke (befinden sich alle in der Ausstellerhalle)
Ask the ExpertsWir freuen uns auf Ihre Fragen: Technische Experten stehen Ihnen während der gesamten Veranstaltung in der Haupthalle zur Verfügung.
© 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after
the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.