3.31.2010

the SELECT permission was denied on the object 'FilteredActivityPointer'

While testing out some user profiles in a development environment, I was presented the following error when trying to run the Activity report, which is included with Microsoft CRM:


the SELECT permission was denied on the object 'FilteredActivityPointer'

I had been able to run the report while logged in as the administrator user that was used during the install, but no other users could, regardless of their security role. Digging into the problem, I opened SQL Server Management Studio and took a look at the permissions on the FilteredActivityPointer view:




This sure didn’t look right. So, I compared this to some other filtered views, and found that the other filtered views had permissions for the ReportingGroup and the CRMReaderRole from SQL Reporting Services.

To restore the privileges to this view, I ran the following script against the CRM database:

GRANT SELECT ON dbo.FilteredActivityPointer
TO [DYNAMICS\ReportingGroup
{0f55c689-67f1-4fba-93d5-231e488a960e}]
GO
I did the same for the CRMReaderRole:

GRANT SELECT ON dbo.FilteredActivityPointer
TO [CRMReaderRole]
GO

These simple scripts add the user specified to the view, and set the checkbox for the Select permission.

Here’s the result, which, upon testing, allowed users to run the Activity Report:



I suspect that this is due to a bug in the organization deployment process. This organization was not the default organization – I created a new Org for this project. Somehow, I think permissions did not get properly propagated to all the views.

2 comments:

Anonymous said...

Thanks a lot! We were going crazy with this...

Anonymous said...

Thank you very much ..... This should be sent through to Microsoft as their solution or workaround rather says to create a report without using the default views as filters which did not work for me. This worked like a charm ... great investigative work and solution ... Your'e AWESOME !!!

 
ICU MSCRM © 2004-2009