CustomAction не отображается в веб-части ListView для SPList, который не наследует разрешения - PullRequest
2 голосов
/ 13 марта 2009

У меня создана библиотека документов SharePoint, и она настроена так, чтобы не наследовать разрешения от Интернета. Я настроил веб-часть ListView для отображения содержимого библиотеки документов, и она отлично работает.

Я создал пользователя, который имеет разрешение Contribute для библиотеки документов, но может читать только остальную часть сайта.

Я создал настраиваемое действие с атрибутом Rights, установленным в «AddListItems».

Когда я вхожу в систему как пользователь, я вижу стандартные параметры загрузки и множественной загрузки, которые не входят в комплект поставки SharePoint, но я не вижу своего настраиваемого действия Моя загрузка.

Когда я вхожу в систему с пользователем, который входит в группу «Участники сайта», я вижу свой выбор в меню загрузки.

Что мне здесь не хватает? Он ведет себя так, как будто разрешение «AddListItems» связано с сайтом, а не со списком, но загрузка по умолчанию работает так, как я ожидал!

<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
  <!-- Document Library Toolbar Upload Menu Dropdown -->
  <CustomAction Id="myUploadOption"
    GroupId="UploadMenu"
    ImageUrl="/_layouts/Images/myUploadIcon.jpg"
    Location="Microsoft.SharePoint.StandardMenu"
    Sequence="1000"
    Title="My Upload"
    Rights="AddListItems"
    Description="Assign permissions and meta data values while uploading multiple documents">
    <UrlAction Url="/_layouts/FileUploaderApp/MyFileUpload.aspx"/>
  </CustomAction>
</Elements>

Ответы [ 2 ]

2 голосов
/ 20 марта 2009

Мне так и не удалось заставить работать так, как описано в моем вопросе.

Чтобы решить мою проблему, я вместо этого создал пользовательский элемент управления для пункта меню («Моя загрузка»), и этот элемент управления выполняет проверку безопасности, используя разрешения для библиотеки документов.

0 голосов
/ 13 марта 2009

Что произойдет, если вы удалите атрибут прав? Меню «Выгрузка» скрыто по своему собственному разрешению или оно отображается, поскольку существует ваше настраиваемое действие?

...