locked
Access Is Denied -- denied to which entity? RRS feed

  • Question

  • Hi,

     

    I'm trying to create a Case (incident) using a particular CRM user account, but when I click Save, I get the message:

     

    "Access Is Denied"

    "You do not have enough privileges to access the Microsoft CRM object or perform the requested operation."

     

    I know this must be because I haven't granted Create or Write permissions for an entity. Problem is I can't figure out which entity needs to be granted more permissions for this user. I've given Case and a bunch of other related entities all the permissions they would need.

     

    My question is not specific to Case: How do I determine WHICH entity the system is denying this user access to? The error message is really generic and isn't very helpful. Is there some log file somewhere or a way to enable more detailed error messages?

     

    I'm using CRM 3.0.

     

    Thanks.

     

    Monday, August 18, 2008 6:30 AM

All replies

  •  

    Try switching on developer errors.  You do this by editing a file called web.config located at the root of the crm web site. Check the line that starts with deverrors to say "on".

     

    This may offer you more information when the access is denied error messages appear. Note that all users will see the extra information when they get an error. You may want to set deverros back to off when you've finished.

    Monday, August 18, 2008 6:42 AM
    Moderator
  • Thanks Feridun. I did as instructed and managed to get a stack trace:

     

    Code Snippet

    Microsoft CRM Unhandled Error Details:
    Server Error in '/' Application.
    --------------------------------------------------------------------------------

    <description>Not enough privilege to access the Microsoft CRM object or perform the requested operation.</description>
    Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

    Exception Details: System.Runtime.InteropServices.COMException: <description>Not enough privilege to access the Microsoft CRM object or perform the requested operation.</description>

    Source Error:

    An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below. 

    Stack Trace:


    [COMException (0x80048306): <description>Not enough privilege to access the Microsoft CRM object or perform the requested operation.</description>]
       Microsoft.Crm.Platform.ComProxy.CRMIncidentClass.Create(CUserAuth& Caller, String IncidentXML) +0
       Microsoft.Crm.Application.Platform.Incident.InternalCreate(String xml) +38
       Microsoft.Crm.Application.Platform.Incident.InternalCreateAndRetrieve(String xml, String columnSet) +9
       Microsoft.Crm.Application.Platform.Entity.CreateAndRetrieve(String columnSet) +136
       Microsoft.Crm.Application.Forms.AppForm.RaiseDataEvent(FormEventId eventId) +289
       Microsoft.Crm.Application.Forms.EndUserForm.Initialize(Entity entity) +57
       Microsoft.Crm.Application.Forms.CustomizableForm.Execute(Entity entity, String formId, String formType) +83
       Microsoft.Crm.Application.Forms.CustomizableForm.Execute(Entity entity) +13
       Microsoft.Crm.Web.CS.CaseDetailPage.ConfigureForm() +362
       Microsoft.Crm.Application.Controls.AppPage.OnPreRender(EventArgs e) +29
       System.Web.UI.Control.PreRenderRecursiveInternal() +77
       System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1360

     

     

    But I still can't figure out from the stack trace which entity I need to give the user more rights to. Can you advise? Thanks very much.
     

    Monday, August 18, 2008 7:00 AM
  •  

    I agree that it isn't very clear what is going on. However a line in the message make me wonder whether there are any form javascript events defined for the case entity? Perhaps one of those is trying to do something that the user doesn't have permission to do.

     

     

     

    Monday, August 18, 2008 7:07 AM
    Moderator
  • Thanks again. I'll investigate along those lines. Appreciate it.

    Monday, August 18, 2008 9:40 AM