2014-03-26 19 views
1

在有關實體上創建Previlege我有一個檢查登錄用戶是否具有用戶級別對安全角色中指定的特定實體創建特權的需求。如何檢查用戶是否具有用戶級別通過JAVASCRIPT

我已經嘗試了Java腳本以及檢索特權實體,並檢查特權,但不按預期工作。

Javascript檢索用戶和特權的角色,但它顯示canbedeep,canbelocal,canbeglobal爲true,即使用戶角色只有用戶級別創建特權。

',

'<entity name="role">', 
    '<attribute name="name" />', 
    '<link-entity name="systemuserroles" from="roleid" to="roleid">', 
     '<link-entity name="systemuser" from="systemuserid" to="systemuserid">', 
      '<filter>', 
       '<condition attribute="systemuserid" operator="eq-userid"/>', 
      '</filter>', 
     ' </link-entity>', 
    '</link-entity>', 
    ' <link-entity name="roleprivileges" from="roleid" to="roleid">', 
     ' <link-entity name="privilege" from="privilegeid" to="privilegeid">', 
      ' <attribute name="canbebasic" />', 
      ' <attribute name="canbedeep" />', 
      ' <attribute name="canbelocal" />', 
       ' <attribute name="canbeglobal" />', 
      ' <attribute name="accessright" />', 
       '<filter type="and">', 
     '<condition attribute="name" operator="eq" value="prvcreate' + entity + '" />', 
     '</filter>', 
      ' </link-entity>', 
     ' </link-entity>', 
     '</entity>', 
' </fetch>' 

會有人請幫助?

謝謝!

回答

0

我認爲你誤解了canbebasic,canbedeep,canbelocal和canbeglobal的意思。這些是特權本身的屬性(例如,prvCreateAccount)。它們僅指示可以在用戶級別處分配特權。它們並不表示對於任何特定角色或用戶,它在用戶級別上被分配了

聽起來好像你想檢查RolePrivileges實體上的Privilege Depth Mask。引用這篇文章的值的列表。

http://sliong.wordpress.com/2012/11/20/crm-2011-privilegedepthmask-and-accessright/

相關問題