Jedes Konzepts für ein durchdachtes Dokumentenmanagement beinhaltet auch Fragen der Zugriffsberechtigung: Wer darf was sehen? Wer verfügt über Schreibrechte und kann somit Inhalte erstellen, ändern oder gar löschen?
Der vorliegende Artikel ist der erste in einer zweiteiligen Serie. Sie vergleicht einige typische Ansätze, die als Antworten auf die oben genannten Fragen verfolgt werden. Anschließend wird für SharePoint (MOSS) 2007 ein Weg vorgestellt, wie sich das Problem auf benutzerfreundliche und prozesssichere Weise lösen lässt. Benötigt werden hierzu: SharePoint-Designer 2007 sowie die spdactivities (eine kostenlos erhältliche Sammlung zusätzlicher Workflow-Aktionen für den SharePoint Designer)
Phase 1: Dokumente als “vertraulich” kennzeichnen
Häufig wird in der Praxis eine Metadaten-Spalte “Vertraulichkeitsstufe” oder “Security Level” verwendet, um zu kennzeichnen, wie sensibel der Inhalt eines Dokumentes ist. Werte wie “öffentlich”, “intern”, “vertraulich” oder “streng geheim” kommen hier zum Einsatz. Mitarbeiter, die mit diesen Dokumenten arbeiten, werden so darauf hingewiesen, wie sie mit den jeweiligen Daten umgehen müssen.
Die Schwachstelle an diesem ersten Ansatz ist allerdings, dass die Kennzeichnung “geheim” lediglich ein Etikett ist. Die tatsächlich geltenden Zugriffsrechte in SharePoint werden hiervon in keiner Weise beeinflusst. Hierfür muss separat eine der folgenden Maßnahmen ergriffen werden.
Phase 2: Berechtigungsstufen manuell festlegen
Wie beschrieben, stellt das oben beschriebene Verfahren keinen Schutz vor unerlaubtem Zugriff auf Dokumente dar. Der Besitzer einer SharePoint-Site muss sich folglich darüber klar werden, wie er die erforderliche Abstufung in den Zugangsberechtigungen technisch umsetzen kann. Folgende Alternativen stehen zur Verfügung:
a) Unterschiedliche Libraries für freigegebene und vertrauliche Dokumente
Ein naheliegender Gedanke ist es, die Daten auf mehrere Dokumenten-Bibliotheken (Document Libraries) aufzuteilen. Dies bedeutet, dass innerhalb der Site z.B. eine Bibliothek “Freigegebene Dokumente” besteht und daneben eine weitere mit Namen “Vertrauliche Dokumente”. Für letztere wird die Rechte-Vererbung gekappt, sodass zum Beispiel für die reguläre Besucher-Gruppe der Site der Zugriff entzogen werden kann.
Obwohl dieses Vorgehen recht einfach und vor allem intuitiv verständlich ist, bringt es einen gravierenden Nachteil mit sich: Dokumente, die womöglich thematisch zusammengehören, liegen nun an unterschiedlichen Orten und sind nicht mehr mit Hilfe von Ansichten/Views auf einen Blick zu betrachten. Keine schöne Lösung – vor allem,wenn man den Grundsatz “Eine Anlaufstelle für jedes Thema” ernst nimmt.
b) Geschützte Ordner innerhalb einer Library
Eine weitere Möglichkeit besteht darin innerhalb derselben Dokumenten-Bibliothek einen (oder mehrere) Ordner anzulegen und für diese die Zugriffsrechte wie unter a) beschrieben zu verändern. Der Vorteil dieses Ansatzes ist es, dass die Möglichkeit erhalten bleibt, alle Dokumente aggregiert zu sehen. Hierzu erstellt man einfach einige “flachen” Ansichten, bei denen jegliche Ordner in der Library ignoriert und nur die Dokumente angezeigt werden. Besucher mit unterschiedlichen Zugriffsberechtigungen sehen dann eine entsprechend längere oder kürzere Liste an Dokumenten, wenn Sie die Library aufrufen.
So charmant diese Lösung auf den ersten Blick wirkt, auch sie hat einen Pferdefuß: Damit das Konzept aufgeht, muss nämlich allen Mitarbeiter, die Dokumente erstellen bzw. hochladen bewusst sein, in welchen Ordner ihr Dokument zu speichern ist. Selbst nach einer gründlichen Einweisung aller Beteiligten bleibt das Procedere umständlich: 1) in eine Ansicht wechseln, welche die Ordner anzeigt, 2) den richtigen Ordner öffnen und schließlich 3) das Dokument hier hochladen bzw. neu erzeugen. Eine echte Prozesssicherheit und damit die korrekte Rechtevergabe für sensible Dokumente ist so nur schwer zu erreichen.
c) Vergabe von Rechten auf Dokumenten-Ebene
Schließlich bleibt als dritte Alternative jedem Dokument individuelle Rechte zuzuweisen. Hierbei bleibt es bei einer flachen Ablagestruktur der Daten, sodass auf eine Einordnung der Dokumente in den richtigen Ordner als Träger von Zugriffsrechten verzichtet werden kann.
Da das Aufbrechen der Rechtevererbung und die Anpassung der Zugriffsrechte jedoch manuell für jedes Element erfolgen muss, ist auch dieser Weg nicht zu empfehlen. Wenn ein Bearbeiter vergisst die Rechte für sein vertrauliches Dokument anzupassen, bedeutet dies eine Sicherheitslücke. Zudem kann bei bei großen Bibliotheken mit Tausenden von Dokumenten die Performance des SharePoint-Servers in den Keller gehen, wenn so extensiv mit individuellen Rechtezuweisungen gearbeitet wird.
Es bleibt die Frage: Wie geht es besser?
Phase 3: Der Königsweg – Metadaten steuern Zugriffsrechte
Die Lösung des Problems sollte für die Endanwender intuitiv verständlich und komfortabel in der Bedienung sein. Eine Automatisierung der Rechtevergabe mittels eines Workflows erfüllt diese Anforderungen.
Die zugrunde liegende Idee ist einfach: beim Speichern vergibt der Ersteller oder Bearbeiter eines Dokuments (wie unter “Phase 1″ beschrieben) ein beschreibendes Metadatum “Vertraulichkeit” bzw. “Security Level” für jedes Dokument. Ein Workflow überprüft daraufhin, ob der ausgewählte Wert restriktivere Zugriffsrechte erforderlich macht, als dies für “normale” Dokumente in dieser Bibliothek der Fall ist. Falls ja, sorgt der Workflow automatisch dafür, dass die Rechte so angepasst werden, wie es der unter “Vertraulichkeit” angegebene Wert verlangt.
In der kommenden Woche erscheint an dieser Stelle der zweite Teil dieses Artikels mit einer detaillierten Anleitung, wie sich der zuletzt skizzierte Königsweg in die Tat umsetzen lässt.