Microsoft Dynamics CRM 2011 | UserPrivileges in Datenbank ermitteln

Wer sich nicht lange durch die im CRM hinterlegten Sicherheitsrollen lesen will und stattdessen schnell eine Überprüfung der vorhandenen Rechte für einen User auf Datenbank-Ebene vornehmen will. der kann sich mit folgender SQL Abfrage behelfen:

SELECT p.name, u.FullName
FROM SystemUser u
JOIN filteredSystemUserRoles sur ON sur.systemuserid = u.systemuserid
JOIN RolePrivileges rp ON rp.roleid = sur.roleid
JOIN FilteredPrivilege p ON p.privilegeid = rp.PrivilegeId
WHERE u.SystemUserId = ‚GUID‘

Die GUID lässt sich aus der Tabelle SystemUserBase entnehmen.

Damit lässt sich z.B. schnell Ermitteln, ob der Nutzer über das Recht prvISVExtensions verfügt. Ein Recht, das benötigt wird, um ISV Buttons angezeigt zu bekommen.

Bei der Migration von 4.0 auf 2011 nutzt die Upgrade-Routine dieses Recht, um vorhandene ISV-Elemente anzuzeigen. In der RibbonDiffXml Definition findet sich dann der Eintrag

<DisplayRules>
<DisplayRule Id=“Mscrm.Isv.phonecall.Form„>

<MiscellaneousPrivilegeRule PrivilegeName=„ISVExtensions“ />

 

Technorati Tags:

Ein Gedanke zu “Microsoft Dynamics CRM 2011 | UserPrivileges in Datenbank ermitteln

Schreibe einen Kommentar

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s