Ограничить возможность удаления из общих документов на сервере sharepoint - PullRequest
1 голос
/ 04 декабря 2009

Мне нужно ограничить опцию удаления из общих документов на сервере sharepoint в соответствии со следующими критериями.

1) Пользователи могут записывать файлы в папку (которую они не могут удалить), и они не могут удалять файлы от других пользователей и только своих * *

2) Я хочу запретить удаление опции папки и элементов списка других

3) Я хочу, чтобы пользователи могли удалять свои собственные элементы списка?

Как установить уровень разрешений?

пожалуйста, помогите мне, заранее спасибо,

Ответы [ 3 ]

1 голос
/ 04 декабря 2009

Разрешения на уровне элемента по умолчанию применяются только к спискам, а не к библиотекам документов. Создайте список и перейдите в «Настройки»> «Настройки списка» => «Общие настройки»> «Дополнительные настройки» и проверьте, соответствует ли группа «Разрешения на уровне элемента» вашим потребностям. Как только вы решите, вы можете проверить эту функцию , созданную Chakkaradeep, которая обеспечивает функциональность, аналогичную вашей DocLib.

Тогда у вас есть возможность программирования, в общих чертах вам понадобится EventHandler, прикрепленный к вашей библиотеке документов, подробнее по этой ссылке

Ниже приведен непроверенный образец, набранный из памяти на основе статьи MSDN, которую я связал

public override void ItemDeleting(SPItemEventProperties properties)
{
    using(SPSite site = new SPSite(properties.SiteId))
    {
        using(SPWeb web = site.OpenWeb(properties.RelativeWebUrl))
        { 
            SPFieldUserValue user = new SPFieldUserValue(web, web.CurrentUser.ID, web.CurrentUser.LoginName);

            if(properties["Author"] == user)
               return;

            properties.Cancel = true;
            properties.ErrorMessage = "You cannot delete items created by other users";
        }
    }
}
0 голосов
/ 08 декабря 2009

Мне был задан уровень разрешений в следующем порядке,

настройки 1.сайта> расширенные разрешения> уровни разрешений> снимите флажок «Удалить» на уровне разрешений «Дизайн и вклад»

2.В общей библиотеке документов Solution> настройки> настройки библиотеки документов> разрешения для этой библиотеки документов> Я установил разрешение уровня Contribute, но не хочу, чтобы опция удаления была доступна только для всех пользователей и их собственных

Пожалуйста, найдите скриншоты ниже.

текст ссылки

текст ссылки

текст ссылки

текст ссылки

0 голосов
/ 05 декабря 2009

Я Кевин и отвечаю за разрешения в SharePoint

F. Прямо над Aquino - настройка списка, которая запрещает пользователям редактировать / удалять элементы, созданные другими пользователями, доступна только в списках. Это можно сделать с помощью пользовательского кода (как предлагает Ф. Акино выше) или создания библиотеки для каждого пользователя (может быть не очень хорошая идея, если пользователей много).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...