Требования к безопасности доступа к коду SharePoint для вызова Page.TemplateControl.ParseControl - PullRequest
0 голосов
/ 09 февраля 2010

Каковы требования политики CAS для вызова метода Page.TemplateControl.ParseControl, как указано здесь? http://msdn.microsoft.com/en-us/library/kz3ffe28(loband).aspx

В частности, в SharePoint я пытался вызвать метод в среде с минимальным доверием, но получил эту ошибку на странице:

Запрос разрешения типа «System.Security.Permissions.SecurityPermission, mscorlib, версия = 2.0.0.0, Culture = нейтрально, PublicKeyToken = b77a5c561934e089' не удалось.

Однако в среде со средним доверием проблем нет.

Спасибо!

1 Ответ

1 голос
/ 10 февраля 2010

Самый быстрый способ решить эту проблему: 1) Сделайте копию файла среднего доверия 2) Добавьте запись доверия в файл web.config и задайте уровень доверия. 3) Начните удалять записи из скопированного доверительного манифеста, затем обновите страницу, которая выполняет Page.TemplateControl.ParseControl. Когда вы найдете удаление разрешения, которое разрывает страницу, запишите это. 4) Повторяйте процесс, пока не сформулируете минимальное количество разрешений, требуемых этой страницей. 5) Сравните их с вашим собственным файлом доверия, добавьте недостающие права по одному, и тогда он должен просто начать работать.

В целом: SharePoint требует некоторых разрешений, которые заставляют вас усомниться в том, насколько хорош ваш пользовательский файл политики CAS для безопасности системы. Функция файла политик CAS по умолчанию отключена в .Net 4, что указывает на то, что Microsoft отказывается от управления разрешениями безопасности в настоящее время. Мысль SharePoint 2010 требует .Net 3.5, поэтому я не думаю, что эти проблемы политики CAS с SharePoint исчезнут в ближайшее время.

...