Friday, November 20, 2009

[MOSS] Event 5214 - The EXECUTE permission was denied on the object 'proc_FetchDocForUpdate'

[ISSUE]
The following event was occuring on our environment quite often:

Event Type: Error
Event Source: Windows SharePoint Services 3
Event Category: Database
Event ID: 5214
Date: 11/19/2009
Time: 4:28:54 PM
User: N/A
Computer: [SERVER]
Description:
Insufficient SQL database permissions for user '[account]' in database 'SharePoint_AdminContent_3995bd54-8091-4157-b162-8aaaf7116355' on SQL Server instance '[SQL SERVER]'. Additional error information from SQL Server is included below.

The EXECUTE permission was denied on the object 'proc_FetchDocForUpdate, database 'SharePoint_AdminContent_3995bd54-8091-4157-b162-8aaaf7116355', schema 'dbo'.

For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.

[SOLUTION]
To solve this issue, perform the following steps:

  • Open the SQL Management Studio
  • Browse to the database in question, in our case "'SharePoint_AdminContent_3995bd54-8091-4157-b162-8aaaf7116355"
  • Open the database and then Security > Roles > Database Roles
  • In the right part of the window, right click the WSS_Content_Application_Pools role and click Properties
  • Select the menu option "Securables"
  • Click "Add"
  • Select "Specific objects" and click "OK"
  • Click "Object Types", select "Stored Procedures" and click "OK"
  • Add the following stored procedures: proc_FetchDocForUpdate, proc_GetWebMetaInfo, proc_UpdateDirtyDocument, proc_UpdateListItem
  • Click "OK" to add these stored procedures
  • Select the added stored procedures and select "Execute" in the "Grant" column.
  • Click "Add" once more
  • Select "Specific objects" and click "OK"
  • Click "Object Types", select "Views" and click "OK"
  • Add the following view: UserData
  • Click "OK" to add this view
  • Select the added view and select "Select" in the "Grant" column.
  • Click "OK" to complete

1 comment:

Unknown said...

This is exactly what I'm having on my servers. Thanks Yorick. Do you know what causes this manual process? I don't see these store procedures added to the original role on our test and production environments. Thanks!