I have some users who have contribute access on a list and read access on the site but anytime a user tries to alert himself he gets
Error: Access Denied
Why is this? I even gave the user Full Control on the list, still the same issue!
I had this problem recently. In my case, a user had
Contribute access to a list but at the site level had
Restricted Read doesn't have the
Create Alerts permission. Replacing the site permissions with
Read resolved the issue.
The permission to create alerts is actually at the site level. By default, I don't think the OOTB Visitors/Readers group can do this.
Do the site permissions allow for persnalization permissions? In the Shared Service Provider of Central Administration, do all authenticated users have personalization permissions defined in Personalization services permissions, assuming your on 2007?
It is a known issue, you should give the users permissions on the paren web as well, as discussed here:
You can create the alert from the list ribbon via the application page
SubNew.aspx, and manage them via the
MySubs.aspxpage, both of them are located in the
_layoutsfolder. The code behind class for these pages are the
MySubsPageclasses respectively from the assembly
Microsoft.SharePoint.ApplicationPages(and the same namespace). There is no security check in the
OnLoadmethod of the
SubNewPageclass (nor in its base classes), however in the
OnLoadmethod of the
CheckRightsmethod of the
Microsoft.SharePoint.WebControlsnamespace ) is called. This method checks, if the current user has
DefaultLayoutsRightspermission (that means
SPBasePermissions.EmptyMask | SPBasePermissions.ViewFormPages | SPBasePermissions.Open | SPBasePermissions.ViewPages) on the parent web, and not on the list. If not, the user is not able to manage the alerts she created earlier.
To expand a little on @David Clarke's sound answer, let's discuss the following three scenarios and their minimum required permissions within the Role / Permission Levels:
Add Own Alert
Manage Own Alerts
Add / Manage Alerts of Other Users
Manage Alerts - at site level
Scenarios 1 & 2 may also require
View Application Pages if not already granted via another role. Without this permission at or above the scope (site, list, item) where you want to create the Alert, you will not have the option. Furthermore, you may also be redirected to the notoriously obnoxious "Access Denied" page.
Confirmed (i.e. the same permissions exist) in SharePoint 2007 through SharePoint Online.