Как отследить событие разрешения папки? - PullRequest
2 голосов
/ 27 апреля 2010

Это о разрешениях на уровне папок. У нас есть библиотека документов с наследованием разрыва. При добавлении папок, подпапок через код, мы снова закодировали наследование разрыва. Теперь требуется, чтобы при добавлении пользователя / группы в список разрешений подпапок нам нужно было отслеживать это событие. Какое событие sharepoint мы используем и на каком уровне. Пожалуйста, помогите.

Ответы [ 3 ]

1 голос
/ 27 апреля 2010

Вы можете получить эту информацию из журнала аудита, если аудит включен в Списке / на сайте.

MOSS поставляется с некоторыми базовыми аудиторскими отчетами. Посмотрите этот ресурс в Office Online для более подробной информации.

Кроме того, взгляните на наш SharePoint Audit Suite . Это дешево и делает именно то, что вам нужно.

Я работал над продуктом, поэтому я явно предвзят::)

0 голосов
/ 30 апреля 2010

Я нашел решение для моей проблемы (хотя и немного компрометирующее). Я хотел добиться этого только в одной библиотеке документов. Я объясню процесс здесь.

Страница разрешений всегда "user.aspx", а страница добавления новых разрешений - "aclinv.aspx".

Я реализовал httpmodule слушатель URL для "aclinv.aspx". Поэтому, когда эта страница запрашивается, я передаю ей свою страницу пользовательских разрешений. Интересно, что URL в sharepoint являются ключом к каждой операции. В качестве идентификатора в нем указывалось имя моей папки в url, имя библиотеки документов и идентификатор.

Страница пользовательских разрешений в точности похожа на «aclinv.aspx», за исключением того факта, что приложение прослушивает эту страницу. Когда пользователь выбран с соответствующими разрешениями на этой странице, приложение отслеживает идентификатор пользователя, выбранное разрешение, идентификатор папки, идентификатор библиотеки документов через URL-адрес, и поток остается тем же.

Вот и все, работа сделана. Со всеми этими значениями приложение может делать все, что хочет, для нового запроса.

Большое спасибо всем за ваше руководство. Это действительно очень помогло.

PS. Если есть лучший способ сделать это, я был бы рад узнать.

Sushant

0 голосов
/ 27 апреля 2010

По сути, это не может быть сделано. Вам нужно убедиться, что пользователь / процесс, который устанавливает эти разрешения, делает это с помощью кода, написанного вами, чтобы вы могли вызывать свой собственный код оттуда.

См. Событие SharePoint при изменении разрешений ListItems? .

...