Identitätsdelegierung für Business Connectivity Services (SharePoint Server 2010)

 

Gilt für: SharePoint Server 2010

Letztes Änderungsdatum des Themas: 2016-11-30

In diesem Szenario konfigurieren Sie die Business Data Connectivity-Dienstanwendung für die Verwendung der eingeschränkten Kerberos-Delegierung zur Authentifizierung bei SQL Server. Nach Abschluss der Konfiguration erstellen Sie einen neuen externen Inhaltstyp und eine externe Liste, um die Authentifizierung und Lesevorgänge in einer SharePoint-Website zu testen.

In diesem Szenario befinden sich die SharePoint Server-Farm und die BCS-Datenquelle beide in der gleichen Domäne. Daher konfigurieren wir eingeschränkte Kerberos-Delegierung, um die Identitätsdelegierung an die Back-End-Datenquelle zu ermöglichen. Wenn Sie sich bei Datenquellen in anderen Domänen in der gleichen Gesamtstruktur authentifizieren müssen, müssen Sie einfache (nicht eingeschränkte) Kerberos-Delegierung konfigurieren. Denken Sie daran, dass BCS den Forderungen-zu-Windows-Tokens-Dienst (C2WTS) nicht nutzt und daher einfache Delegierung verwenden kann.

Szenarioabhängigkeiten

Damit Sie dieses Szenario durcharbeiten können, müssen Sie Folgendes bereits ausgeführt haben:

Checkliste für die Konfiguration

Konfigurationsbereich Beschreibung

Active Directory-Konfiguration

BCS-Anwendungsdienstkonto erstellen

Dienstprinzipalnamen überprüfen

Delegierung konfigurieren

SharePoint Server-Konfiguration

BCS-Dienstinstanz starten

BCS-Dienstanwendung erstellen

Überprüfung

Externen BCS-Inhaltstyp erstellen

Sicherheit für BCS konfigurieren

Externe BCS-Liste erstellen

Externe Liste im Browser öffnen

Details der Szenarioumgebung

Diagramm zum Authentifizierungsprozess Diagramm zum Delegationsprozess

Schritt-für-Schritt-Anleitung für die Konfiguration

Active Directory-Konfiguration

Erstellen des BCS-Anwendungsdienstkontos

Es wird empfohlen, Business Connectivity Services unter einer eigenen Domänenidentität auszuführen. Zum Konfigurieren der BCS-Anwendung müssen Sie ein Active Directory-Konto erstellen. Im aktuellen Beispiel wurden die folgenden Konten erstellt:

SharePoint Server-Dienst IIS-Anwendungspoolidentität

Business Connectivity Services

vmlab\svcBDC

Überprüfen der Dienstprinzipalnamen

Externe BCS-Inhaltstypen werden innerhalb des Kontexts des IIS-Anwendungspools mithilfe des ECT-Typs ausgeführt, wenn BCS-Daten in SharePoint-Websites verwendet werden. Damit BCS mithilfe von Kerberos-Authentifizierung eine Verbindung zu externen Datenquellen herstellt und bei diesen Datenquellen eine Authentifizierung durchführt, müssen für die Dienstkonten des IIS-Anwendungspools und für das Dienstkonto für die externe Datenquelle Dienstprinzipalnamen konfiguriert sein. Informationen zum Konfigurieren und Überprüfen der erforderlichen Dienstprinzipalnamen in den Webanwendungen und SQL Server.Dienstkonten finden Sie in den Szenarien 1 und 2 in diesem Dokument.

Konfigurieren der Delegierung

Damit BCS die Identität des Clients delegieren kann, muss Kerberos-Delegierung konfiguriert werden. Technisch gesehen ist zwar die eingeschränkte Delegierung nicht erforderlich – beispielsweise kann in Excel Services uneingeschränkte Delegierung für BCS verwendet werden –, doch hat es sich bewährt, den Umfang der Delegierungen zu begrenzen, die der Dienst ausführen kann. Deshalb wird in diesem Beispiel eingeschränkte Delegierung konfiguriert.

Jedes IIS-Anwendungspool-Dienstkonto, von dem die Website mit dem externen Inhaltstyp gehostet wird, muss so konfiguriert werden, dass Delegierung an die Back-End-Dienste erlaubt ist.

In unserem Beispiel werden die folgenden Delegierungspfade benötigt:

Prinzipaltyp Prinzipalname Dienst, an den delegiert wird

Benutzer

svcPortal10App

MSSQLSVC/MySqlCluster.vmlab.local:1433

Benutzer

svcTeams10App

MSSQLSVC/MySqlCluster.vmlab.local:1433

