Nintex Workflow: Hinzu­fügen von Berech­ti­gungen an Listen/Bibliotheken und Webseiten

Um Berech­ti­gungen von Listen/Bibliotheken oder Webseite inner­halb eines Nintex Workflows hinzu­zu­fügen, sind mehrere Schritte notwendig, da keine Standar­dac­tions von Nintex dazu mitge­lie­fert werden.

Das Vorgehen zum Hinzu­fügen von Benut­zern und Gruppen an eine Liste wird exempla­risch beschrieben.

Berech­ti­gungen auf Listen/Bibliotheken und Webseiten zu setzen ist, genau wie das Entfernen, nicht von Haus aus durch eine Nintex-Standard-Action möglich.

Im Folgenden wird das Vorgehen beim Setzen von Rechten am Beispiel einer Liste gezeigt. Dazu wird erneut der Standard-Share­Point Permissions.asmx WebSer­vice benötigt. Zusätz­lich sind noch eine Build string sowie Call web service Action notwenig.

Übersicht kompletter Workflow


Konfi­gu­ra­tion Build string Action
Text XML nach dem Schema:
<Permis­sions>
<Users>
<User LoginName=“Domäne\Benutzer1” PermissionMask=“138612833” />
</Users>
<Groups>
<Group GroupName=“MeineGruppe1” PermissionMask=“1027801615” />
</Groups>
</Permissions>
Store result in Variable (Typ: Multi­Line) in der das XML für das setzten der Berech­ti­gungen gespei­chert werden soll

In der Build string Action muss das XML erfasst werden, dass die zu verge­benden Berech­ti­gungen enthält. Dabei wird nach Benut­zern und Gruppen unter­schieden. Das XML ist wie im Screen­shot oben aufge­baut. Für jeden Benutzer bzw. Gruppe muss eine Zeile hinzu­ge­fügt werden, die den Login- bzw. Gruppen­namen und die Berech­ti­gung enthält.

Die Berech­ti­gung wird anhand einer Permis­si­onMask festge­legt. In einer Permis­si­onMask sind die einzelnen Berech­ti­gungen (z.B. Listen/Bibliotheken anpassen, Hinzu­fügen-, Ändern-, Löschen von Elementen, Versionen ansehen und löschen usw.) codiert. So sagt die Permis­si­onMask 00000002 zum Beispiel, dass man das Recht hat Elemente hinzu­zu­fügen.

Einen guten Artikel zum Thema Share­Point Permis­sions incl. Permis­si­onMasks hat James Tsai geschrieben.

Im Folgenden sind einige Standard­be­rech­ti­gungen incl. ihres Wertes aufge­listet:

Berech­ti­gung (english) Berech­ti­gung (deutsch) Permis­si­onMask
FullCon­trol Vollzu­griff -1
Contri­bute Mitwirken 1027801615
Edit Bearbeiten 134287360
Design Entwerfen 1012866047
View only Nur anzeigen 138612801
Read Lesen 138612833

Konfi­gu­ra­tion Call web service Action

In der Call web service Action müssen nun nur noch die folgenden Parameter erfasst werden

Url Hier muss die Url zum Permis­sions-WebSer­vice einge­tragen werden. Diese lautet <WebUrl>/_vti_bin/Permissions.asmx — <WebUrl> ist die Nintex Eigen­schaft
Web method AddPer­mis­sionCollec­tion
objec­t­Name (string) Name der Liste bei der die Berech­ti­gungen hinzu­ge­fügt werden sollen
objec­t­Type (string) List (falls Websei­ten­be­rech­ti­gungen angepasst werden sollen: Web)
permis­si­ons­In­foXml (xml) Variable aus der vorhe­rigen Build string Action, die die zu verge­benden Berech­ti­gungen enthält.

Workflow veröf­fent­li­chen und testen.

Stephan Dalke

Solution Archi­tect

Keine Kommentare

Tut uns sehr leid, das Kommentarformular ist zur Zeit geschlossen.