RevokeAccessRequest is not deleting records from PrincipalObjectAccess(POA) table RRS feed

  • Question

  • I am using RevokeAccessRequest to unshare(remove access) the record, however it is not deleting the record in PrincipalObjectAccess table. This is creating a problem in Merge. I need to delete record in PrincipalObjectAccess table, please let me know how can I remove access of team/user and delete that privilege record in PrincipalObjectAccess table.

    appreciate your help. thanks

    Monday, December 9, 2013 8:29 PM

All replies

  • Hi Somi Reddy,

    If you share a record with any of the user in CRM , Those records will have a value in the AccessRightsMask colum of the POA table.

    The POA table is used to provide access to specific records for CRM users, and each record in the POA table represents one CRM object that is related to one CRM user. Records created in the POA table come from one of four ways:

    • Share reassigned records with original owner: CRM System Settings

    o If this is set to Yes, then records would be added to the POA table whenever an assign takes place. These records will have a value in the AccessRightsMask colum of the POA table.

    • Direct sharing: Actions – Sharing

    • Reparent Setting: Relationship Behavior

    • Indirect Sharing

    If you want to control the POA table and clear the POA , please click this link http://support.microsoft.com/kb/2664150

    Hope this may help you.

    Warm Regards, Suresh Kumar D

    Tuesday, December 10, 2013 3:36 AM
  • RevokeAccessRequest don't delete records from POA, It just sets AccessRightsMask and InheritedAccessRightsMark values to 0.  This is what RevokeAccessRequest does, it zero’s out the permissions shared rather than deleting the record. I think CRM maintenance job purges these eventually.

    • Proposed as answer by Venkat_Reddy Tuesday, December 10, 2013 5:28 PM
    Tuesday, December 10, 2013 5:28 PM