Today during a debug session this error occurred: Server was unable to process request. 0x80040220 SecLib::CheckPrivilege failed. Returned hr = -2147220960, User: 393528ec-10e4-de11-9707-000c29359a20, PrivilegeId: a3311f47-2134-44ee-a258-6774018d4bc3 Platform It looks like the user with id 393528ec-10e4-de11-9707-000c29359a20 does not have the privilege to do some action on an entity. How do we figure out what privilege it is? Answer is very easy: Open up the MS SQL Server Management Studio and go to the database "ORGNAME_MSCRM", open the table "dbo.PrivilegeBase" and shoot off the following SQL statement: SELECT [Name] FROM [ORGNAME].[dbo].[PrivilegeBase] where [PrivilegeId] = 'a3311f47-2134-44ee-a258-6774018d4bc3' The result was: prvReadEntity Now you know that user with id 3935.... requires the right to read an entity that was used in the request which caused this error.
Bringing code to life is a developer's daily task to fulfill.