Bewährte Methoden für die Verwendung abgestimmter Berechtigungen Dieses Dokument wird "wie besehen" bereitgestellt. Die in diesem Dokument enthaltenen Informationen und Ansichten, einschließlich URLs und Verweise auf Internetwebsites, können ohne vorherige Ankündigung geändert werden. Das Risiko der Nutzung liegt bei Ihnen. Einige der hier beschriebenen Beispiele dienen nur der Veranschaulichung und sind frei erfunden. Jede Ähnlichkeit oder Verbindung mit realen Firmen oder Organisationen ist rein zufällig. Mit diesem Dokument werden keine Rechte an geistigem Eigentum an einem Microsoft-Produkt auf Sie übertragen. Sie sind berechtigt, dieses Dokument zu kopieren und für eigene interne Referenzzwecke zu nutzen. © 2010 Microsoft Corporation. Alle Rechte vorbehalten. Bewährte Methoden für die Verwendung abgestimmter Berechtigungen Autor: Sean Livingston, Product Manager, SharePoint Product Group Veröffentlichung: September 2010 Zusammenfassung: In diesem Dokument werden bewährte Methoden für abgestimmte Berechtigungen und ihre Verwendung beim Arbeiten mit SharePoint®-Produkten und -Technologien oder Microsoft® SharePoint® 2010-Produkten in Ihrer Organisation behandelt. Seite 2 Inhalt Inhalt ..................................................................................................................................................................... 3 Übersicht über die Verwendung abgestimmter Berechtigungen ......................................................................... 4 SharePoint-Berechtigungssystem – Übersicht...................................................................................................... 5 Berechtigungsstufen....................................................................................................................................... 5 SharePoint-Gruppen ....................................................................................................................................... 5 Bereich ............................................................................................................................................................ 6 Sicherungsfähiges Objekt ............................................................................................................................... 6 Vererbung ....................................................................................................................................................... 6 Eingeschränkter Zugriff .................................................................................................................................. 7 Binäre Zugriffssteuerungsliste ........................................................................................................................ 9 Bewährte Verfahren für das Vermeiden gängiger Probleme mit abgestimmten Berechtigungen ...................... 9 Zu viele Bereiche in einer Liste ....................................................................................................................... 9 Zu viele Mitglieder in einem Bereich............................................................................................................ 10 Sehr tiefe Bereichshierarchie ....................................................................................................................... 11 Empfohlene Lösungen für gängige Leistungsprobleme bei abgestimmten Berechtigungen ............................. 11 Lösung 1: Entfernen abgestimmter Berechtigungen und Erzwingen der Sicherheit nur auf Websiteebene ...................................................................................................................................................................... 12 Korrektur der Umgebungssicherheit ..................................................................................................... 12 Umgestalten der Sicherheitsarchitektur der Umgebung ....................................................................... 13 Lösung 2: Verwenden abgestimmter Berechtigungen nach Änderungen an hierarchischen Strukturen ... 14 Umgestaltung der Umgebungshierarchie .............................................................................................. 14 Lösung 3: Verwenden abgestimmter Berechtigungen nach Bereichsstrukturänderungen (nur 2010) ....... 15 Umgestalten des Codes zum dynamischen Ändern von Sicherheitseinstellungen ............................... 15 Umgebungsarchitektur – Beispiel ....................................................................................................................... 16 Übersicht über die Umgebung ..................................................................................................................... 16 Workflowentwurf ......................................................................................................................................... 17 Probleme mit abgestimmten Berechtigungen ............................................................................................. 18 Beheben von Problemen mit abgestimmten Berechtigungen ..................................................................... 19 Zusammenfassung .............................................................................................................................................. 21 Seite 3 Übersicht über die Verwendung abgestimmter Berechtigungen In diesem Artikel werden die Verwendung abgestimmter Berechtigungen für SharePoint® 2010-Produkte (Microsoft® SharePoint® Server 2010 und Microsoft® SharePoint® Foundation 2010) und SharePoint®Produkte und -Technologien (Office SharePoint® Server 2007 und Windows SharePoint® Services, Version 3.0), Leistungsprobleme im Zusammenhang mit abgestimmten Berechtigungen und bewährte Methoden bei der Konfiguration von Lösungen beschrieben, die abgestimmte Berechtigungen enthalten. Hinweis: Abgestimmte Berechtigungen sollten nur für Geschäftsvorgänge genutzt werden, bei denen es erforderlich ist, da sie sowohl hinsichtlich Übersicht als auch Leistung verwaltungsaufwendig sind. Durch Befolgen der folgenden Anweisungen können Sie abgestimmte Berechtigungen vermeiden: Unterbrechen Sie die Berechtigungsvererbung so wenig wie möglich. Arbeiten Sie bei der Zuweisung von Berechtigungen mit auf Verzeichnismitgliedschaft basierenden Gruppen. Hinweis: Es wird nicht empfohlen, SharePoint-Gruppen zum Zuweisen von Berechtigungen für Websites zu verwenden, da bei diesem Vorgang eine vollständige Durchforstung des Index erfolgt. Stattdessen wird die Verwendung von Domänengruppen empfohlen. Weisen Sie Berechtigungen auf der höchstmöglichen Stufe zu. Erwägen Sie in diesem Zusammenhang die folgenden Vorgehensweisen: o Verteilen Sie Dokumente, die abgestimmte Berechtigungen benötigen, auf Dokumentbibliotheken, die für die Unterstützung der einzelnen Berechtigungsgruppen eingerichtet sind, und speichern Sie die Dokumentbibliotheken in einer gesonderten Websitesammlung oder Website. Weitere Informationen zu Hierarchieänderungen finden Sie unter Lösung 2: Verwenden abgestimmter Berechtigungen nach Änderungen an hierarchischen Strukturen. Hinweis: In diesem Dokument entsprechen die Begriffe Web und Website dem SPWebObjekt, und Websitesammlungen entsprechen dem SPSite-Objekt. o Wählen Sie zum Steuern des Zugriffs unterschiedliche Dokumentveröffentlichungsstufen. Ehe ein Dokument veröffentlicht wird, können die erweiterten Berechtigungen und Versionsverwaltungseinstellungen für Benutzer festgelegt werden, die Elemente in der Dokumentbibliothek nur genehmigen dürfen. o Wählen Sie für Listen (die keine Dokumentbibliotheken sind) die Berechtigungsstufen ReadSecurity und WriteSecurity. Beim Erstellen einer Liste können die Besitzer die Zugriffsberechtigungen auf Elementebene auf entweder Lesen oder Erstellen und bearbeiten festlegen. Wenn Sie abgestimmte Berechtigungen verwenden müssen, ziehen Sie die folgenden empfohlenen Vorgehensweisen in Betracht: Seite 4 Vergewissern Sie sich, dass auf derselben Hierarchiestufe in den Dokumentbibliotheken nicht zu viele Elemente vorhanden sind, da dadurch die Verarbeitung der Elemente in den Ansichten länger dauert. Verwenden Sie zum Steuern der Bearbeitungsberechtigung Ereignishandler. Mithilfe der Methoden SPEventReceiverType.ItemUpdating und SPEventReceiverType.ItemUpdated können Sie einen Ereignishandler einrichten, der ein Ereignis registriert, und anschließend mithilfe von Code steuern, ob die Aktualisierung zugelassen werden soll. Dies ist überaus nützlich, da Sie eine die Sicherheit betreffende Entscheidung basierend auf Metadaten einer Liste oder eines Elements treffen können, ohne dass die Renderleistung der Ansicht beeinträchtigt wird. Weitere Informationen zu Ereignishandlern finden Sie unter Beheben von Problemen mit abgestimmten Berechtigungen. Mithilfe der AddToCurrentScopeOnly-Methode können Sie in einer SharePoint-Gruppe die Mitgliedschaftseinstellung Eingeschränkter Zugriff festlegen. Der Schlüssel bei diesem Prinzip ist, dass die Architektur so umgestaltet wird, dass die Bereichsmitgliedschaft keine Neuberechnung der Zugriffssteuerungsliste in der übergeordneten Dokumentbibliothek und Website bewirkt. Weitere Informationen zu Bereichsänderungen finden Sie unter Lösung 3: Verwenden abgestimmter Berechtigungen nach Bereichsstrukturänderungen (nur 2010). SharePoint-Berechtigungssystem – Übersicht In diesem Abschnitt wird das Berechtigungsbereichssystem von SharePoint beschrieben. Weitere Informationen zum Planen der Websitesicherheit finden Sie unter: Planen von Websiteberechtigungen (SharePoint Server 2010) (http://technet.microsoft.com/dede/library/cc262778.aspx) Planen von Websiteberechtigungen (SharePoint Foundation 2010) (http://technet.microsoft.com/dede/library/cc287752.aspx) Planen der Websitesicherheit (Office SharePoint Server) (http://technet.microsoft.com/dede/library/cc262778(office.12).aspx) Planen der Website- und Inhaltssicherheit (Windows SharePoint Services) http://technet.microsoft.com/en-us/library/cc287752(office.12).aspx (http://technet.microsoft.com/de-de/library/cc287752(office.12).aspx) Berechtigungsstufen Eine Berechtigungsstufe enthält eine Gruppe einzelner Berechtigungen, z. B. Elemente anzeigen oder Benachrichtigungen erstellen. Berechtigungsstufen können vordefiniert sein oder vom Benutzer festgelegt werden. Die Berechtigungsgruppe kann auch innerhalb der vordefinierten Berechtigungsstufen geändert werden. SharePoint-Gruppen Eine SharePoint-Gruppe ist ein websitesammlungsübergreifendes Objekt, das Sicherheitsprinzipale enthalten kann, z. B. Windows-Benutzerkonten, Nicht-Windows-Benutzerkonten (z. B. auf Formularen basierende Konten) und Active Directory-Gruppen. Seite 5 Bereich Ein Bereich ist die Sicherheitsbegrenzung eines sicherungsfähigen Objekts und beliebiger seiner untergeordneten Objekte, für die keine gesonderte Sicherheitsbegrenzung definiert ist. Der Bereich enthält eine Zugriffssteuerungsliste, doch im Gegensatz zu NTFS-Zugriffssteuerungslisten kann ein Bereich SharePoint-spezifische Sicherheitsprinzipale enthalten. Eine Zugriffssteuerungsliste für einen Bereich kann Windows-Benutzerkonten, Nicht-Windows-Benutzerkonten (z. B. auf Formularen basierende Konten in SharePoint-Produkten oder anspruchsbasierte Konten in SharePoint 2010-Produkten), Active DirectoryGruppen und SharePoint-Gruppen enthalten. Die Anzahl der Bereiche, die in einem übergeordneten Bereich erstellt werden kann, ist unbegrenzt. In SharePoint-Produkten und -Technologien wird jedoch nach Erstellung von 1000 Bereichen ein Codepfad verwendet, der zusätzliche Microsoft® SQL Server-Roundtrips zum Analysieren der Bereiche vor dem Rendern einer Ansicht erfordert. Bei bis zu 1000 Bereichen ist nur ein Roundtrip erforderlich. In SharePoint 2010-Produkten basiert der Grenzwert der Anzahl der Bereiche, die vor einem Wechsel zu einem anderen Algorithmus zurückgegeben werden, auf einem Abfrageschwellenwert (der Standardwert ist 5000). Doch dieser Wert kann selbst in der Standardeinstellung groß genug sein, um die Leistung stark zu beeinträchtigen. In SharePoint 2010-Produkten gibt es die neue SPRoleAssignmentCollection.AddToCurrentScopeOnlyMethode, mit deren Hilfe eine Rollenzuweisung erfolgen kann. Weitere Informationen zu Rollenzuweisungen finden Sie unter SPRoleAssignmentCollection.AddToCurrentScopeOnly (http://msdn.microsoft.com/dede/library/microsoft.sharepoint.sproleassignmentcollection.addtocurrentscopeonly.aspx). Sicherungsfähiges Objekt Ein sicherungsfähiges Objekt ist ein Objekt, dem eine Zugriffssteuerungsliste zugewiesen werden kann. In SharePoint-Produkten und -Technologien kann die ISecurableObject-Schnittstelle, in SharePoint 2010Produkte die SPSecurableObject-Klasse verwendet werden. Weitere Informationen zu sicherungsfähigen Objekten finden Sie unter ISecurableObject-Schnittstelle (http://msdn.microsoft.com/dede/library/microsoft.sharepoint.isecurableobject.aspx) oder SPSecurableObject-Klasse (http://msdn.microsoft.com/de-de/library/microsoft.sharepoint.spsecurableobject.aspx). Vererbung Wenn ein sicherungsfähiges Objekt keinen eindeutigen Bereich hat, erbt ("übernimmt") das Objekt den Bereich seines übergeordneten Objekts. In diesem Fall wird kein Bereich für das Objekt erstellt. Bei einer Sicherheitsüberprüfung wird stattdessen nur ein Abgleich mit dem übergeordneten Objekt durchgeführt. In der einfachsten Umgebung befindet sich dieser Bereich in der Stammwebsite der Websitesammlung, die das Element enthält. Wenn ein Element oder Container so geändert wird, dass die Mitgliedschaft eindeutig ist, wird die Vererbung aufgehoben, was bedeutet, dass ein neuer Bereich für das jeweilige Element und (standardmäßig) für alle seine untergeordneten Elemente erstellt wird, die dessen Berechtigungsbereiche erben. Das folgende Diagramm zeigt eine Objekthierarchie einer Dokumentbibliothek, in der alle Objekte bis auf eines ihren Bereich von ihren übergeordneten Objekten erben. Jedes nummerierte goldene Sechseck stellt einen Berechtigungsbereich dar. Alle untergeordneten Objekte in einem Container erben die Berechtigungen Seite 6 des jeweiligen übergeordneten Bereichs, es sei denn, sie haben einen eigenen eindeutigen Berechtigungsbereich. Site Collection Object 1 Web Object 1 Web Object 1 Document Library Object Folder Object 1 Item 1 Object 1 Item 2 Object 1 Scope 1 User 1 (Contributor) User 2 (Reader) User 3 (Limited Access) User 4 (Full Control) User 4 (Limited Access) User 5 (Reader) User 6 (Contributor) AD Group X (Limited Access) Scope 2 Item 2 Object 5 AD Group X (Reader) User 3 (Contributor) User 4 (Full Control) Eingeschränkter Zugriff Wird ein Sicherheitsprinzipal dem Bereich eines Elements mit eindeutigen Berechtigungen zugeordnet, wird der Sicherheitsprinzipal mit der Berechtigungsstufe Eingeschränkter Zugriff unmittelbar jedem eindeutigen Berechtigungsbereich in der Hierarchie über dem Element hinzugefügt, bis eine übergeordnete Website mit eindeutigen Berechtigungen gefunden wird. Der Grund des Hinzufügens des Benutzers zu den Bereichen mit eingeschränktem Zugriff ist das Gewähren eines ausreichenden Zugriffs auf das Element, das sich in der Hierarchie über dem Element mit den eindeutigen Berechtigungen befinden, damit das Objektmodell, die Masterseiten und die Navigationselemente gerendert werden können, wenn der Benutzer versucht, zum Element zu navigieren. Ohne die Berechtigung Eingeschränkter Zugriff für die übergeordneten Bereiche könnte der Benutzer nicht zu dem Element mit eindeutigen Berechtigungen navigieren bzw. dieses nicht öffnen. Das folgende Diagramm zeigt, wie die Hierarchietiefe von Bereichen sich auf den Verwaltungsaufwand auswirken kann, der zum Hinzufügen von Benutzern mit eingeschränktem Zugriff zu übergeordneten Bereichen erforderlich ist. Je größer die Anzahl eindeutiger Bereiche oberhalb des Elements (bis hin zur und einschließlich der Website mit eindeutigen Berechtigungen), desto größer die Anzahl der Hinzufügungen, die erfolgen muss. Das Diagramm zeigt eine vereinfachte Darstellung einer physischen Struktur, in der auf allen Stufen (von der Website bis hinunter zu einzelnen Elementen) eindeutige Bereiche definiert sind. Wie im vorherigen Diagramm stellt jedes anders nummerierte goldene Sechseck einen eindeutigen Berechtigungsbereich dar. Alle untergeordneten Objekte im jeweiligen Container erben die Einstellungen des Seite 7 jeweiligen Bereichs, es sei denn, diese verfügen über einen eigenen eindeutigen Berechtigungsbereich. Die Heraufstufungskette für Eingeschränkter Zugriff ist an den roten Pfeilen zu erkennen. Scope 1 User 2 (Reader) User 3 (Full Control) User 6 (Contributor) 1 Web Object 1 Document Library Object Folder Object Item 1 Object + AD Group X (Limited Access) + User 3 (Limited Access) + User 4 (Limited Access) + User 5 (Limited Access) + User 1 (Limited Access) + User 2 (Limited Access) 2 3 Scope 2 User 5 (Reader) + User 2 (Limited Access) Item 2 Object 4 + User 1 (Limited Access) Scope 3 User 1 (Contributor) Item 3 Object 5 Scope 4 User 2 (Contributor) Scope 5 AD Group X (Reader) User 3 (Contributor) User 4 (Full Control) Das Diagramm enthält auch die Gruppe eindeutiger Bereiche sowie die Hinzufügungen für die Mitgliedschaftseinstellung Eingeschränkter Zugriff, die für jeden übergeordneten Bereich erfolgen müssen und durch gesonderte Felder innerhalb des Bereichs dargestellt werden. Keine zusätzliche Programmierung ist zum Hinzufügen eindeutiger Bereiche erforderlich, wenn ein Sicherheitsprinzipal einem Objektbereich mit eindeutigen Berechtigungen zugewiesen wird, der sich unterhalb einer Website mit eindeutigen Berechtigungen befindet. Wenn ein Sicherheitsprinzipal mit der Berechtigungsstufe Eingeschränkter Zugriff einem übergeordneten Bereich hinzugefügt wird, erfolgt keine Prüfung, ob sich der Sicherheitsprinzipal bereits im übergeordneten Bereich befindet. Ein Sicherheitsprinzipal, der bereits Zugriff auf den übergeordneten Bereich hat, wird dem übergeordneten Bereich erneut mit der Berechtigungsstufe Eingeschränkter Zugriff ungeachtet seiner vorhandenen Berechtigungen für den übergeordneten Bereich hinzugefügt. Wenn für einen Sicherheitsprinzipal die Berechtigungsstufe Eingeschränkter Zugriff für einen übergeordneten Bereich aufgehoben wird, werden alle Vorkommen dieses Sicherheitsprinzipals innerhalb aller untergeordneten Bereiche aus der Berechtigungsstufe Eingeschränkter Zugriff entfernt, und zwar Seite 8 unabhängig davon, ob für den Sicherheitsprinzipal die Berechtigungsstufe Eingeschränkter Zugriff oder umfassendere Berechtigungen für die untergeordneten Bereiche gelten. Binäre Zugriffssteuerungsliste Eine binäre Zugriffssteuerungsliste dient zum Durchführen von Schnellvergleichen eines Benutzertokens, um zu bestimmen, ob der Benutzer Zugriff auf das Objekt haben soll, das von dem Bereich abgedeckt wird. Immer wenn sich die Mitgliedschaft eines Bereichs ändert (z. B. beim Hinzufügen eines Mitglieds mit der Berechtigung Eingeschränkter Zugriff), wird eine binäre Zugriffssteuerungsliste berechnet. Je mehr Mitglieder vorhanden sind, desto länger dauert die Berechnung der binären Zugriffssteuerungsliste. Der Zugriff auf die Objekte wird so lange blockiert, bis die Zugriffssteuerungsliste neu berechnet werden kann. Wenngleich es keine andere explizite Größenbeschränkung für eine binäre Zugriffssteuerungsliste als die maximale Größe eine Bildspalte in SQL Server gibt, können einige Dienste nur mit Zugriffssteuerungslisten arbeiten, die nicht größer als 64 KB sind. In diesem Fall kann die Anzahl der Sicherheitsprinzipale in der binären Zugriffssteuerungsliste sehr groß werden, sollte aber aus Gründen der Leistung und Interoperabilität begrenzt werden. Informationen zu Einschränkungen der Größe von Bildspalten in SQL Server finden Sie unter ntext, text und image (Transact-SQL) (http://msdn.microsoft.com/de-de/library/ms187993.aspx). Bewährte Verfahren für das Vermeiden gängiger Probleme mit abgestimmten Berechtigungen Beim Arbeiten mit abgestimmten Berechtigungen kann es leicht zu nicht beabsichtigten Einschränkungen kommen, die eine Auflösung von Berechtigungen verhindern. Zu viele Bereiche in einer Liste Pro Liste oder Dokumentbibliothek gilt ein vordefinierter Grenzwert von 50.000 Bereichen. Nach Erreichen von 50.000 Bereichen können einer bestimmten Liste oder Dokumentbibliothek keine weiteren Bereiche mehr hinzugefügt werden. In SharePoint 2010-Produkten kann der vordefinierte Bereichsgrenzwert mithilfe eines Windows PowerShellSkripts geändert werden. So verkleinern Sie den vordefinierten Bereichsgrenzwert auf weniger als 50.000 Bereiche 1. Vergewissern Sie sich, dass die folgenden Mindestanforderungen erfüllt sind: Siehe AddSPShellAdmin (http://technet.microsoft.com/de-de/library/ff607596.aspx). 2. Klicken Sie im Startmenü auf Alle Programme. 3. Klicken Sie auf Microsoft SharePoint 2010-Produkte. 4. Klicken Sie auf SharePoint 2010-Verwaltungsshell. 5. Geben Sie an der Windows PowerShell-Eingabeaufforderung folgende Syntax ein: Seite 9 $webapp = Get-SPWebApplication http://Servername $webapp.MaxUniquePermScopesPerList $webapp.MaxUniquePermScopesPerList der Bereiche> = <Grenzwert für die Anzahl Häufig ist der effektive Grenzwert wesentlich kleiner als 50.000, wenn auf derselben Hierarchiestufe viele Bereiche vorhanden sind. Der Grund ist, dass Anzeigeprüfungen für Elemente unterhalb dieser Hierarchiestufe im Abgleich mit allen Bereichen darüber erfolgen müssen. Diese Einschränkung kann bewirken, dass die effektive Anzahl von Bereichen, die in einer bestimmten Abfrage zulässig ist, auf 1000 bis 2000 verringert wird. Bewährte Verfahren: Legen Sie eindeutige Bereiche nur für übergeordnete Objekte wie Ordner fest. Erstellen Sie unterhalb eines Objekts mit vielen Bereichen kein System mit vielen Objekten mit eindeutigen Berechtigungen. Falls es geschäftlich erforderlich sein sollte, dass eine Liste oder Dokumentbibliothek mehr als 50.000 Elemente mit eindeutigen Berechtigungen enthält, müssen Sie einige dieser Elemente in eine andere Liste oder Dokumentbibliothek verschieben. Zu viele Mitglieder in einem Bereich Wie bereits erwähnt, wird eine binäre Zugriffssteuerungsliste berechnet, wenn sich die Mitgliedschaft in einem Bereich ändert (z. B. beim Hinzufügen eines Mitglieds mit der Berechtigung Eingeschränkter Zugriff). Mit ansteigender Anzahl der Bereichsmitglieder verlängert sich die Neuberechnungsdauer der binären Zugriffssteuerungsliste. Das Problem kann sich noch verschlimmern, da die Hinzufügungen von Benutzern zum eindeutigen Bereich eines untergeordneten Objekts bewirken, dass dessen übergeordnete Bereiche mit den neuen Mitgliedern mit der Berechtigungsstufe Eingeschränkter Zugriff aktualisiert werden, obwohl dies letztlich keine Änderung bei der Mitgliedschaft im übergeordneten Bereich ergibt. Wenn dies erfolgt, muss die binäre Zugriffssteuerungsliste für übergeordnete Bereiche ebenfalls neu berechnet werden, was zu einem erhöhten Verarbeitungsaufwand bei unveränderter Zugriffssteuerungsliste führt. Bewährtes Verfahren: Arbeiten Sie in den Bereichen mit Gruppenmitgliedschaften anstatt mit Einzelmitgliedern. Wenn beispielsweise eine einzelne Gruppe anstelle von 1000 Benutzern verwendet werden kann, sind für den Bereich und beliebige seiner übergeordneten Bereiche 999 Mitgliedseinträge weniger vorhanden, denn die Berechtigung Eingeschränkter Zugriff wird nur für diese einzelne Gruppe und nicht für 1000 einzelne Benutzer aktualisiert. Diese Vorgehensweise beschleunigt das Erteilen der Berechtigung Eingeschränkter Zugriff und die Neuberechnung der Zugriffssteuerungsliste für die Objekte im übergeordneten Bereich. Wichtig: Bei Verwenden einer SharePoint-Gruppe ist eine vollständige Durchforstung des Index erforderlich. Wählen Sie, sofern möglich, eine Domänengruppe. Seite 10 Sehr tiefe Bereichshierarchie Wie bereits erwähnt, kann sich die Hierarchietiefe von Bereichen auf den Verwaltungsaufwand auswirken, der zum Hinzufügen von Benutzern mit eingeschränktem Zugriff zu übergeordneten Bereichen erforderlich ist. Je größer die Anzahl eindeutiger Bereiche oberhalb eines Objekts (bis hin zur und einschließlich der Website mit eindeutigen Berechtigungen), desto größer die Anzahl der Hinzufügungen, die erfolgen muss. Wenn eine Bereichshierarchie sehr tief ist, kann eine Änderung der Bereichsmitgliedschaft sehr lange dauern, da für den explizit hinzugefügten Benutzer bzw. die explizit hinzugefügte Gruppe mit eingeschränkten Zugriffsberechtigungen die übergeordneten Bereiche ausgehend vom tiefsten Bereichselement schrittweise aktualisiert werden müssen. Darüber hinaus erhöht sich dadurch die Anzahl der neu zu berechnenden binären Zugriffssteuerungslisten mit entsprechenden Auswirkungen auf die Leistung. Bewährtes Verfahren: Verringern Sie die Anzahl übergeordneter Objekte mit eindeutigen Berechtigungen. Dadurch reduziert sich die Anzahl der Bereiche, die für Mitglieder mit eingeschränktem Zugriff aktualisiert werden müssen, wenn sich der Bereich untergeordneter Objekte ändert. Empfohlene Lösungen für gängige Leistungsprobleme bei abgestimmten Berechtigungen Mithilfe der folgenden Lösungen können Sie Leistungsprobleme abfedern, die insbesondere von der umfassenden Verwendung abgestimmter Berechtigungen herrühren. Jede dieser Lösungen deckt Änderungen an den Umgebungssicherheitseinstellungen, der Objekthierarchie oder an benutzerdefiniertem Code ab, die zum von den abgestimmten Berechtigungen verursachten Leistungsproblem beitragen. Jede Lösung beginnt mit der folgenden Beispielumgebung, in der eine einzelne Website mehrere Dokumentbibliotheken mit sehr vielen untergeordneten Objekten mit eindeutigen Berechtigungen aufweist. 1 Web Object 2 Document Library 1 Object 3 Folder Object Item 1 Object 4 Item 2 Object 5 Item 3 Object … 6 x10,000+ Items (10,000 max per level) Seite 11 Lösung 1: Entfernen abgestimmter Berechtigungen und Erzwingen der Sicherheit nur auf Websiteebene Zum Umgestalten der Umgebung, dass keine abgestimmten Berechtigungen mehr erforderlich sind, kann ein Umgebungskorrekturprozess implementiert werden. Anschließend kann die Anzahl der Objekte mit Bereichen angepasst werden, um die Skalierbarkeit der Umgebung langfristig zu verbessern. In den folgenden Abschnitten werden die Umgebungskorrektur und Änderungen an der Architektursicherheit beschrieben, die für diese Lösung erforderlich sind. Korrektur der Umgebungssicherheit Wenn ein Benutzer aus dem Bereich auf Websiteebene entfernt wird, muss der Benutzer im internen Objektmodell aus allen Bereichen unter der Websiteebene entfernt werden. Doch das Entfernen einzelner Benutzer zum Korrigieren vorhandener Berechtigungen ist ein zeitaufwendiger Prozess. Entfernen Sie stattdessen jeden einzelnen eindeutigen Bereich auf Elementebene, sodass das Element so festgelegt wird, dass es Berechtigungen von seinem übergeordneten Objekt erbt. Dies dauert vergleichsweise kürzer als der Versuch, Benutzer zunächst zu entfernen, da der Vorgang nur auf einen einzelnen Bereich des Elements angewendet wird. Wichtig: Wenn die aktuelle Website sich nicht am Stamm der Websitesammlung befindet und so festgelegt ist, dass sie Berechtigungen von ihrer übergeordneten Website erbt, werden alle eindeutigen Bereiche darunter entfernt, und alle Mitgliedschaftseinstellungen vom Typ Eingeschränkter Zugriff werden mithilfe eines einzelnen SQL Server-Roundtrips auf einmal überschrieben. 1 Web Object 1 Document Library Object Folder Object 1 Item 1 Object 1 Item 2 Object 1 Scope 1 SPGroup Object FullGP + FullControlGP (Full Control) + User 3 + ContributorGP (Contributor) + User 4 + ReaderGP (Reader) SPGroup Object ContributeGP Scope 2 + User 1 User 5 (Reader) + User 2 + User 2 (Limited Access) + User 1 (Limited Access) Item 3 Object 1 SPGroup Object ReaderGP + User 5 Scope 3 + AD Group X User 1 (Contributor) Scope 4 User 2 (Contributor) Scope 5 AD Group X (Reader) User 3 (Contributor) User 4 (Full Control) Seite 12 Nachdem alle Bereiche auf Elementebene entfernt wurden, können einzelne Bereichsmitgliedschaften auf Websiteebene durch eine oder mehrere Gruppenmitgliedschaften ersetzt werden, um den Zugriff zuzulassen. Web Scope Web Scope 14,000+ unique entries (Limited Access) Access Group (Contributor) Umgestalten der Sicherheitsarchitektur der Umgebung Nach dem Entfernen der vorhandenen abgestimmten Berechtigungen und Bereiche sollte der langfristige Architekturplan einen eindeutigen Bereich ausschließlich auf Websiteebene vorsehen. Das folgende Diagramm veranschaulicht, wie Sie vorgehen müssen, damit nur der Bereich auf Websiteebene übrig bleibt. Die Hauptvoraussetzung dieser Architektur ist, dass auf derselben Hierarchiestufe in den Dokumentbibliotheken nicht zu viele Elemente vorhanden sind, da sich die für die Verarbeitung der Elemente in den Ansichten benötigte Zeit verlängert. Empfohlen wird, dass die Höchstanzahl von Elementen oder Ordnern auf einer beliebigen Hierarchiestufe 2000 nicht überschreitet. 1 Web Object 1 Document Library 1 Object 1 Folder Object Item 1 Object 1 Item 2 Object 1 Item 3 Object … 1 x10,000+ Items (2,000 max per level) Wenn weitere Änderungen an der Architektur erforderlich sein sollten, erwägen Sie das Verschieben von Dokumentbibliotheken in andere Websites oder Websitesammlungen. Die Anzahl der Dokumentbibliotheken kann ebenfalls geändert werden, um Unternehmensanforderungen und Skalierungsempfehlungen besser zu unterstützen, die auf der Gliederung oder Zielgruppe der gespeicherten Inhalte basieren. Seite 13 Lösung 2: Verwenden abgestimmter Berechtigungen nach Änderungen an hierarchischen Strukturen Um die Umgebung so umzugestalten, dass weiterhin abgestimmte Berechtigungen verwendet werden, jedoch ohne übermäßig viele Aktualisierungen oder eine Größenanpassung eines einzelnen Websitebereichs zu verursachen, können Sie unterschiedlich abgesicherte Dokumentbibliotheken in verschiedene Websites verschieben. Umgestaltung der Umgebungshierarchie In der folgenden Abbildung wurde die physische Architektur so verändert, dass sich jede Dokumentbibliothek in einer Website mit eindeutigen Berechtigungen befindet. Wenn darüber hinaus abgestimmte Berechtigungen auf Elementebene beibehalten werden müssen, wird empfohlen, die kumulierte Anzahl von Sicherheitsprinzipalen, denen Zugriff gewährt wird, auf ca. 2000 zu begrenzen, wenngleich dies kein fester Grenzwert ist. Die effektive Anzahl der Mitglieder jeder Website, einschließlich aller Benutzer mit eingeschränktem Zugriff, sollte nicht mehr als ca. 2000 betragen, um zu verhindern, dass die einzelnen Bereiche auf Websiteebene zu groß werden. 1 Web 1 Object 2 Document Library 1 Object 3 Folder Object 7 Web 2 Object Document Library 2 Object 8 Item 8 Object 9 Item 1 Object 4 Item 9 Object 10 Item 2 Object 5 Item 10 Object 11 Item 11 Object 12 Item 3 Object … x5,000+ Items (2,000 max per level) 6 … x5,000+ Items (2,000 max per level) Die Anzahl untergeordneter Elemente mit eindeutigen Bereichen ist ohne Belang und darf deshalb sehr hoch sein, doch die Anzahl der Sicherheitsprinzipale, die mit eingeschränktem Zugriff entlang der Kette der Bereiche bis zur erste Website mit eindeutigen Berechtigungen hinzugefügt werden, ist ein einschränkender Faktor. Schließlich, wenngleich kein spezifisches Problem aufgrund abgestimmter Berechtigungen, muss die Ordnerstruktur sicherstellen, dass auf keiner einzelnen Hierarchiestufe der Dokumentbibliothek ca. 2000 Elemente überschritten werden. Dieser Grenzwert kann eine gute Leistung von Ansichten sicherstellen, die von Benutzern angefordert werden. Seite 14 Lösung 3: Verwenden abgestimmter Berechtigungen nach Bereichsstrukturänderungen (nur 2010) Um die Umgebung so umzugestalten, dass weiterhin abgestimmte Berechtigungen verwendet werden, jedoch ohne übermäßig viele Aktualisierungen oder eine Größenanpassung eines einzelnen Websitebereichs zu verursachen, erwägen Sie einen anderen Prozess zur Absicherung von Elementen. Dies gilt hauptsächlich, wenn die Ursache übermäßig vieler eindeutiger Bereiche ein automatisierter Prozess war, z. B. ein Ereignishandler oder Workflow, der die Objektberechtigungen dynamisch geändert hat. Die Empfehlung in diesem Fall lautet, den Code des Prozesses zu ändern, der die eindeutigen Sicherheitsbereiche generiert hat. Umgestalten des Codes zum dynamischen Ändern von Sicherheitseinstellungen Im folgenden Diagramm wurde die Bereichsarchitektur so umgestaltet, dass die Bereichsmitgliedschaft keine Neuberechnung der Zugriffssteuerungsliste in der übergeordneten Dokumentbibliothek und Website bewirkt. Wie zuvor erwähnt, sollte die effektive Anzahl der Mitglieder der Website, einschließlich aller Benutzer mit eingeschränktem Zugriff, nicht mehr als ca. 2000 betragen, um zu verhindern, dass die einzelnen Bereiche auf Websiteebene zu groß werden. Doch durch Implementieren einer neuen SharePointGruppe für die Aufnahme aller Mitglieder mit eingeschränkten Zugriffsberechtigungen wird (wie in diesem Fall) der Bereich nicht zu groß. Wenn Benutzer mithilfe der neuen SPRoleAssignmentCollection.AddToCurrentScopeOnly-Methode von SharePoint 2010-Produkte einzelnen Bereichen unter der Websitestufe hinzugefügt werden, können Sie anschließend mithilfe von zusätzlichem Code auch der neuen Gruppe hinzugefügt werden, die bereits so eingerichtet wurde, dass sie über eingeschränkte Zugriffsrechte auf Website- und Dokumentbibliothekstufe verfügt. Scope 1 1 Web Object 1 Document Library Object Folder Object Item 1 Object User 2 (Reader) User 3 (Full Control) User 6 (Contributor) + AccessGP1 (Limited Access) 2 3 Scope 2 User 5 (Reader) + User 1 (Limited Access) Item 2 Object 4 + User 2 (Limited Access) SPGroup Object AccessGP1 Scope 3 User 1 (Contributor) Item 3 Object 5 + User 5 + User 1 Scope 4 User 2 (Contributor) + User 2 + AD Group X + User 3 + User 4 Scope 5 AD Group X (Reader) User 3 (Contributor) User 4 (Full Control) Seite 15 Wenn, wie bereits erwähnt, abgestimmte Berechtigungen auf Elementebene beibehalten werden müssen, wird empfohlen, die kumulierte Anzahl von Sicherheitsprinzipalen, denen Zugriff gewährt wird, auf ca. 2000 zu begrenzen, wenngleich dies kein fester Grenzwert ist. Mit ansteigender Anzahl der Bereichsmitglieder verlängert sich die Neuberechnungsdauer der binären Zugriffssteuerungsliste. Wenn sich die Mitgliedschaft eines Bereichs ändert, muss die binäre Zugriffssteuerungsliste neu berechnet werden. Die Hinzufügungen von Benutzern zum eindeutigen Bereich eines untergeordneten Elements bewirken jedoch, dass dessen übergeordnete Bereiche mit den neuen Mitgliedern mit der Berechtigungsstufe Eingeschränkter Zugriff aktualisiert werden, obwohl dies letztlich keine Änderung bei der Mitgliedschaft im übergeordneten Bereich ergibt. Wenn dies eintritt, muss die binäre Zugriffssteuerungsliste für die übergeordneten Bereiche ebenfalls neu berechnet werden. Wie bei der vorherigen Lösung ist die Anzahl untergeordneter Elemente mit eindeutigen Bereichen ohne Belang und darf deshalb sehr hoch sein, doch die Anzahl der Sicherheitsprinzipale, die mit eingeschränktem Zugriff entlang der Kette der Bereiche bis zur erste Website mit eindeutigen Berechtigungen hinzugefügt werden, ist ein einschränkender Faktor. Umgebungsarchitektur – Beispiel In diesem Abschnitt wird eine Beispielumgebung beschrieben, in der beträchtliche Probleme aufgrund eines Zusammenlaufens von Problemen mit abgestimmten Berechtigungen auftraten. Ferner wird eine Kombination aus Lösungen vorgestellt, die zum Beheben des Problems diente. Übersicht über die Umgebung Ein auf SharePoint Server 2007 basierendes Knowledge Management-System enthielt in einer einzelnen Website die beiden Websitesammlungen Contoso-Draft und Contoso-Production. Contoso-Draft diente zum Veröffentlichen erster Entwürfe und Interagieren von Workflows mit den Dokumenten. Contoso-Production war das endgültige Ziel aller genehmigten Dokumente und diente als Speicher aller genehmigten Inhalte. Dokumente konnten einem von mehreren Inhaltstypen zugewiesen werden, die den beabsichtigten Zweck des Dokuments angeben (z. B. Projektpläne oder Problembehandlungsanweisungen). Darüber hinaus waren die Dokumente in Technologiekategorien (von denen es Hundert oder mehr mit steigender Spezifizierung geben konnte) und verschiedene Disziplinen (z. B. Projektmanagement oder operatives Geschäft) unterteilt. Die Websitesammlung für die Entwurfsveröffentlichung enthielt pro Disziplin eine Dokumentbibliothek, von denen jede eine Hierarchie zunehmend spezifischer Ordner für jede Technologiekategorie enthielt. Von den Benutzern wurde erwartet, beim Erstellen eines neuen Dokuments zuerst eine Disziplinbibliothek und anschließend einen spezifischen Technologiekategorieordner auszuwählen. Das folgende Diagramm zeigt eine vereinfachte Darstellung der ursprünglichen physischen Struktur der Website, wobei jedes eindeutig nummerierte goldene Sechseck einen eindeutigen Berechtigungsbereich darstellt. Alle untergeordneten Objekte im jeweiligen Container erben die Einstellungen des jeweiligen Bereichs, es sei denn, diese verfügen über einen eigenen eindeutigen Berechtigungsbereich. Seite 16 1 Web Object 2 Document Library 1 Object 3 Folder Object 7 Document Library 2 Object Item 8 Object 8 Item 1 Object 4 Item 9 Object 9 Item 2 Object 5 Item 10 Object 10 Item 11 Object 11 Item 3 Object … x10,000+ Items (5,000 max per level) 6 … … x20 x10,000+ Items (10,000 max per level) Jeder Kombination aus Inhaltstyp, Technologiekategorie und Disziplin konnte ein besonderer Bearbeiter zugewiesen werden, der ein Experte in der jeweiligen Technologiekategorie oder Disziplin war. Die Dokumentbibliothek konnte sehr viele Elemente enthalten, die Workflowvorgängen unterzogen wurden, durch die der zugewiesene Bearbeiter und die Sicherheitseinstellungen des Elements dynamisch geändert wurden. Nach der letzten Überprüfung des Dokuments wurde es an einen passenden Speicherort in ContosoProduction kopiert, an dem es als veröffentlichte Version unverändert blieb und allen Mitarbeitern im Unternehmen zur Verfügung stand. Weitere Informationen zu Inhaltstypen und Workflowplanung finden Sie unter: Planen von Inhaltstypen und Workflows (SharePoint Server 2010) (http://technet.microsoft.com/dede/library/cc262735.aspx) Planen von Inhaltstypen (SharePoint Foundation 2010) (http://technet.microsoft.com/dede/library/ff607870.aspx) Planen von Inhaltstypen (Office SharePoint Server) (http://technet.microsoft.com/dede/library/cc262735(office.12).aspx) Planen von Inhaltstypen (Windows SharePoint Services) (http://technet.microsoft.com/dede/library/cc287765(office.12).aspx) Workflowentwurf Zu Beginn des Workflowprozesses wurde der Autor eines Dokument am Zugriff darauf gehindert, sodass Dritte es bearbeiten konnten, ohne dass der Autor gleichzeitig Änderungen vornahm. Bei jedem nachfolgenden Schritt im Workflow wurde den Benutzern, die zuvor Zugriff auf das Dokument hatten, der Zugriff verweigert und den Bearbeitern in der nächsten Phase des Workflows der Zugriff erteilt. Im Workflowprozess wurden sowohl ein codierter Workflow als auch ein benutzerdefinierter Ereignishandler verwendet, die zusammenarbeiteten. Wurde ein Dokument in einer Dokumentbibliothek geändert, wurde anfänglich der benutzerdefinierte Ereignishandler angewendet, der die Berechtigungen änderte und eine Seite 17 neue Workflowinstanz startete. Sowohl der Workflow als auch der Ereignishandler änderten die Berechtigungen für die bestimmte zu aktualisierende Datei, sodass jedem Dokument ein eindeutiger Berechtigungsbereich zugewiesen wurde. Diese Berechtigungsänderung bedeutete, dass nur ein einzelner Benutzer oder eine kleine Benutzergruppe, d. h. die Bearbeiter im jeweiligen Schritt, gleichzeitig auf das Dokument zugreifen konnten. Nach der vollständigen Genehmigung des Dokuments wurde es im letzten Schritt des Workflows an einen entsprechenden Speicherort in Contoso-Production als neue veröffentlichte Version des Dokuments kopiert, wobei Berechtigungen von der übergeordneten Website geerbt wurden. Probleme mit abgestimmten Berechtigungen Der Umgebungs- und Workflowentwurf wurde während der Entwicklung erfolgreich getestet, doch mittlerweile ist es zu signifikanten Leistungsproblemen aufgrund von Verzögerungen von einer bis mehreren Minuten gekommen, ehe Aufgaben erledigt werden können. Bei den Tests wurden nur Hunderte von Testkonten verwendet, doch sobald der Entwurf zur Verfügung gestellt und anschließend als verbindliches Wissenserfassungstool für das gesamte Unternehmen angekündigt wurde, stieg die Nutzergruppe rasch auf mehr 15.000 Benutzer an, die an über 30.000 Dokumenten arbeiteten. Die gemeldeten Leistungsprobleme hinderten einen Großteil der Mitarbeiter an der Nutzung des neuen Knowledge Management-Systems, das mehr als 60.000 Benutzer unterstützen sollte. Sobald im Workflow eine Berechtigungsänderung erfolgt, wurde für jedes einzelne Dokument ein Berechtigungsbereich erstellt. Gemäß den zuvor beschriebenen Anforderungen der Berechtigungsstufe Eingeschränkter Zugriff wurden die einzelnen eindeutigen Sicherheitsprinzipale mit eingeschränktem Zugriff den verschiedenen eindeutigen Berechtigungsbereichen in der Hierarchie über dem Dokument hinzugefügt, bis eine Website mit eindeutigen Berechtigungen gefunden wurde. J mehr eindeutige Bereiche vorhanden waren, die sich über dem Dokument mit eindeutigen Berechtigungen, aber unter der Website mit eindeutigen Berechtigungen befanden, desto mehr Bereichen wurde der Sicherheitsprinzipal mit eingeschränktem Zugriff hinzugefügt. Web Scope 15,000+ unique entries (Limited Access) Item Scope User 1 (Contributor) Item Scope User 2 (Contributor) Item Scope AD Group X (Reader) … x30,000+ Scopes x15,000+ Unique Users Ein wesentlicher hier zu beachtender Faktor ist, dass das Problem nicht von der bloßen Anzahl eindeutiger Bereiche herrührt, die in der Stammwebsite der Websitesammlung erstellt wurden, sondern dass die tatsächliche Anzahl eindeutiger Sicherheitsprinzipale innerhalb dieses Bereichs auf Websiteebene auf über 15.000 eindeutige Benutzer angewachsen ist. Jeder Benutzer, der einem beliebigen eindeutigen Berechtigungsbereich unter der Website hinzugefügt wurde, wurde ebenfalls dem eigenen Bereich der Seite 18 Website hinzugefügt, wodurch bei jeder Hinzufügung eine Neuberechnung der binären Zugriffssteuerungsliste verursacht wird. Aufgrund der enormen Größe des Bereichs auf Websiteebene in Kombination mit der Häufigkeit der Neuberechnung der binären Zugriffssteuerungsliste kann es in mehreren gespeicherten SQL ServerProzeduren zu Blockaden kommen. Immer wenn sich bei einem Dokument mit aufgehobener Vererbung der Mitgliedschaftsbereich ändert, wird jedes Mitglied des Bereichs auf Websiteebene mit der Benutzereinstellung Eingeschränkter Zugriff hinzugefügt. Wenn darüber hinaus die Mitgliedschaft des Websitebereichs durch vorhandene oder neue Mitglieder geändert wurden, einschließlich für Eingeschränkter Zugriff, wurde eine Neuberechnung der binären Zugriffssteuerungsliste des Bereichs auf Websiteebene bewirkt. Da der Bereich auf Websiteebene über 15.000 Sicherheitsprinzipale enthielt, dauerte die Neuberechnung sehr lange. Während der Neuberechnung war kein Zugriff auf das jeweilige Objekt möglich, und Endbenutzer hatten zwischenzeitliche Anmeldeschwierigkeiten. Beheben von Problemen mit abgestimmten Berechtigungen Die zuvor erwähnten Lösungen wurden im Prozess zur Behebung der aufgrund von abgestimmten Berechtigungen aufgetretenen Probleme im Rahmen einer kurzfristigen und einer langfristigen Strategie berücksichtigt. Die kurzfristige Lösung bestand im Umgestalten des Workflows dergestalt, dass abgestimmte Berechtigungen nicht mehr elementweise festgelegt wurden und die Hierarchie der Umgebungsstruktur ansonsten unverändert blieb. Die einzelnen Bereiche für abgestimmte Berechtigungen wurden anschließend entfernt. Anfänglich wurde versucht, jeden Benutzer aus den Bereichen auf Website- oder Elementebene zu entfernen, doch da das Ergebnis nicht zufriedenstellend war, wurde ein Entfernungsvorgang für jeden Elementbereich durchgeführt, indem dem jeweiligen Element Berechtigungen von seinem übergeordneten Element vererbt wurden. Darüber hinaus wurden einige Inhalte neu gewichtet, um zu verhindern, dass zu viele Elemente auf einer bestimmten Hierarchiestufe angezeigt werden. Der Ereignishandler wurde so geändert, dass ein Formular- oder Lesezugriff für die Benutzer erzwungen wurde, die gegenwärtig nicht als Bearbeiter zugewiesen sind, indem Änderungen an Dokumenten oder Workflow verhindert werden. Durch diesen Ansatz wurde nicht eingeschränkt, wer Elemente anzeigen darf, da es außer über den Einsatz von Bereichen keine andere Möglichkeit gibt, die Anzeige sicher einzuschränken. Doch dieser Ansatz kann befolgt werden, um Änderungen an Dokumenten oder Workflows zu verhindern, z. B. versehentlich zuzulassen, dass der Autor das Dokument ändern darf, während es sich in einem Bearbeitungszyklus befindet. Nachdem Sicherheitsbereiche einzelner Elemente entfernt und der aktualisierte Workflow und Ereignishandler installiert wurden, konnten die Benutzer die Umgebung ohne die Erzwingung von Sicherheitseinstellungen auf Einzelelementebene und ohne weitere Leistungsprobleme verwenden. Das folgende Diagramm zeigt eine vereinfachte Darstellung der physischen Struktur der Website nach Entfernung des Sicherheitsbereichs, wobei jedes eindeutig nummerierte goldene Sechseck einen eindeutigen Berechtigungsbereich darstellt. Alle untergeordneten Elemente im jeweiligen Container erben die Einstellungen des jeweiligen Bereichs, es sei denn, diese verfügen über einen eigenen eindeutigen Berechtigungsbereich. Seite 19 1 Web Object 1 Document Library 1 Object 1 Folder Object Item 8 Object 1 Item 1 Object 1 Item 9 Object 1 Item 2 Object 1 Item 10 Object 1 Item 11 Object 1 Item 3 Object … 1 … x10,000+ Items (2,000 max per level) … 1 Document Library 2 Object x20 x10,000+ Items (2,000 max per level) Eine geplante langfristige Lösung in SharePoint-Produkten und -Technologien ist das Aufteilen des Inhalts auf verschiedene Websites, sodass abgestimmte Berechtigungen weiter verwendet werden könnten, wobei die allgemeinen Auswirkungen auf eine wesentlich kleinere Menge von Änderungen beschränkt wird. Das folgende Diagramm zeigt eine vereinfachte Darstellung der physischen Struktur des Inhalts nach einer Aufteilung auf verschiedene Websites, wobei jedes eindeutig nummerierte goldene Sechseck einen eindeutigen Berechtigungsbereich darstellt. Alle untergeordneten Elemente im jeweiligen Container erben die Einstellungen des jeweiligen Bereichs, es sei denn, diese verfügen über einen eigenen eindeutigen Berechtigungsbereich. 1 Web 1 Object 2 Document Library 1 Object 3 Folder Object 7 Web 2 Object Document Library 2 Object 8 Item 8 Object 9 Item 1 Object 4 Item 9 Object 10 Item 2 Object 5 Item 10 Object 11 Item 11 Object 12 Item 3 Object … x10,000+ Items (2,000 max per level) 6 … … x20 x10,000+ Items (2,000 max per level) Das folgende Diagramm zeigt den logischen Bereichsentwurf und hebt hervor, wie viele eindeutige Sicherheitsprinzipale jedem Websitebereich maximal hinzugefügt werden können, falls abgestimmte Berechtigungen nach der Verschiebung in verschiedene Websites wieder aktiviert würden. Wenngleich noch Seite 20 immer eine große Anzahl von Elementen mit eindeutigen Berechtigungen übrig bliebe, wurde das Hauptproblem einer übermäßigen Anzahl von Sicherheitsprinzipalen in einem Bereich behoben. Zuletzt wurde untersucht, welche neuen Funktionen ein Wechsel zu SharePoint 2010-Produkte und Technologien dem Workflowentwurf bereitstellen könnte, insbesondere die Fähigkeit zum dynamischen Zuweisen abgestimmter Berechtigungen mithilfe der SPRoleAssignmentCollection.AddToCurrentScopeOnlyMethode. Mit dieser Methode kann die Mitgliedschaft ausschließlich dem individuellen Bereich jedes Elements zugewiesen und anschließend einer SharePoint-Gruppe, die die Mitgliedschaft aufweist, die Einstellung Eingeschränkter Zugriff für die übergeordnete Website erteilt werden. Diese Vorgehensweise ermöglicht die Implementierung abgestimmter Berechtigungen über den Workflow und/oder Ereignishandler ohne Auswirkung auf die Leistung. Zusammenfassung In diesem Dokument werden empfohlene Vorgehensweisen zum Einsatz abgestimmter Berechtigungen in einer Organisation und mögliche einhergehende Leistungsprobleme beschrieben. Darüber hinaus werden Strategien und Methoden zum Beheben von Problemen behandelt, die in einer Umgebung aufgrund der nicht ordnungsgemäßen Verwendung oder Menge abgestimmter Berechtigungen auftreten können. Abschließend wird eine Beispielumgebung vorgestellt, in der Probleme aufgrund einer nicht ordnungsgemäßen Verwenden abgestimmter Berechtigungen auftraten, und der Prozess zum Beheben dieser Probleme geschildert. Seite 21