So konfigurieren Sie eingeschränkte Delegierung

  1. Öffnen Sie in Active Directory-Benutzer und -Computer die Eigenschaften des Active Directory-Objekts.

  2. Wechseln Sie zur Registerkarte Delegierung.

    SP2010 Kerberos Guide228.gif

  3. Wählen Sie die Option Benutzer bei Delegierungen angegebener Dienste vertrauen aus.

    Hinweis

    Wenn BCS bei Datenquellen innerhalb derselben Gesamtstruktur, aber außerhalb der Domäne, in der sich SharePoint Server befindet, authentifiziert werden muss, empfiehlt es sich, Computer bei Delegierungen aller Dienste vertrauen auszuwählen, um einfache Delegierung statt eingeschränkter Delegierung zu konfigurieren. Der externe BCS-Inhaltstyp wird im IIS-Arbeitsprozess der Webanwendung ausgeführt und verwendet nicht den Forderungen-zu-Windows-Tokens-Dienst (C2WTS). Denken Sie daran, dass eine gesamtstrukturübergreifende Kerberos-Delegierung nicht möglich ist.

  4. Klicken Sie auf die Schaltfläche Hinzufügen, um den Dienstprinzipal auszuwählen, an den delegiert werden kann.

  5. Wählen Sie Benutzer und Computer aus.

  6. Wählen Sie das Dienstkonto aus, unter dem der Dienst ausgeführt wird, an den die Delegierung erfolgen soll. Im aktuellen Beispiel ist dies das Dienstkonto für den SQL Server-Dienst.

    Hinweis

    Dem ausgewählten Dienstkonto muss ein Dienstprinzipalname zugeordnet sein. In unserem Beispiel war der Dienstprinzipalname für dieses Konto in einem früheren Szenario konfiguriert worden.

  7. Klicken Sie auf OK.

  8. Wählen Sie die zu delegierenden Dienstprinzipalnamen aus, und klicken Sie dann auf OK.

  9. Wählen Sie die Dienste für den SQL Server-Cluster aus, und klicken Sie auf OK.

    Die ausgewählten Dienstprinzipalnamen sollten nun in der Liste Dienste, für die dieses Konto delegierte Anmeldeinformationen verwenden kann angezeigt werden:

  10. Wiederholen Sie diese Schritte für jeden Delegierungspfad, der weiter oben in diesem Abschnitt angegeben wurde.

Überprüfen des MSSQLSVC-Dienstprinzipalnamens für das Dienstkonto, unter dem der Dienst auf dem Server mit SQL Server ausgeführt wird (Szenario 2)

Stellen Sie sicher, dass der Dienstprinzipalname für das Analysis Services-Dienstkonto (vmlab\svcSQL) vorhanden ist, indem Sie den folgenden SetSPN-Befehl verwenden:

SetSPN -L vmlab\svcSQL

Sie sollten folgende Ausgabe sehen:

MSSQLSVC/MySqlCluster

MSSQLSVC/MySqlCluster.vmlab.local:1433

SharePoint Server-Konfiguration

Starten der BCS-Dienstinstanz

Bevor Sie eine BCS-Dienstanwendung erstellen, starten Sie den BCS-Dienst auf den vorgesehenen Farmservern.

  1. Öffnen Sie die Zentraladministration.

  2. Wählen Sie unter Dienste die Option Dienste auf dem Server verwalten aus.

  3. Wählen Sie im Feld Serverauswahl in der rechten oberen Ecke den bzw. die Server mit Excel Services. In diesem Beispiel ist dies VMSP10APP01.

  4. Starten Sie den Business Data Connectivity-Dienst.

Erstellen der BCS-Dienstanwendung

Konfigurieren Sie als Nächstes eine neue BDC-Dienstanwendung und einen Anwendungsproxy, damit Webanwendungen BDC-Dienste verwenden können:

  1. Öffnen Sie die Zentraladministration.

  2. Klicken Sie unter Anwendungsverwaltung auf Dienstanwendungen verwalten.

  3. Klicken Sie auf Neu und dann auf Business Data Connectivity-Dienst.

  4. Konfigurieren Sie die neue Dienstanwendung. Achten Sie darauf, dass Sie das richtige Dienstkonto auswählen. (Falls das BDC-Dienstkonto nicht in der Liste enthalten ist, erstellen Sie ein neues verwaltetes Konto).

Überprüfung

Erstellen eines externen BCS-Inhaltstyps

