Reference:
http://codesnipets.wordpress.com/2010/12/25/sharepoint-2010-and-asp-net-web-application-security-exception/
SharePoint Groups or accounts such as a domain user or domain group can be assigned permissions to a SharePoint object such as a Site, List, Library, Folder or List Item. Permission Levels such as Contribute and Read are made up of individual permissions. Within this section we will explore the Out-of-the-Box permissions levels before exploring how we can create custom permission levels.
To access the Out-of-the-Box permissions, choose Site Actions, Site Permissions. You will be able to see a list of users/groups that have permission to your team site. Within the Permission Tools ribbon, click Permission Levels to see the existing permission levels.
Figure 11 – Accessing Permission Levels
The Out-of-the-Box permission levels include:
Full Control | User will receive every SharePoint Permission unless the permission has been removed via a Permission Policy. The permission level cannot be modified. |
Design | Users with Design Permissions can virtually do everything with the exception of Manage Permissions on the Site, View Web Analytics Data, Create Subsites, Manage Web Site, Create Groups, Enumerate Permissions and Manage Alerts. Users with this permission level can create, edit and delete list items as well as make design changes to the Shared views of the site and lists. |
Contribute | Contributers can create, edit, and delete items within lists and libraries. They have the same restrictions as Design plus they cannot manage the look and feel of sites or shared views. They cannot apply themes, styles, or modify pages. |
Read | Readers have the same restrictions as Contributers. In addition they cannot Create, Edit or Delete Items. They can only open items to read them. They also do not get any personal permissions and therefore cannot add or remove personal web parts, manage personal views or edit personal user information. |
Limited Access | Limited Access provides you enough permissions to navigate to an item that you do have permission to. For example, you may have been granted Read permissions to a Document within a library that had broken permission inheritance. If you did not have permissions granted to you for the site or library that contained the document, you would be granted limited access which allows you to navigate to the document without seeing any other content. Limited Access is often incorrectly reported in the permission reports. E.g. A user may have Full Control to a Site via a Domain Group. They are also granted permissions directly to a document. The user would then be listed as having Limited Access instead of Full Control to the Team Site. |
View Only | The same as read but cannot download documents. Can only view them in the browser. |
Approve | Very similar to contribute but also has Approve Items permission. |
Manage Hierarchy | Virtually the same as Full Control but does not have Design change options such as apply theme. Used by users who are likely to move sites around. |
Restricted Read | Can view pages and documents, but cannot view historical versions or user permissions. |
You can change the existing permission levels or create your own permission levels at the root site level in the site collection only. In SharePoint 2007, this could be done at sub site level. It is possible to break permission level inheritance but only through the Object Model but that is beyond the scope of this article. You will find a good explanation here: http://stackoverflow.com/questions/7038444/programatically-break-permission-level-inheritance
Note: I would recommend never changing the existing permission levels as that would be very confusing to users who expect a permission level to behave within a certain way.
The reason for creating a custom permission level will be specific to your needs. It might be that you want for example a permission level that lies somewhere between Read and Contribute. Perhaps you want users to be able to Add and Edit items but not Delete.
You can create a custom permission level in two ways. Firstly, you can create them from scratch and select each permission that you would like the permission level to have. Or you can copy an existing permission level, provide it a new name, and then apply the changes to the new copy.
To create a new permission level from scratch:
Figure 12 – Creating a custom permission level from scratch.
To create a custom permission level by copying an existing permission level:
Figure 13 – Copying a Permission Level.
7. Provide a Name and Description for your custom permission level.
8. Make the desired changes by selecting or deselecting the permissions check boxes.
Permission Levels can be assigned to Users, Local Groups or Domain Groups as well as SharePoint Groups. There are different opinions on what you should do. However, my personal preference is to use add domain groups to SharePoint Groups in order for permissions to be granted rather than assigning domain groups permissions directly. Within your environment, you may find granting permissions directly to Active Directory users or groups works best.
To assign permissions to a SharePoint Group:
Figure 14 – Editing permissions for a SharePoint group
3. Check the permission level that you would like to grant to this SharePoint Group.
Figure 15 – Assigning the custom permission level
FEATURE
|
MAXIMUM
LIMIT
|
Number of items in a list or
library
|
50 million
|
Size of an individual file item or
item attachment
|
2 Gigabytes
|
THRESHOLD
OR LIMIT |
DEFAULT
VALUE |
DESCRIPTION
|
List View Threshold
|
5,000
|
Specifies the maximum number of
list or library items that a database operation, such as a query, can process
at one time. Operations that exceed this limit are blocked.
To give you time to make
alternative plans, SharePoint 2010 warns you on the List Settings page when
your list has exceeded 3,000 items. The warning contains a help link to this
topic.
|
Unique permissions limit
|
50,000
|
Specifies the maximum number of
unique permissions allowed for a list or library.
Every time you break the
inheritance of permissions for an item or folder, it is counted as 1 unique
permission toward this limit. If you try to add an item that would lead to
exceeding this limit, you are prevented from doing so.
|
Row size limit
|
6
|
Specifies the maximum number of
table rows internal to the database used for a list or library item. To
accommodate wide lists with many columns, each item is wrapped over several
internal table rows, up to 6 rows and up to a total of 8,000 bytes (excluding
attachments).
For example, if you have a list
with many small columns, one that contains hundreds of Yes/No columns, then
you could exceed this limit, in which case you would not be able to add more
Yes/No columns to the list, but you still may be allowed to add columns of a
different type.
NOTE Farm administrators can only set this limit by using the
object model, not through the user interface.
|
List View Lookup Threshold
|
8
|
Specifies the maximum number of
join operations, such as those based on lookup, Person/Group, or workflow
status columns.
If the query uses more than eight
columns, the operation is blocked. However, it is possible to
programmatically select which columns to use by using maximal view, which can
be set through the object model.
|
List View Threshold size for
auditors and administrators
|
20,000
|
Specifies the maximum number of
list or library items that a database operation, such as a query, can process
at one time when performed by an auditor or administrator with appropriate
permissions. This setting works in conjunction with Allow Object
Model Override.
|
Allow Object Model Override
|
Y
|
Specifies whether or not developers
can perform database operations, such as queries, that request an override of
the List View Threshold to the higher limit specified by the List
View Threshold for auditors and administrators. A farm administrator must
enable an object model override, and then developers with appropriate
permission may then programmatically request that their query use the higher
List View Threshold to take advantage of it.
|
Daily time window
|
None
|
Specifies a time period during
which resource thresholds and limits are ignored. A farm administrator can
configure a time window during "off-peak" hours in 15 minute
increments and up to 24 hours, such as, 6:00 PM to 10:00 PM or 1:30 AM to
5:15 AM.
NOTE A database operation or query started within the daily
time window continues until completion (or failure) even if it doesn't finish
within the specified time window.
|
SUPPORTED
COLUMN TYPES
|
UNSUPPORTED
COLUMN TYPES
|
Single line of text
|
Multiple lines of text
|
Choice (single value)
|
Choice (multi-valued)
|
Number
|
Calculated
|
Currency
|
Hyperlink or Picture
|
Date and Time
|
Custom Columns
|
Lookup (single value)
NOTE Indexing the column in the other list or library does not
improve performance of the lookup operation.
|
Lookup (multi-valued)
|
Person or Group (single value)
|
Person or Group (multi-valued)
|
Yes/No
|
External data
|
Managed Metadata
|
|
TO FILTER
BY:
|
INDEX THE:
|
FOR
EXAMPLE:
|
Recently changed items
|
Modified column
|
To view only items that have
changed in the past week, apply the filterModified is greater
than [Today]-7
|
New items
|
Created column
|
To create a view of only those
items that were added in the past week, apply the filter Created is
greater than [Today]-7
|
My items
|
Created Bycolumn
|
To create a view of only those
items that you added, apply the filter Created By is
equal to [Me]
|
Items due today
|
Due Datecolumn (created by you in a list or library)
|
To create a view of only those
items with a due date of today, apply the filterDue Date is
equal to [Today]
|
Discussion board updates
|
Last Updatedcolumn
|
To create a view of only the
discussions that were updated in the past month, apply the filter Last
Updated is greater than [Today]-30.
|
Archive files in a document library
|
Date Modified
|
To create a view of documents not
changed since the year 2006 (that you then want to archive), apply the filter Date
Modified is less than December 31st 2006
|
Find a subset of financial data
|
Region, Year (as two simple indexes)
|
To create a view of financial data
for the NorthEast region in 2008, apply the filter Region equals
"NE" AND Year equals 2008 because the Region column is
likely to have less values than the Year column
|