Konfigurieren von Objektcachebenutzerkonten in SharePoint Server

GILT FÜR:yes-img-132013 yes-img-162016 yes-img-192019 yes-img-seSubscription Edition no-img-sopSharePoint in Microsoft 365

Der Objektcache speichert Eigenschaften zu Elementen in SharePoint Server. Elemente, die sich in diesem Cache befinden, werden von der Veröffentlichungsfunktion beim Rendern von Webseiten verwendet. Der Zweck des Objektcaches besteht darin, die Arbeitslast auf dem Computer zu reduzieren, auf dem SQL Server ausgeführt wird, und die Wartezeiten bei Anforderungen sowie den Durchsatz zu verbessern. Abfragen nimmt der Objektcache unter einem der beiden vordefinierten Konten "Portal Super User" und "Portal Super Reader" vor. Damit der Objektcache ordnungsgemäß funktioniert, müssen diese beiden Benutzerkonten korrekt konfiguriert sein. Das "Portal Super User"-Konto muss ein Konto sein, dass über Vollzugriff auf die Webanwendung verfügt. Das "Portal Super Reader"-Konto muss ein Konto sein, das über vollständigen Lesezugriff auf die Webanwendung verfügt.

Wichtig

"Portal Super User" und "Portal Super Reader" müssen separate Konten sein, die nie zum Anmelden bei der Website verwendet werden.

In diesem Artikel wird erläutert, warum diese Objektcachebenutzerkonten konfiguriert werden müssen, und es wird beschrieben, wie die Konten konfiguriert werden. Informationen zum Objektcache finden Sie unter Cacheeinstellungsvorgänge in SharePoint Server.

In SharePoint Server ist die Abfrage nach Elementen mit dem Benutzerkonto verknüpft, das die Abfrage erstellt. Verschiedene Teile der Veröffentlichungsfunktion stellen Abfragen, deren Ergebnisse im Objektcache zwischengespeichert werden. Diese Zwischenspeicherung erfolgt basierend auf dem Benutzer, von dem die Abfrage stammt. Damit die Trefferrate möglichst hoch und der Speicherbedarf niedrig ist, muss bei den Abfragen danach gegangen werden, ob die Entwurfselemente von einem Benutzer gesehen werden können oder nicht. Wenn ein Steuerelement der Veröffentlichungsfunktion den Objektcache veranlasst, eine Abfrage vorzunehmen, um Daten für das Steuerelement abzurufen, nimmt der Cache die Abfrage zweimal vor: einmal unter dem Konto "Portal Super User" und einmal als "Portal Super Reader". Die Ergebnisse beider Abfragen werden im Objektcache gespeichert. Die Ergebnisse für den "Portal Super User" beinhalten Entwurfselemente, und die Ergebnisse für den "Portal Super Reader" enthalten nur veröffentlichte Elemente. Danach prüft der Objektcache die Zugriffssteuerungslisten (Access Control Lists, ACLs) für den Benutzer, von dem die Anfrage stammt, und gibt die entsprechenden Ergebnisse unter dem Aspekt zurück, ob Entwurfselemente für diesen Benutzer sichtbar sind. Durch Hinzufügen der beiden Konten "Portal Super User" und "Portal Super Reader" zur Webanwendung wird erreicht, dass im Cache nur für zwei Benutzer Ergebnisse gespeichert werden müssen. Dadurch können auf Abfragen mehr Ergebnisse zurückgegeben werden, während gleichzeitig weniger Speicherplatz für den Cache erforderlich ist.

