Dynamics CRM 2013 – Access Denied “SecLib::AccessCheckEx failed” – Error & Resolution #MSDynCRM


It’s been a long time since I had blogged anything out here. Partly due to working on various projects simultaneously.

This post is about one CRM issue faced by one of our CRM users. He was trying to qualify a lead and it was not happening. Following error message was thrown:

Screen Shot 2014-08-06 at 12.40.12 PM

Following is the log file, which explained in detail about this issue:


<s:Envelope xmlns:s=”http://schemas.xmlsoap.org/soap/envelope/”><s:Body><s:Fault><faultcode>s:Client</faultcode><faultstring xmlns:xml=”http://www.w3.org/XML/1998/namespace&#8221; xml:lang=”en-US”>SecLib::AccessCheckEx failed. Returned hr = -2147187962, ObjectID: 919e14d1-6489-4852-abd0-a63a6ecaac5d, OwnerId: 3c8fcb46-39f6-4618-80eb-9c12f9f9a021,  OwnerIdType: 8 and CallingUser: 610b8b50-46e6-e311-80bb-00155d071101. ObjectTypeCode: 4703, objectBusinessUnitId: 3271f8a6-83d8-e311-80ba-00155d071101, AccessRights: ReadAccess </faultstring><detail><OrganizationServiceFault xmlns=”http://schemas.microsoft.com/xrm/2011/Contracts”><ErrorCode>-2147187962</ErrorCode><ErrorDetails /><Message>SecLib::AccessCheckEx failed. Returned hr = -2147187962, ObjectID: 919e14d1-6489-4852-abd0-a63a6ecaac5d, OwnerId: 3c8fcb46-39f6-4618-80eb-9c12f9f9a021,  OwnerIdType: 8 and CallingUser: 610b8b50-46e6-e311-80bb-00155d071101. ObjectTypeCode: 4703, objectBusinessUnitId: 3271f8a6-83d8-e311-80ba-00155d071101, AccessRights: ReadAccess </Message><Timestamp>2014-08-06T08:42:07.844046Z</Timestamp><InnerFault><ErrorCode>-2147187962</ErrorCode><ErrorDetails /><Message>SecLib::AccessCheckEx failed. Returned hr = -2147187962, ObjectID: 919e14d1-6489-4852-abd0-a63a6ecaac5d, OwnerId: 3c8fcb46-39f6-4618-80eb-9c12f9f9a021,  OwnerIdType: 8 and CallingUser: 610b8b50-46e6-e311-80bb-00155d071101. ObjectTypeCode: 4703, objectBusinessUnitId: 3271f8a6-83d8-e311-80ba-00155d071101, AccessRights: ReadAccess </Message><Timestamp>2014-08-06T08:42:07.844046Z</Timestamp><InnerFault xmlns:i=”http://www.w3.org/2001/XMLSchema-instance&#8221; i:nil=”true” /><TraceText xmlns:i=”http://www.w3.org/2001/XMLSchema-instance&#8221; i:nil=”true” /></InnerFault><TraceText xmlns:i=”http://www.w3.org/2001/XMLSchema-instance&#8221; i:nil=”true” /></OrganizationServiceFault></detail></s:Fault></s:Body></s:Envelope>


Upon checking those terms on CRM forums and blogs, following post, by Simon Harvey of Rule30, helped me on how to approach this issue: Fixing a SecLib::AccessCheckEx failed error in CRM.

My user’s issue was that he was not having access to read “Process” at the organization level. I had previously set it up to “User” level. After changing the access level as follows, he was able to qualify leads without any issues.

Screen Shot 2014-08-06 at 1.28.24 PM

 

Most important thing here is that when you query your ObjectTypeCode and corresponding Object Name for code 4703, it will return the name as WorkFlow. Note that on Security Role setup, it’s nothing but Process.

Happy troubleshooting.

VAIDY