41
Consulting Services SharePoint Claims & FBA Thomas Stensitzki Sebastian Rubertus

SharePoint Claims und FBA

Embed Size (px)

Citation preview

Page 1: SharePoint Claims und FBA

Consulting Services

SharePoint Claims & FBA

Thomas Stensitzki

Sebastian Rubertus

Page 2: SharePoint Claims und FBA

2

Agenda

Vorstellung der iCOMcept GmbH

Topologien & Authentifizierungsarten

Claims Authentifizierung

Livedemo

Fragen

Page 3: SharePoint Claims und FBA

3

Das Unternehmen

Gegründet 1997

Software Entwicklung & IT Beratung

• Software Entwicklung

Multi-Tier Anwendungen, .NET 4.0

SharePoint Server Entwicklung

E-Commerce

• Infrastruktur

Kommunikation

Server Applikationen

Sicherheit, VPN, Firewall

Virtualisierung

Page 4: SharePoint Claims und FBA

4

Das Unternehmen

Microsoft Certified Partner

• Gold Midmarket Solution Provider

• Silver Content Management

• Silver Desktop

• Silver Hosting

• Silver Portals and Collaboration

• Silver Server Platform

• Silver Software Development

• Silver Web Development

Page 5: SharePoint Claims und FBA

7

Die Dienstleistungen SharePoint Applications

Konzeption von SharePoint Farmen

• Zugriffskonzepte intern

• Zugriffskonzepte mit externen Partnern

• Konfiguration

Branding & Layout

Analyse & Durchführung Migration von Bestandsdaten

Programmierung von individuellen SharePoint Lösungen

• SharePoint Commodity

• Full Custom

Page 6: SharePoint Claims und FBA

8

Die Dienstleistungen SharePoint Operations

Migration von SharePoint Altsystemen

Evaluierung von SharePoint Erweiterungen

Konzepte für die Sicherung und Wiederherstellung von Daten

Datenbankoptimierung

Empfehlung zur Überwachung von Betriebsparametern

Page 7: SharePoint Claims und FBA

13

Extranet Topologie: Einzelne Firewall

Pro

• Einfache Lösung, geringer Hardwareeinsatz

und Konfiguration

• Gesamte Farm im Unternehmensnetzwerk

• Eine Farm für interne und externe Inhalte

• Alle Benutzer greifen auf den gleichen

Inhalte zu

• Nur eine Firewall zwischen Internet und

Firmennetzwerk

• Geringe Sicherheit

Kontra

UAG

INTERNET PERIMETER CORPORATE LAN

Page 8: SharePoint Claims und FBA

14

Extranet Topologie: Back-To-Back

Pro

• Farm in DMZ

• Zugriff durch interne und externe Benutzer

• Externe Benutzer haben keinen Zugriff auf

Unternehmensnetzwerk

• Mit einem AD in der DMZ können externe

Benutzer in einer separaten Domäne

verwaltet werden

• Mehr Hardware notwendig

• Größerer Konfigurationsaufwand

Kontra

UAG

INTERNET PERIMETER CORPORATE LAN

TMG

Page 9: SharePoint Claims und FBA

15

Extranet Topologie: Split Back-to-Back

Pro

• SQL Datenbank im Unternehmensnetzwerk

• Applikationsserver im

Unternehmensnetzwerk als Option zur

Performancesteigerung

• Großer Konfigurationsaufwand

• Sicherheitseinschränkungen für

Dienstkonten

Kontra

UAG

INTERNET PERIMETER CORPORATE LAN

TMG

Page 10: SharePoint Claims und FBA

16

Authentifizierungsarten

Windows

NTLM

Kerberos

ASP.NET (FBA)

Membership Provider

Role Provider

SAML/

Custom

ADFS

OpenID

Custom

Page 11: SharePoint Claims und FBA

17

Windows Authentifizierung

Auswahl zwischen NTLM oder Kerberos

