Kerberos - Alptraum oder Zusammenspiel? SQL Server, SharePoint, ein Client und der Doppelhopp Mark A. Kuschel
Organizer 13.06.2015 SQLSaturday Rheinland 2015
Bronze Sponsor 13.06.2015 SQLSaturday Rheinland 2015
Silver Sponsor 13.06.2015 SQLSaturday Rheinland 2015
Gold Sponsor 13.06.2015 SQLSaturday Rheinland 2015
You rock! 13.06.2015 SQLSaturday Rheinland 2015
Quelle: http://www.crunchyroll.com/group/mythical_creatures Club Kerberos?
Serveranmeldung: Klassisch GET Default.aspx HTTP 401
Serveranmeldung: Klassisch Du kommst hier net rein! WWW-Authenticate HTTP 403
Basic / NTLM Authentifizierung Direktes Versenden der Anmelde-informationen von Client und Server Häufig unverschlüsselte Übermittlung (Basic) NTLM ist über einen Hash ein wenig sicherer Abgreifen / Fälschen der Informationen über Man-In-The-Middle Attacken ist einfach möglich Alle Dienste müssen auf dem selben Server Installiert sein
Mit Kerberos geht es sicher Server und Dienste misstrauen sich standardmäßig gegenseitig Der Benutzer erhält bei der Anmeldung am Active Directory ein Kerberos Token und einen Sitzungsschlüssel für die Authentifizierung sowie Verschlüsselung des Datenverkehrs
Kerberos ist nicht Microsoft spezifisch! Definiert in RFC 4120 (Version 5, July 2005) Ursprünglich RFC 1510 (September 1993) Active Directory ist am weitesten verbreitete Implementierung (Microsoft Security Support Provider Interface = SSPI) Weitere: MIT Kerberos (Unix / Linux) Heimdal Kerberos (Unix, Linux, Mac) GNU Shishi (Unix / Linux)
Vertrauen und Delegierung Das Kerberos Token kann nur zwischen Servern und Diensten weitergereicht werden, welche sich explizit gegenseitig vertrauen Jeder Server und Dienst muss mit Server Prinzipal Namen (SPN) registriert werden Um das weiterreichen zu Erlauben muss eine Delegierung eingerichtet werden
Kerberos im SSPI Kontext
Kerberos Tickets
WinLogon
Beispiele für SPNs MSSQLSvc/MeinSQLServer ADVENTUREWORKS\SQLService http/meinsharepointserver ADVENTUREWORKS\SPWebService Definiert die Dienste, diese vertrauen sich aber noch nicht SharePoint SQL-Server
Delegierung definieren Kein Kommandozeilen- Befehl verfügbar Eigenschaften des Dienstkontos Delegierung auf Zielserver, Dienst und Protokoll definieren
DEMO SPN im AD, SetSPN und Delegierungen
Authentifizierung per Excel-Client (ROLAP) MDX SQL Analysis Services SQL-Server
Das Zusammenspiel mit SharePoint HTTP HTTP SQL? SharePoint Berichtsserver SQL-Server
Und was ist mit diesen Geräten? Können sich nicht am Active Directory anmelden Kein Kerberos
Claims to Windows Token Service (C2WTS) Fragt ein Kerberos Token am Domänencontroller an, nach Anmeldung per Web Benötigt spezielle Servereinstellungen (lokale Sicherheitsrichtlinie) Einsetzen als Teil des Betriebssystems Als Dienst anmelden Annehmen der Clientidentität nach Authentifizierung Muss im SharePoint als Service Application eingerichtet werden
Der Anmeldevorgang im Detail HTTP HTTP SQL www Auth SharePoint Berichtsserver SQL-Server C2WTS
Demo C2WTS
SPNs SQL Server MSSQLSvc/MeinSQLServer:1433 ADV\SQLService MSSQLSvc/MeinSQLServer.dev.local:1433 ADV\SQLService MSOLAPDisco.3/MeinSSASServer ADV\SSASService MSOLAPSvc.3/MeinSSAServer.adventureworks.local ADV\SSASService MSOLAPSvc.3/MeinSSASServer ADV\SSASService MSOLAPDisco.3/MeinSSASServer. adventureworks.local ADV\SSASService MSOLAPSvc.3/MeinSSASServer. adventureworks.local:1433 ADV\SSASService MSOLAPSvc.3/MeinSSASServer:1433 ADV\SSASService
SPNs SQL Server seit 2012 R2 MSSQLSvc/MeinSQLServer:1433 ADV\SQLService MSSQLSvc/MeinSQLServer.dev.local:1433 ADV\SQLService MSOLAPDisco.3/MeinSSASServer ADV\SSASService MSOLAPSvc.3/MeinSSAServer.adventureworks.local ADV\SSASService MSOLAPSvc.3/MeinSSASServer ADV\SSASService MSOLAPDisco.3/MeinSSASServer. adventureworks.local ADV\SSASService MSOLAPSvc.3/MeinSSASServer. adventureworks.local:1433 ADV\SSASService MSOLAPSvc.3/MeinSSASServer:1433 ADV\SSASService NEU FQDN ist ausreichend
SPNs SharePoint & SSRS SP/C2WTS ADV\C2WTS http/intranet ADV\SPService http/intranet.adventureworks.local ADV\SPService http/reporting ADV\SSRSService http/reporting.adventureworks.local ADV\SSRSService
Alles klar? Oder eher nicht?
Hilfe! Kerberos funktioniert nicht Registry & Eventlog Microsoft Message Analyzer
Save the date!