Aufbau eines SharePoint 2010 Extranet Portals – Teil 1

Mit SharePoint 2010 hat Microsoft die Entwicklung der SharePoint Services konsequent weitergeführt und ein erstklassiges Produkt zum Aufbau von internen und externen Webseiten entwickelt. Als ein Produkt aus dem Hause Microsoft ist die Benutzeranmeldung selbstverständlich mit dem Active Directory verbunden was insbesondere für den Einsatz als Intranet-Portal die Verwaltung vereinfacht. Alternativ können auch externe Benutzerdatenbanken wie ein LDAP-Server oder auch einen SQL Datenbank angebunden werden.

Da stellt sich dann schnell mal die Frage ob sich diese beiden Anwendungsfälle auch mischen lassen um die Vorteile beider Ansätze miteinander zu verbinden. Am Beispiel eines Projektportals, dass sowohl von den Mitarbeitern des Unternehmens intern als auch von den Kunden über einen externen Zugriff genutzt werden soll. Die internen Mitarbeiter sollen hierbei wie gewohnt mit Ihrem Windows-Benutzerkonto angemeldet werden, die Benutzerkonnten der Kunden sollen in einer SQL Datenbank angelegt werden.

     
 

Erster Schritt .. Installation des SharePoint Servers

Als Ausgangsbasis wird ein existierender Windows 2008 R2 Server verwendet, der SQL Server ist ebenfalls eine existierende SQL 2008 R2 Instanz auf einem weiteren Server.

Auf dem neuen SharePoint Server wird zuerst die PrerequisiteInstaller.exe ausgeführt, diese installiert alle notwendigen Komponenten sowie die benötigten Rollen. Anschließend wird der SharePoint Server installiert und über den Einrichtungsassistenten wird eine neue Farm erstellt.

     
 

Zweiter Schritt .. Erstellen der ASP.NET Membership Database und Anpassung der IIS-Einstellungen

Für die Externen Benutzer muss jetzt erst mal einen Datenbank angelegt werden in der diese gespeichert werden. Hierfür wird das Tool C:\Windows\Microsoft.NET\Framework64\v2.0.50727\aspnet_regsql.exe auf dem SharePoint Server ausgeführt und mit Hilfe des Assistenten eine neue ASP.NET Membership Datenbank erstellt. Anschließend erstellen wir auf dem SQL Server ein SQL-Login und erteilen diesem Login die Berechtigung als db_owner für unsere neue Datenbank. Falls erforderlich müssen wir hierfür die SQL-Authentifizierung des SQL-Servers aktivieren und den SQL-Server neu starten.

Als nächster Schritt muss im IIS-Manager eine Verbindungszeichenfolge erstellt werden, die die Verbindung zu unserer Datenbank speichert.


     
 

Alle folgenden Schritte müssen zuerst auf Ebene des Webservers und anschließend in der Seite SharePoint Web Services ausgeführt werden, hierbei müssen zwingen identische Namen für die Anbieter vergeben werden ..


.. zuerst ein Anbieter für .NET Benutzer vom Typ SqlMembershipProvider ..


.. und danach ein Anbieter für .NET Rollen vom Typ SqlRoleProvider


       
 

Dritter Schritt .. Abschließen der Installation und Erstellung der Webanwendung für den internen Zugriff

Bei dem ersten Aufruf der Zentraladministration kann der SharePoint Server über den Assistenten eingerichtet werden, das Erstellen einer Webanwendung sollte hier jedoch übersprungen werden da die so erstellte Seite hier nicht benutzt werden kann.

Anschließend wird in der Zentraladministration unter Anwendungsverwaltung > Webanwendungen verwalten eine neue Webanwendung erstellt. Hierbei muss auf jeden Fall die Option Forderungsbasierte Authentifizierung gesetzt werden.


   
 

Diese Anwendung ist für den internen Zugriff und wird NTLM Authentifizierung verwenden. Zusätzlich muss die Formularbasierte Authentifizierung aktiviert werden und wir geben dort die Namen der Authentifizierungsanbieter an. Damit die Anmeldeseite erreichbar ist muss zudem der Anonyme Zugriff aktiviert werden, das erlaubt jedoch nur den Zugriff auf die Anmeldeseite.


   
 

Diese Webanwendung läuft auf dem Port 80 und stellt den Zugriff für die internen Mitarbeiter zur Verfügung. Über Anwendungsverwaltung > Websitesammlung erstellen müssen wir noch einen Websitesammlung in unserer Webanwendung erstellen.

   
 

   
 

Vierter Schritt .. Feineinstellung der Webseite im IIS-Manager und Erstellen eines Testbenutzers

Wieder zurück im IIS-Manager wählen wir die Webanwendung für den externen Zugriff aus, die gerade erst erstellt wurde. Dort öffnen wir das Feature .NET Benutzer und erhalten auch prompt eine Fehlermeldung dass der Standardanbieter nicht vertrauenswürdig ist.


Im dem Feature kann anschließend mit der Option Standardanbieter festlegen unser neuer Authentifizierungsanbieter festgelegt werden.


   
 

Dieses wiederholen wir bei dem Feature .NET Rollen und öffnen anschließend das Feature .NET Benutzer erneut .. dort können wir über Hinzufügen einen Benutzer anlegen.

Die so hinzugefügten Benutzer können wir in der SharePoint Seite Berechtigungen erteilen.

   
 

Fünfter Schritt .. Erstellung der Webanwendung für den externen Zugriff

In der Zentraladministration unter Anwendungsverwaltung > Webanwendungen verwalten wählen wir unsere gerade erstellte Webanwendung aus und erweitern diese über den Button “Erweitert”.


     
 

Hier aktivieren wir wie vorher die Formularbasierte Authentifizierung, bei der Windows-Authentifizierung deaktivieren wir NTLM und aktivieren dafür die Basisauthentifizierung. Zusätzlich muss auch hier der Anonyme Zugriff aktiviert werden, da die Anmeldeseite sonst nicht erreichbar ist.

Beim Erstellen sollte darauf geachtet werden, dass die öffentliche URL bereits den späteren externen Hostnamen verwendet. Als Zone geben wir Extranet an.

Nachdem die Seite erstellt wurde öffnen wir im IIS-Manager des Server-Eintrag und dort die Option Serverzertifikate.


Über die Option Selbstsigniertes Zertifikat erstellen können wir erst einmal ein Testzertifikat erzeugen.

Anschließend fügen wir das neu erstellte Zertifikat in der Website über Bindungen Bearbeiten > Erweitert hinzu.  

 

Die externe Webseite können wir jetzt aufrufen, wir erhalten lediglich noch eine Zertifikatswarnung …