Dieser Gastbeitrag wurde uns freundlicherweise von der AvePoint Deutschland GmbH zur Verfügung gestellt. Autor ist Robert Mulsow.

Suche und Übertragung von Nutzerrechten

SharePoint bietet die ideale Möglichkeit, um Nutzern Zugang zu Informationen zu gewähren und gleichzeitig vertrauliche Informationen vor unerwünschtem Zugang zu bewahren. Grundlage für diese Möglichkeit ist das Berechtigungskonzept im SharePoint, welches hierarchisch aufgebaut ist. AD Nutzer und Gruppen werden entweder in SharePoint Gruppen integriert (Best Practice) oder einem bestimmten Berechtigungslevel zugewiesen, z.B. dem Level „Besucher“. Zu diesem Level „Besucher“ gehören nun explizite Rechte, wie das Lesen von SharePoint-Seiten inkl. aller Funktionselemente wie Masterpage, Ansichten etc., sowie das Öffnen von Dokumenten. Dies ist gleichzeitig das letzte Element der Kette, das Objekt, auf das entsprechende Rechte angewendet werden.

Basierend auf diesem Konzept muss ein SharePoint Administrator von unten nach oben planen. Er muss sich überlegen, auf welche Objekte er welchen SharePoint oder AD Nutzern und Gruppen mit welchen Berechtigungen Zugang ermöglichen möchte. Dabei ist ein weiterer Best Practice Ansatz sehr hilfreich: So viele Rechte wie nötig, aber so wenige wie möglich vergeben!

Das ist in kleinen Umgebungen, die z.B. aus einem kleinen Intranet mit einem Farm Administrator und wenigen Nutzern, die Lesen und Beitragen dürfen, gar kein Problem. Was ist jedoch, wenn es mehrere Webapplikationen gibt? Als Beispiel kann man dazu ein standardisiertes Intranet Portal und eine Projekt-Webapplikation betrachten, in der es ad-hoc Projektseiten mit manuellen Rechtevergaben gibt. Weitere Beispiele sind Wiki-Seiten, die Verwendung von Content Deployments usw.… Dann kann es ganz schnell unübersichtlich werden.

Im Idealfall gäbe es im SharePoint eine Auflistung darüber, wer welche Berechtigungen hat. Leider ist dies nicht der Fall. Hier ein Beispielszenario: Sie sind SharePoint Administrator in einem größeren Unternehmen, das demzufolge auch eine größere SharePoint Farm hat. Ein Mitarbeiter, dem schon innerhalb der Farm auf verschiedenen Ebenen Rechte zugewiesen wurden – zum Teil auch manuell und direkt vergeben – möchte sich weiterentwickeln. Ein neuer Mitarbeiter soll seinen Platz einnehmen. Somit braucht dieser idealerweise die gleichen Rechte, damit auch er die erforderlichen Aufgaben erfolgreich absolvieren kann.

Daraus ergeben sich drei Konstellationen:

  1. Wie finden Sie all die Rechte heraus, die der bestehende Mitarbeiter in der gesamten Farm hat?

  2. Wie können Sie all diese Rechte an den neuen Mitarbeiter übertragen?

  3. (Im schlechtesten Fall:) Der Mitarbeiter verlässt das Unternehmen und zusätzlich müssen Sie nun den Account aus allen SharePoint User-Tables löschen.

Wie können diese Szenarien nun am effizientesten im SharePoint abgebildet werden?

  1. Sie gehen in jede einzelne Seite, Liste und im worst case (Item-Level-Permission) sogar auf jedes einzelne Objekt, suchen die entsprechenden Berechtigungen zusammen und dokumentieren diese. Denken Sie dabei auch an den berühmten „Limited Access“! Diese Vorgehensweise würde Monate in Anspruch nehmen.

  2. Angenommen, Sie haben alle Berechtigungen sauber dokumentiert, dann müssen Sie dennoch, wie in Punkt 1 beschrieben, jedes einzelne Objekt im SharePoint auswählen, um dem neuen Nutzer die dortigen Rechte zuzuweisen. Ebenso kein praktikabler Ansatz. Sie möchten den Prozess abkürzen, indem Sie dem neuen Nutzer direkt „Full Control“ auf vielen, wenn nicht sogarallen Ebenen, vergeben. Zwar mag das Problem mit fehlenden Berechtigungen dann beseitigt sein, aber wie steht es bei diesem Vorgehen um Ihre Compliance-Richtlinien? Sehr wahrscheinlich ist auch dieser Ansatz wenig praktikabel.

  3. Sie können den betroffenen Nutzer aus Ihrem AD deaktivieren oder ganz löschen. Der User Profile Synchronization Service erkennt diese Änderung im ersten Sync (setzt eine Flag) und löscht den Nutzer beim zweiten Sync aus dem User Profile Service. Der Nutzer bleibt jedoch in allen User-Tables bestehen, sodass weder Deaktivieren noch Löschen eine saubere Lösung ist, um den Nutzer komplett aus Ihrer SharePoint Umgebung zu entfernen.

Um das Berechtigungs-Management effizienter zu gestalten und stressfrei nach allen Nutzerberechtigungen zu suchen und um diese möglichst einfach übertragen zu können, muss man auf andere Lösungen, wie die „Security Search“ im DocAve Administrator der Firma AvePoint, zurückgreifen. Dort gibt es die Möglichkeit, einen kompletten Scan der Farm durchzuführen, entweder für einen bestimmten User oder für alle. Der Scan kann noch zusätzlich auf Site Collection, Site usw. eingegrenzt oder sogar ein eigener Filter gesetzt werden. So wird sauber ausgewertet, welcher Nutzer welche Rechte im betreffenden Geltungsbereich hat.

Für das zweite Szenario können die ausgelesenen Rechte verwendet und einfach auf einen neuen Nutzer geklont oder übertragen werden. Auch dieser Schritt ist in kurzer Zeit erledigt.

Für das dritte Szenario gibt es den sogenannte „Dead Account Cleaner.“ Mit einem einfachen Befehl kann die Farm nach sogenannten Dead Accounts, also deaktivierten Accounts, abgesucht und diese dann komplett aus der SharePoint Farm herausgelöscht werden. Es besteht zusätzlich die Möglichkeit, die Rechte, die der deaktivierte Account hatte, auf einen neuen Nutzer zu übertragen. Auch dieser Schritt ist mit wenigen Klicks erledigt und erspart dem SharePoint Administrator sehr viel Arbeit.

Sie können natürlich auch das Rechtemanagement stark eingrenzen und nur mit Rechte-Vererbungen arbeiten. Dies erfordert allerdings sehr präzise Planung, und nimmt dem SharePoint seine Flexibilität. Nutzern könnte so eventuell kein angemessener Zugang zu notwendigen Daten bereitgestellt werden, was sich wiederum negativ auf die Produktivität auswirkt.

Jeder Administrator wird früher oder später auf oben beschriebene Probleme stoßen. Um diesen entgegen zu wirken und den Mehrwert von SharePoint voll auszuschöpfen, muss sich jeder Administrator daher mit der dynamischen und flexiblen Rechtevergabe auseinandersetzen. Zu diesem Zeitpunkt ist es gut zu wissen, dass es dafür adäquate Lösungen gibt.

Viel Spaß beim „SharePointen“!