Использование безопасности доступа к коду без GAC

StackOverflow https://stackoverflow.com/questions/297498

Вопрос

Мне интересно, можно ли использовать Code Access Security и пользовательский класс разрешений (и атрибут) без необходимости регистрировать сборку, в которой находится этот атрибут, в GAC.

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

У кого-нибудь есть понимание?

Я пытался достичь той же конечной цели с помощью AOP, используя PostSharp или AspectDNG, но оба из них добавляют дополнительную зависимость к моему продукту, что не идеально.

Это было полезно?

Решение

Я бы сказал, что да (но не могу быть уверен без подробностей о том, что и как вы делаете). У нас есть собственные разрешения / роли с CAS, и GAC не имеет ничего общего с безопасностью. Ultimetly CAS потребуется для доступа к реализации IPrincipal в ваших сборках. Вы просматривали журнал Fusion, чтобы определить, где проверяются ваши сборки?

Другие советы

Спасибо. Кажется, вы просто не можете иметь свои пользовательские атрибуты как дочерние классы, и у вас должен быть только один конструктор, который принимает SecurityAction.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top