Für den Zugriff auf externe Daten über BDC muss ein externer BDC-Inhaltstyp erstellt werden. Im aktuellen Beispiel erstellen wir den externen Inhaltstyp mithilfe von SharePoint Designer 2010 in der Portalwebanwendung (http://portal):

  1. Öffnen Sie SharePoint Designer 2010.

  2. Öffnen Sie die Testwebsitesammlung unter http://portal.

  3. Klicken Sie im linken Navigationsbereich auf Externe Inhaltstypen.

  4. Klicken Sie im Abschnitt Neu des Menübands in der linken oberen Ecke der Seite auf Externer Inhaltstyp.

  5. Geben Sie einen Anzeigenamen für den externen Inhaltstyp ein.

  6. Klicken Sie dann auf Klicken Sie hier, um externe Datenquellen zu ermitteln und Vorgänge zu definieren.

  7. Klicken Sie auf Verbindung hinzufügen.

  8. Wählen Sie in der Dropdownliste Datenquellentyp den Eintrag SQL Server aus, und fügen Sie die Informationen zum Herstellen der Verbindung zur Testdatenbank hinzu. Wählen Sie unbedingt Verbindung mit der Identität des Benutzers herstellen aus, um die Delegierung zu testen.

  9. Erweitern Sie die neue Verbindung. Klicken Sie mit der rechten Maustaste auf die Testtabelle (Sales), und wählen Sie Alle Vorgänge erstellen aus.

  10. Es sollte eine Fehlermeldung angezeigt werden, wonach kein eindeutiger Bezeichner definiert ist. Wählen Sie die Bezeichnerspalte aus, und aktivieren Sie das Kontrollkästchen Zuzuordnender Bezeichner. Klicken Sie auf Fertig stellen, um die Standardoptionen zu übernehmen und die Vorgänge für den externen Inhaltstyp zu erstellen.

  11. Klicken Sie auf Speichern (STRG+S). Dadurch wird der externe Inhaltstyp im Metadatenspeicher der BDC-Dienstanwendung gespeichert.

Konfigurieren der Sicherheit für BCS

Bevor Clients den externen BCS-Inhaltstyp in der Portalwebanwendung verwenden können, müssen BCS-Berechtigungen konfiguriert werden. BCS unterstützt ein differenziertes Berechtigungsmodell. Zu Demozwecken konfigurieren wir jedoch Sicherheit auf der Metadatenspeicherebene und geben die Änderungen in Bezug auf Sicherheit an alle Objekte im Speicher weiter.

  1. Öffnen Sie die Zentraladministration.

  2. Klicken Sie unter Anwendungsverwaltung auf Dienstanwendungen verwalten.

  3. Klicken Sie auf den Link für die neue Dienstanwendung, in diesem Beispiel Business Data Services.

  4. Wählen Sie Berechtigungen für den Metadatenspeicher festlegen aus.

  5. Im aktuellen Beispiel haben wir für Organisations-Admins alle Berechtigungen und für Alle authentifizierten Benutzer alle Berechtigungen mit Ausnahme von Berechtigungen festlgen erteilt.

  6. Stellen Sie sicher, dass das Kontrollkästchen Berechtigungen weitergeben aktiviert ist, und klicken Sie auf OK, um die Änderungen zu speichern.

Erstellen einer externen BCS-Liste

Zum Testen des externen Inhaltstyps konfigurieren wir eine externe Liste zum Anzeigen der externen Daten in der Portalanwendung:

  1. Öffnen Sie SharePoint Designer 2010.

  2. Öffnen Sie die Testwebsitesammlung unter http://portal.

  3. Wählen Sie im linken Bereich Externe Inhaltstypen aus.

  4. Klicken Sie auf den Inhaltstyp, den Sie zuvor erstellt haben.

  5. Klicken Sie auf dem Menüband auf Listen und Formulare erstellen.

  6. Klicken Sie bei der Aufforderung, den externen Inhaltstyp zu speichern, auf Ja.

  7. Geben Sie im Dialogfeld Liste und Formular erstellen im Textfeld Listenname einen Namen für die Liste ein, und klicken Sie auf OK.

Öffnen der externen Liste im Browser

  1. Öffnen Sie SharePoint Designer 2010.

  2. Öffnen Sie die Testwebsitesammlung unter http://portal.

  3. Klicken Sie im linken Navigationsbereich auf Listen und Bibliotheken.

  4. Wählen Sie die externe Liste am unteren Ende der Liste Listen und Bibliotheken aus.

  5. Klicken Sie auf die Schaltfläche Browservorschau.

    Internet Explorer wird geöffnet, und die ausgewählte Website und externe Liste wird angezeigt.

  6. Vergewissern Sie sich, dass die externen Daten korrekt angezeigt werden. Zur weiteren Überprüfung der Verbindung ändern Sie die Quelldaten in SQL Server Management Studio und aktualisieren die Browserseite. Die Datenänderungen sollten im Browser wiedergegeben werden.