Bei der Erstellung von Konzepten kommt man immer wieder an einen Punkt, an dem man sich Gedanken über die Authentifizierungsanbieter macht. Viele Consultants scheuen hierbei die Option Kerberos, da diese ja im allgemeinen sehr komplex ist. Ist Kerberos wirklich so komplex? In diesem Artikel möchte ich eine Schritt für Schritt-Anleitung zur Verfügung stellen, wie Sie Ihre PWA und den SQL über den Authentifizierungsanbieter Kerberos bereitstellen können.
Bitte denken Sie daran, dass nicht immer Kerberos die optimale Lösung ist und dies immer auf Ihre Situation geprüft werden sollte.
Vorteile von Kerberos liegen auf der Hand, bessere Performance als das NTLM Authentifizierungsprotokoll, Delegation der Anmeldeinformationen an ein weiteres System und die Verschlüsselung der Berechtigungsinformationen (credentials).
Aktivieren von Kerberos auf Ihrem SQL Server
Als erstes wollen wir auf dem SQL Server das Kerberos-Protokoll aktivieren. Hierzu benötigen wir zuerst den Dienstnamen. Diesen können wir relativ einfach über die PowerShell abrufen. Geben Sie hierzu den folgenden Befehl ein:
Get-Services * | Where {$_.Status –eq running}
Danach sollte die Ausgabe wie folgt bei Ihnen aussehen:
Suchen Sie nun den Namen Ihre SQL Server Instanz. In meinem Beispiel “MICROSOFTSQLSERVER”. Merken Sie sich den Servicenamen.
Als nächstes werden wir einen Service Principal Name (SPN) für den SQL Server registrieren. Dies können wir mit dem Kommandozeilentool setspn.exe durchführen. Hier gilt die folgende Syntax:
Geben Sie nun den folgenden Befehl ein:
setspn -A MSSQLSERVER/BL-SQL-01:1433 blankertz-pm\SQLDBEngine
Danach müsste die Ausgabe wie folgt aussehen:
Mit dem folgenden Befehl können Sie prüfen, ob der SPN erfolgreich angelegt wurde.
setup -L blankertz-pm\SQLDBEngine
Alternativ können Sie dies natürlich auch im ActiveDirectory prüfen. Öffnen Sie hierfür den genannten Benutzer, gehen Sie unter den Optionen auf die Registerkarte “Attribute-Editor” und suchen Sie dort die Option “servicePrincipaleName”.
Achtung: Sollte Ihnen der Attribut Editor nicht zur Verfügung stehen, müssen Sie die “Erweiterten Ansicht “ unter der Registerkarte “Ansichten” aktivieren.
Führen Sie einen Doppelklick auf die Option “ServicePrincipalName” aus. Natürlich können Sie weitere SPN’s auch hier eintragen :
Das war es schon auf der SQL Seite.
Achtung: Es macht eventuell Sinn, alle Zugriffsmöglichkeiten aufzunehmen!
Einstellen von Kerberos auf der SharePoint bzw. Project Server Seite
Sollten Sie schon eine PWA angelegt haben, dann gehen Sie wie folgt vor. Kontrollieren Sie den Service-Account unter dem die Websitesammlung ausgeführt wird. Dies können Sie über den IIS prüfen. Öffnen Sie den IIS-Manager. Wählen Sie Ihren Anwendungspool unter den Anwendungspools und klicken Sie in der rechten Seite auf “Erweiterte Einstellungen”.
Unter Prozessmodell können Sie den ServiceAccount ablesen:
Nun müssen wir den SPN für die PWA Site hinzufügen. Hierzu gilt die folgende Syntax:
Geben Sie also den folgenden Befehl ein:
setspn -A http/pwa domäne\PWAAppAccount
Das war es schon auf der ProjectServer Seite
Öffnen Sie danach den Benutzer, für den wir gerade den SPN eingerichtet haben übder “Active Directory Benutzer und Computer”. Wechseln Sie dort auf die Registerkarte Delegierung und aktivieren Sie die Option “Benutzer bei Delegierungen aller Dienste vertrauen (nur Kerberos)”.
Achtung: Diese Registerkarte steht Ihnen nur zur Verfügung, wenn Sie einen SPN eingerichtet haben!
Verfolgung von Kerberos-Tickets
Viele Administratoren werden noch das Programm kerbtray.exe kennen. Dieses Programm wird leider nicht mehr unter Windows Server 2008 (R2) zur Verfügung gestellt. Aber natürlich können Sie das Programm aus dem 2003 Ressourcen-Kit weiterhin benutzen (download) oder direkt das Programm von meinem Link herunterladen (download). Natürlich auf eigene Gefahr .
Umstellung der Websitesammlung auf Kerberos-Authentifizierung
Wechseln Sie nun auf Ihre Zentraladministration auf Ihrem Project Server 2010. Wechsel Sie unter der Rubrik “Anwendungsverwaltung” auf den Link “Anwendungen verwalten”:
Wählen Sie nun Ihre Webanwendung unter dieser der PWA ausgeführt wird, und klicken Sie anschließend in der Ribbonoberfläsche auf den Button “Authentifizierungsanbieter”.
Klicken Sie in dem darauf folgenden Fenster auf den Link “Standard”.
Scrollen Sie nun in den unteren Bereich der Seite bis zum Bereich “IIS Authentifizierungseinstellungen” und aktivieren Sie dort “Aushandeln (Kerberos)”.
Achtung: Sollten Sie eine neue PWA-Site anlegen, heißt die Rubrik “Sicherheitskonfiguration”. Achten Sie darauf, dass Sie als Service-Account den zuvor aktivierten Account wählen und als Authentifizierung “Standard Authentifizierung” wählen.
Kontrolle der Kerberos Protokoll im SQL Server:
Kontrollieren Sie nun, ob die Aktivierung des Kerberos Protokolls erfolgreich war. Öffnen Sie hierzu das SQL Management Studio. Gehen Sie auf “Neue Abfrage” und geben Sie nun den folgenden SQl Befehl ein:
Erfolgreiche Bereitstellung der Kerberos Authentifizierung:
Nicht erfolgreiche Bereitstellung der Kerberos-Authentifizierung:
Der DNS Eintrag
Achten Sie darauf, dass der DNS Eintrag nicht als Canoncial Name (CNAME) eingetragen ist, sondern als A-Record (A oder AAAA). Sie können zwar den Host SPN hinzufügen, hier von rate ich Ihnen allerdings ab.
Schreibe einen Kommentar