Beste Wahl für interne Benutzer (Funktionalität)

Erforderlich für das Durchsuchen der Sites

Integrierte Authentifizierung innerhalb der Domäne

Page 12: SharePoint Claims und FBA

18

ASP.NET Authentifizierung

Authentifizierung über eine Anmeldeseite

Verwendung unterschiedlicher Membership- und Role-Provider

Membership-Provider Beispiele: SQL Datenbank (ASP.NET),

SharePoint Liste, LDAP oder XML-Datei

Keine „Client Integration“

Page 13: SharePoint Claims und FBA

19

SAML / Custom Authentifizierung

Trust zum Authentifizierungsprovider erforderlich

Kein Membership-Provider erforderlich

Delegation ohne Kerberos möglich

Federation zwischen Unternehmen möglich

Page 14: SharePoint Claims und FBA

20

Authorisierung

Nach erfolgter Authentifizierung wird ein Benutzer auf ein

SharePoint Benutzerobjekt gemappt (SPUser)

Zugriff auf SharePoint Objekte wird über Access Control Listen

(ACL) kontrolliert

Kein Unterschied zwischen Classic und Claims Modus

Page 15: SharePoint Claims und FBA

21

Authentifizierung in MOSS 2007

Extranet

Zone

Intranet

Zone

FBA

AuthN

Windows

AuthN

Externe User Mitarbeiter

http://company https://extranet.company.com

Page 16: SharePoint Claims und FBA

22

Authentifizierung in SPS 2010

Intranet

Zone

FBA

Claims

Windows

Claims

Externe User Mitarbeiter

http://company https://extranet.company.com

SAML

Claims

Partner

Page 17: SharePoint Claims und FBA

23

Terminologie Objekte

Identity

Security Principal

Claim

Aussage(n) über eine Identity

• Mein Name ist

• Mein Alter ist

Security Token

Digital signierte Sammlung von Claims

CLAIM

CLAIM

CLAIM

CLAIM

SIGNATURE

TOKEN

Page 18: SharePoint Claims und FBA

24

Terminologie Dienste

Security Token Service (STS)

Erstellt, signiert und gibt Security Token aus

Identity Provider STS (IP-STS)

Authentifiziert und gibt Security Token aus

Relying Party STS (RP-STS)

Transformiert bestehende Claims und fügt neue Claims zu einem

Security Token hinzu

Page 19: SharePoint Claims und FBA

25

Protokolle

Token Format SAML

Protokollvielfalt

• WS-Federation Passive

Requestor Profile

• WS-Federation Active

Requestor Profile

• SAML 2.0 WebSSO Profile

• SAML 2.0 IdP Initiated Sign

On Profile

• SAML 2.0 Artifact Resolution

Profile

Page 20: SharePoint Claims und FBA

26

Applikationszugriff - klassisch

Page 21: SharePoint Claims und FBA

27

Applikationszugriff - Claims

Page 22: SharePoint Claims und FBA

28

Authentifizierung

GET ApplicationURL

302 REDIRECT

Authenticate User

200 <FORM METHOD=POST VALUE=[TOKEN] …>

302 ApplicationURL [httpResponseHeader = SetCookie]

Page 23: SharePoint Claims und FBA

29

Single Sign On

1. Zugriff auf Applikation 1

2. Applikation 1 leitet Benutzer zum

IP-STS um

3. Benutzer authentifiziert sich gegen

Active Directory

4. IP-STS erstellt Token für

Applikation 1

5. Benutzer präsentiert Token und

erhält Zugriff auf Applikation 1

6. Zugriff auf Applikation 2

7. Applikation 2 leitet Benutzer zum

IP-STS um

8. Benutzer ist bereits authentifiziert,

keine Authentifizierung erforderlich

9. IP-STS erstellt Token für

Applikation 2

10. Benutzer präsentiert Token und

erhält Zugriff auf Applikation 2

Applikation 1 Applikation 2

