Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Making people work together! Folie 1 NEXPLORE AG Stefan von Niederhäusern Einfache Anwendung der SuisseID durch das Software Development KIT 09.09.2010.

Ähnliche Präsentationen


Präsentation zum Thema: "Making people work together! Folie 1 NEXPLORE AG Stefan von Niederhäusern Einfache Anwendung der SuisseID durch das Software Development KIT 09.09.2010."—  Präsentation transkript:

1 Making people work together! Folie 1 NEXPLORE AG Stefan von Niederhäusern Einfache Anwendung der SuisseID durch das Software Development KIT 09.09.2010

2 Making people work together! Folie 2 Inhalt Was ist das SuisseID SDK /.NET Funktionalität Unterstützte Anwendungsfälle Demos 09.09.2010

3 Making people work together! Folie 3 Was ist das SuisseID SDK/.NET? Ein Software Development Kit (SDK) ist eine Sammlung von Werkzeugen und Anwendungen, um eine Software zu erstellen. Toolkit … (englisch für Werkzeugsatz) ist ein Begriff aus der elektronischen Datenverarbeitung. Er bezeichnet allgemein eine Sammlung von Bibliotheken, Klassen und Schnittstellen, die das Erstellen von Computerprogrammen vereinfachen sollen. Ziel eines Toolkits ist es, einem Programmierer das Entwickeln von Anwendungen zu erleichtern, indem Standardfunktionen zur Verfügung gestellt werden. 09.09.2010

4 Making people work together! Folie 4 Was ist das SuisseID SDK/.NET? 09.09.2010 SuisseID SDK /.NET: Einfach einsetzbare Klassenbibliothek für die Integration von Webapplikationen (ASP.NET) mit der SuisseID Kern-Infrastruktur

5 Making people work together! Folie 5 09.09.2010 Positionierung des SuisseID SDK/.NET Wir befinden uns hier!

6 Making people work together! Folie 6 Funktionalität Abwicklung der Kommunikation zwischen SuisseID- enabled Applikation und IdP Erstellen von SAML 2.0 Requests Signieren von Requests Verarbeiten von Antworten des IdP Überprüfung der Signatur der Antworten Zugriff auf SuisseID Zertifikat 09.09.2010

7 Making people work together! Folie 7 09.09.2010

8 Making people work together! Folie 8 09.09.2010

9 Making people work together! Folie 9 09.09.2010 UC1: Zertifikatsbasierte Authentifizierung

10 Making people work together! Folie 10 09.09.2010 UC2: Abfrage von Attributen beim IdP

11 Making people work together! Folie 11 09.09.2010 UC 3: Authentifizierung und Attributabfrage

12 Making people work together! Folie 12 Links 09.09.2010 http://develop.suisseid.ch Wiki Download SDKs + Demoapps Whitepaper http://cashback.suisseid.ch/

13 Making people work together! Folie 13 Fragen 09.09.2010

14 Making people work together! Folie 14 Backup 09.09.2010

15 Making people work together! Folie 15 What is the SuisseID SDK/.NET? Supported Use Cases API of the SuisseID SDK/.NET Code-Examples Extensions 09.09.2010

16 Making people work together! Folie 16 API Goals Easy to use No SAML for the user Prepared for IoC / Dependency Injection Expandability possible Good testability through IoC-Concept Exception based 09.09.2010

17 Making people work together! Folie 17 09.09.2010 API (Certificate)

18 Making people work together! Folie 18 09.09.2010 API (IdP Communication)

19 Making people work together! Folie 19 09.09.2010 API (Helpers)

20 Making people work together! Folie 20 What is the SuisseID SDK/.NET? Supported Use Cases API of the SuisseID SDK/.NET Code-Examples Extensions 09.09.2010

21 Making people work together! Folie 21 Example Code 1: Build an AuthnRequest (1) 09.09.2010 var request = SuisseIdSdkObjectFactory.GetAuthenticationRequest(); // add claims needed request.Claims.Add( new ClaimDescriptor { Name = CoreClaimTypes.GivenName, IsRequired = true }); request.Claims.Add(new ClaimDescriptor { Name = CoreClaimTypes.Surname, IsRequired=true }); request.Claims.Add(new ClaimDescriptor { Name = CoreClaimTypes.DateOfBirth, IsRequired = true });

22 Making people work together! Folie 22 Example Code 1: Build an AuthnRequest (2) 09.09.2010 // set the endpoint URI from the IdP selector request.Destination = new Uri("http://SelectedIdP"); request.PrivacyNoticeAddress = new Uri("http://PrivacyUrl"); // set return url request.AssertionConsumerServiceUrl = new Uri("http://DestinationUrl");

23 Making people work together! Folie 23 Example Code 2: Sending the request to the IdP 09.09.2010 // send the request with the request sender var requestSender = SuisseIdSdkObjectFactory.GetRequestSender(); requestSender.UserLanguage = Thread.CurrentThread.CurrentUICulture; requestSender.SendRequest( request, new HttpContextWrapper(HttpContext.Current) );

24 Making people work together! Folie 24 Example Code 3: Handling the response from the IdP (1) 09.09.2010 // get the response var responseHandler = SuisseIdSdkObjectFactory.GetResponseHandler(); // handle response var response = responseHandler.HandleResponse( this.ControllerContext.HttpContext); // get the requested claims var claim = response.AllClaims[CoreClaimTypes.IsOver18].Value; // MISSING: some checks and exception handling

25 Making people work together! Folie 25 What is the SuisseID SDK/.NET? Supported Use Cases API of the SuisseID SDK/.NET Code-Examples Extensions 09.09.2010

26 Making people work together! Folie 26 SuisseID SDK Extensions Once authenticated, a user remains authenticated within the application until he explicitly logs out. The set of claims is persisted until the user explicitly logs out. Developers can use the familiar Principal and Identity objects. Codesamples and further explanation available in the Microsoft Whitepaper (http://develop.suisseid.ch)http://develop.suisseid.ch 09.09.2010

27 Making people work together! Folie 27 SuisseID SDK Extensions 09.09.2010

28 Making people work together! Folie 28 Example Code 3: Handling the response from the IdP (1) 09.09.2010 // get the response var responseHandler = SuisseIdSdkObjectFactory.GetResponseHandler(); try { // handle response var response = responseHandler.HandleResponse( this.ControllerContext.HttpContext); // get the requested claims var claim = response.AllClaims[CoreClaimTypes.IsOver18];

29 Making people work together! Folie 29 Example Code 3: Handling the response from the IdP (2) 09.09.2010 // use claim data if (claim != null) { var value = (bool)claim.Value; } catch (StatusAbortedByUserException ex) { return this.View("ErrorUserAborted"); }


Herunterladen ppt "Making people work together! Folie 1 NEXPLORE AG Stefan von Niederhäusern Einfache Anwendung der SuisseID durch das Software Development KIT 09.09.2010."

Ähnliche Präsentationen


Google-Anzeigen