In der Standardeinstellung ist das "Portal Super User"-Konto das Systemkonto der Website und das "Portal Super Reader"-Konto ist "NT Authority\Local Service". Bei Verwendung der vordefinierten Konten sind zwei Probleme zu beachten:

  1. Das erste Problem besteht darin, dass einige Elemente im Systemkonto ausgecheckt werden. Wenn also eine Abfrage durchgeführt wird, die diese Elemente enthält, wird die ausgecheckte Version des Elements anstelle der neuesten veröffentlichten Version zurückgegeben. Dies ist ein Problem, da es nicht das ist, was ein Benutzer hätte zurückgegeben, sodass der Cache eine zweite Abfrage durchführen muss, um die richtige Version der Datei abzurufen. Dies wirkt sich negativ auf die Serverleistung für jede Anforderung aus, die diese Elemente enthält. Das gleiche Problem tritt für jeden Benutzer auf, bei dem Elemente ausgecheckt sind, wenn das Konto dieses Benutzers auf das Portal-Superbenutzerkonto festgelegt wurde. Aus diesem Grund sollten die Konten, die als "Portal-Superbenutzer" und "Portal Super Reader" konfiguriert sind, keine Benutzerkonten sein, die für die Anmeldung bei der Website verwendet werden. Dadurch wird sichergestellt, dass der Benutzer nicht versehentlich Elemente auscheckt und Leistungsprobleme verursacht.

  2. Das standardmäßige "Portal Super Reader"-Konto lautet "NT Authority\Local Service", das in einer anspruchsbasierten Authentifizierungsanwendung nicht korrekt aufgelöst wird. Wenn das Portal Super Reader-Konto nicht explizit für eine Anspruchsauthentifizierungsanwendung konfiguriert ist, führt das Navigieren zu Websitesammlungen unter dieser Anwendung auch für den Websiteadministrator zu einem Fehler "Zugriff verweigert". Dieser Fehler tritt bei jeder Website auf, die eine beliebige Funktion nutzt, welche explizit auf den Objektcache zugreift (wie z. B. die SharePoint Server-Veröffentlichungsinfrastruktur, die Metadatennavigation, der Inhaltsabfrage-Webpart oder die Navigation).

Konfigurieren von Objektcache-Benutzerkonten per Zentraladministration und Windows PowerShell

Sie können die Benutzerkonten für den Objektcache über die SharePoint-Zentraladministrationswebsite und Microsoft PowerShell konfigurieren. Sie müssen zuerst die Konten in der Zentraladministration erstellen und dann mithilfe von PowerShell der Webanwendung hinzufügen. Sie müssen die Benutzerkonten jeder einzelnen Webanwendung hinzufügen.

Achtung

Nach Abschluss dieser Schritte müssen Sie IIS (Internet Information Services, Internetinformationsdienste) zurücksetzen, damit die Änderungen in der Webanwendung übernommen werden. Dies sollten Sie zu einem Zeitpunkt durchführen, zu dem möglichst wenige Benutzer mit der Website verbunden sind. Weitere Informationen zu IISReset finden Sie unter IIS Reset Activity (Zurücksetzen von IIS).

So erstellen Sie die Benutzerkonten mithilfe der Zentraladministration

  1. Stellen Sie sicher, dass das Benutzerkonto, mit dem dieser Vorgang ausgeführt wird, ein Mitglied der Gruppe "Farmadministratoren" auf dem Computer ist, auf dem die Website der SharePoint-Zentraladministration ausgeführt wird.

  2. Klicken Sie in der Zentraladministration im Abschnitt Anwendungsverwaltung auf Webanwendungen verwalten, und klicken Sie dann auf den Namen der Webanwendung, die Sie konfigurieren möchten.

  3. Klicken Sie auf der Registerkarte Webanwendungen in der Gruppe Richtlinie auf Benutzerrichtlinie.

  4. Klicken Sie im Fenster Richtlinie für Webanwendung auf Benutzer hinzufügen.

  5. Wählen Sie in der Liste Zonen den Eintrag Alle Zonen aus, und klicken Sie dann auf Weiter.

  6. Geben Sie im Feld Benutzer den Benutzernamen für das Portal-Superbenutzerkonto ein, und klicken Sie dann auf Namen überprüfen , um sicherzustellen, dass der Kontoname von den Authentifizierungsanbietern auf dem Anwendungsserver aufgelöst werden kann.

  7. Aktivieren Sie im Abschnitt Berechtigungen auswählen das Kontrollkästchen Vollzugriff – Hat Vollzugriff , und klicken Sie dann auf Fertig stellen.

  8. Wiederholen Sie die Schritte 5 bis 7 für das Super Reader-Konto des Portals.

  9. Aktivieren Sie im Abschnitt Berechtigungen auswählen das Kästchen Vollständiger schreibgeschützter Zugriff - Verfügt über vollständigen schreibgeschützten Zugriff.

  10. Klicken Sie auf Fertig stellen.

  11. Achten Sie darauf, welche Namen für das Objektcache-"Super Reader"- und das Objektcache-"Super User"-Konto in der Spalte Benutzername angezeigt werden. Bei Verwendung von oder Verzicht auf anspruchsbasierte Authentifizierung für die Webanwendung werden jeweils unterschiedliche Zeichenfolgen angezeigt.