Page 24: SharePoint Claims und FBA

30

Windows Identity Foundation

API Verwendung durch „Relying Party“

Durchführung der passiven Umleitung

Akzeptiert den ausgestellten Token

Verifiziert die Token Signatur und entschlüsselt den Token

Erstellt das Identity Objekt für die Applikation

Page 25: SharePoint Claims und FBA

31

WS-Federation Authentication Module

WS-FAM wird in die http Pipeline der ASP.NET Applikation

hinzugefügt

Ohne FAM

• 401 Status Code bei Zugriff auf eine geschützte Ressource durch einen

nicht authentifizierten Benutzer

Mit FAM

• FAM fängt 401 Status Code Antwort ab

• Änderung zu 302 Status Code mit Umleitung zum IP-STS

• Nach Token Ausstellung fängt FAM 401 Status erneut ab

• FAM erstellt ein IClaimsPrincipal Objekt für die Applikation

Page 26: SharePoint Claims und FBA

32

Session Authentication Module

Erstellt ein SessionSecurityToken

• Spiegelt den vom FAM empfangenen Token

• Speichert SessionSecurityToken im FedAuth Cookie

Bei weiteren Zugriffen wird das FedAuth Cookie verwendet

SAM fängt das FedAuth Cookie ab

• Extrahiert den SessionSecurityToken

• Erstellt das IClaimsPrincipal Interface für die Applikation

web.config <cookieHandler mode="Custom" path="/" persistentSessionLifetime="1.0:0:0">

Konfiguration über PowerShell $expire = 60*24*31 # 31 days

Set-SPSecurityTokenServiceConfig -FormsTokenLifetime $expire

iisreset

Page 27: SharePoint Claims und FBA

33

SharePoint 2010 Claims Sign-in

SharePoint http ModulesMulti-AuthSign-In Redirect

SharePoint STS

SharePointAuthorization

SharePointSite

Sign-In Page

Sign-In Page

Windows Auth

ASP.NET

Client

Trusted Login Provider

Custom STS Sign-In Page

Live ID

AD FS

Claims Providers

IdentityFoundation

IdentityFoundation

AudienceGroupsOther Claims

ClaimsToken

Browser

1

23

3

34

4

4Local Authentication Provider

5

6

7

8

9

11

10

12

Page 28: SharePoint Claims und FBA

34

• Aufruf der SharePoint Web Applikation

- https://[WEBAPP]

• Keine Authentifizierung des Benutzers

• Site antwortet mit 401 „Not authorized“

• SP-FAM

- Mehr als ein Auth-Provider konfiguriert

• Umleitung zur „Multiple Authentication Redirect “

Seite

- Nur ein Auth-Provider konfiguriert

• Direkte Umleitung zur Anmeldeseite

SharePoint 2010 Claims Sign-in 1

Page 29: SharePoint Claims und FBA

35

• Umleitung zur „Multiple

Authentication Redirect“ Seite

• Auswahl einer Authentifizierungs-

methode

• 302 Umleitung zur richtigen

Anmeldeseite

- https://[WEBAPP]/_login/default.aspx

SharePoint 2010 Claims Sign-in 2 (optional)

Page 30: SharePoint Claims und FBA

36

• 302 Umleitung zum SharePoint STS

- https://[WEBAPP]/_trust/default.aspx

- Query String Parameter übergibt

Providerauswahl des Benutzers

/default.aspx?trust=[Provider Name]

• Weitere 302 Umleitung zur richtigen

Anmeldeseite

- Interne SharePoint Anmeldung

- Federation STS

SharePoint 2010 Claims Sign-in 3

Page 31: SharePoint Claims und FBA

37

• Anmeldung und Authentifizierung

• STS prüft wtream Parameter

- URI der Relying Party Applikation

&wtrealm=urn:portal:sharepoint…

• STS sucht URI

- Findet Ziel-URL für POST des SAML

Tokens

• STS sendet SAML Token an

