Я создал действие рабочего процесса, которое дает создателю элемента определенного списка полный контроль над элементом и устанавливает для всех остальных доступ только для чтения (разрешение)
кто-то сказал мне, что при таком подходе (если у меня много пользователей) производительность резко упадет
это верно ?!!
если да, то какое лучшее решение для создания списка, в котором любой может создавать новые элементы, но после создания элемента только создатель может его редактировать, а остальные пользователи могут только его читать





Да, вы можете решить эту проблему с помощью рабочих процессов, но это может быть немного неуклюже и может замедлить работу вашего сервера.
Лучше использовать «Настройки списка»> «Дополнительные настройки»> «Разрешения на уровне элемента».
Эта функция недоступна для библиотек документов и форм.
Снижение производительности произойдет при использовании больших списков ACL для каждого элемента списка. Просто убедитесь, что в разрешениях на уровне элементов в основном указано минимальное количество записей. Например:
Итак, может ли Sharepoint предложить эти разрешения по умолчанию OOB? Не то, чтобы я в курсе. Единственный вариант, который я могу придумать, - это использование рабочих процессов, которые динамически устанавливают эти разрешения при загрузке документа.
Если вы хотите избежать снижения производительности, просто убедитесь, что вы никогда не отображаете (или не выполняете итерацию с использованием объектной модели) более 2000 таких элементов в списке расширенных разрешений. ЭТО определенно вызовет серьезные проблемы с производительностью.
Это правда, что список, содержащий большое количество элементов с примененными настраиваемыми разрешениями, замедлит ваш сервер. Это документ в официальном документе Microsoft Планируйте границы программного обеспечения.
Рекомендуемое / магическое число - 2000. Дальнейшее движение ничего не сломает, но мог может привести к проблемам с производительностью.
Принятый ответ на самом деле не отвечает на вопрос правильно ...
Вы не должны использовать рабочий процесс для этого, если вы хотите, чтобы люди могли редактировать элементы, которые они создают, и читать только те, которые они не делали, используйте «Список-> Настройки-> Расширенные настройки-> Разрешения на уровне элемента», и это является, доступный для библиотек документов (поскольку они наследуются от SPLIST), просто не отображается в их «Расширенных настройках» в пользовательском интерфейсе. Вы можете установить для свойства ReadSecurity значение 1, а для свойства WriteSecurity - 2 в библиотеке документов.
http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.splist.writesecurity.aspx
дополнительные настройки -> разрешения на уровне элемента - хороший выбор, если я хочу получить специальный доступ к создателю элемента, но что, если я хочу передать его кому-то другому (менеджеру, владельцу элемента)