So fügen Sie die Benutzerkonten mithilfe von Microsoft PowerShell zur Webanwendung hinzu

  1. Vergewissern Sie sich, dass Sie über die folgenden Mitgliedschaften verfügen:
  • Feste Serverrolle securityadmin auf der SQL Server-Instanz.

  • Die feste Datenbankrolle db_owner auf allen Datenbanken, die aktualisiert werden.

  • Mitglied der Gruppe der Administratoren auf dem Server, auf dem die PowerShell-Cmdlets ausgeführt werden.

  • Fügen Sie Mitgliedschaften hinzu, falls zusätzlich zu den obigen Mindestanforderungen noch weitere Mitgliedschaften erforderlich sind.

    Mit dem Cmdlet Add-SPShellAdmin kann ein Administrator die Berechtigung zur Verwendung von SharePoint Server-Cmdlets gewähren.

    Hinweis

    [!HINWEIS] Wenn Sie keine Berechtigungen haben, wenden Sie sich an den Setupadministrator oder SQL Server-Administrator, um Berechtigungen anzufordern. Weitere Informationen über PowerShell-Berechtigungen finden Sie unter Add-SPShellAdmin.

  1. Fügen Sie den folgenden Code in einen Text-Editor wie z. B. Editor ein:
$wa = Get-SPWebApplication -Identity "<WebApplication>"
$wa.Properties["portalsuperuseraccount"] = "<SuperUser>"
$wa.Properties["portalsuperreaderaccount"] = "<SuperReader>"
$wa.Update()
  1. Ersetzen Sie die folgenden Platzhalter durch Werte:
  • <WebApplication> ist der Name der Webanwendung, der die Konten hinzugefügt werden sollen.

  • <SuperUser> ist das Konto, das für das Portal-Superbenutzerkonto verwendet werden soll, wie es in der Spalte Benutzername in Schritt 11 des vorherigen Verfahrens angezeigt wurde.

  • <SuperReader> ist ein Konto, das für das Super Reader-Konto des Portals verwendet werden soll, wie es in der Spalte Benutzername in Schritt 11 des vorherigen Verfahrens angezeigt wurde.

  1. Speichern Sie die Datei unter dem Namen "SetUsers.ps1".

    Hinweis

    Sie können auch einen anderen Dateinamen verwenden, wichtig ist nur, dass die Datei als ANSI-codierte Textdatei mit der Dateinamenerweiterung .ps1 gespeichert wird.

  2. Schließen Sie den Text-Editor.

  3. Öffnen Sie SharePoint 15-Verwaltungsshell.

  4. Navigieren Sie zu dem Verzeichnis, in dem Sie die Datei gespeichert haben.

  5. Geben Sie an der PowerShell-Eingabeaufforderung den folgenden Befehl ein: ./SetUsers.ps1

  6. Setzen Sie IIS zurück. Weitere Informationen zu IISReset finden Sie unter Starten oder Beenden des Webservers (IIS 8).

Siehe auch

Konzepte

Cache settings operations in SharePoint Server