среда, 2 октября 2013 г.

Включения/выключение анонимного доступа к некоторым объектам

Проверка для листа: 
if ((list.AnonymousPermMask64 & SPBasePermissions.ViewListItems) == SPBasePermissions.ViewListItems)
{ // Anonymous Enabled }

Для отключения:
list.AnonymousPermMask64 = SPBasePermissions.EmptyMask;

Для розширения прав пользователей:

list.AnonymousPermMask64 = SPBasePermissions.AddListItems | BasePermissions.EditListItems | SPBasePermissions.DeleteListItems;
list.Update();

Для включения анонимного доступа к Web (при условии, что анонимный доступ настроен для Web application):web.AnonymousState = SPWeb.WebAnonymousState.On;
web.AnonymousPermMask64 = SPBasePermissions.ViewListItems | SPBasePermissions.ViewVersions | SPBasePermissions.Open | SPBasePermissions.ViewPages;
web.Update();

Для включения для библиотеки или листа:
list.AnonymousState = SPWeb.WebAnonymousState.On;
list.AnonymousPermMask64 = SPBasePermissions.ViewListItems | SPBasePermissions.EditListItems | SPBasePermissions.AddListItems;
list.Update();