SharePoint STS

- https://[WEBAPP]/_trust

SharePoint 2010 Claims Sign-in 4 & 5

Page 32: SharePoint Claims und FBA

38

• SharePoint ruft registrierten Claims Provider

auf

• Zusätzliche Claims werden dem Token

hinzugefügt

- „Augmentation“

• SPSession Authentication Modul

- Erstellt SessionSecurityToken aus dem erweiterten

Claims Token

- Speichert den SessionSecurityToken im FedAuth

Cookie

• 302 Umleitung durch SharePoint STS zur

Web Applikation

- https://[WEBAPP]/_layouts/Authenticate.aspx

SharePoint 2010 Claims Sign-in 6 & 7

Page 33: SharePoint Claims und FBA

39

• SharePoint FAM erkennt FedAuth Cookie

• SAM erstellt IClaimsProncipal auf Basis des

Cookies

• ClaimsPrincipal Objekt wird in SPUser

Objekt konvertiert

- SPUser.UserToken enthält Claims

• Prüfung der Berechtigungen auf Basis von

SPUser.UserToken gegen ACL

SharePoint 2010 Claims Sign-in 8-12

Page 34: SharePoint Claims und FBA

40

SPUser Objekt Zuweisungen

SPUser Objekt

SAML Token

Claims Based

Identity

ASP.NET (FBA)

SQL, LDAP, Custom

NT Token

Windows Identity

SAML 1.1+

AD FS, Live ID, u.a.

NT Token

Windows Identity

ClaimsClassic

Page 35: SharePoint Claims und FBA

41

Plattformübergreifende Identitäten

Active DirectoryAndere Provider

SAML

Page 36: SharePoint Claims und FBA

42

Page 37: SharePoint Claims und FBA

43

Planung

Anzahl der externen Benutzer

Client Integration erforderlich?

Externer Zugriff auf MySites erforderlich?

Art des Zugriffs?

• Portal

• Collaboration

• Content Management

Page 38: SharePoint Claims und FBA

44

Planung

Fragen zur Infrastruktur

• Split DNS?

• Firewall Systeme?

• DMZ vorhanden?

SSL Zertifikate

• Externer Namespace?

• Zusammenfassung von Diensten in einer URL?

(SAN Zertifikate)

• Interne CA oder Zertifkate von Drittanbietern?

• Separate Url für mobile Endgeräte?

Page 39: SharePoint Claims und FBA

45

Entscheidungsfreiheit

Usa

bili

ty

Sicherheit

Page 40: SharePoint Claims und FBA

46

iCOMcept GmbH

Rotter Bruch 4

52068 Aachen

Tel: +49 241 96603 70

Web: http://www.icomcept.de

Blogs: http://blogs.icomcept.de

Twitter: @icomcept

Page 41: SharePoint Claims und FBA

47

Links

Active Directory Federation Services 2.0

http://www.microsoft.com/en-us/download/details.aspx?id=10909

Windows Identity Foundation

http://msdn.microsoft.com/en-us/security/aa570351.aspx

WS-Federated Authentication Module Overview

http://msdn.microsoft.com/en-us/library/ee517293.aspx

IClaimsPrincipal Interface

http://msdn.microsoft.com/de-de/library/microsoft.identitymodel.claims.iclaimsprincipal.aspx

Add a trusted root certification authority to a Group Policy object

http://technet.microsoft.com/en-us/library/cc738131%28v=ws.10%29.aspx

SharePoint Security Token Service Web Service Protocol Specification

http://msdn.microsoft.com/en-us/library/dd959418%28v=office.12%29

Professional ASP.NET 2.0 Security, Membership, and Role Management (Wrox Professional Guides)

http://amzn.to/LKilf4

Microsoft Windows Identity Foundation Cookbook

http://amzn.to/KuwSN0

Automating SharePoint 2010 with Windows PowerShell 2.0

http://amzn.to/LEnZxb