Внимание:
Более новые версии .Net и .Net ядра удалили и/или изменили "Безопасность доступа к коду" (CAS), поскольку этот вопрос задавали.
Оригинальный вопрос:
Я изучаю 70-536.NET Framework - Экзамен по разработке приложений, поскольку я программировал. сеть в течение многих лет, это не должно быть сложно!
Однако мне нужно узнать о "безопасности доступа к коду" (CAS), поскольку мне никогда не приходилось его использовать или настраивать, мне было интересно, нашел ли кто-нибудь еще для нее реальное использование?
Просьба привести примеры того, когда вы использовали CAS, и это было частью решения, а не проблемы.
(До сих пор все остальное имело какое-то отношение к задаче, которую я должен был делать в годы программирования .NET)
Связанные вопросы:
- Зачем использовать CAS (безопасность доступа к коду)? - Это очень мало реальных примеров, кроме того, как Microsoft использует его.
- Кто-нибудь действительно использует Code Access Security для защиты своих сборок и/или методов?
- Что такое безопасность доступа к коду в .NET - отлично определяет CAS, но не дает реальных примеров.
- . Безопасность доступа к NET-коду: полезная или просто сложная?
Результаты пока.
-
CAS полезен, когда вы принимаете сторонний код. Например. веб-хостинговая компания может использовать ее, чтобы остановить код клиента Asp.net, нанося ущерб серверам. (Office также использует его, когда .NET используется в качестве замены для VBA)
-
Единственный подробный пример его использования за пределами приложения Microsoft:
Недавний проект, который я сделал, имел что-то аналогично: разрешить пользователю загружать библиотеки и проверить его на производительность ( "кто делает лучший алгоритм" ). Излишне говорить, что нам был необходим CAS есть.
-
CAS, по-видимому, полезно получить сертификацию JITDC, то есть, как это делает министерство обороны США, однако я не знаю, имела ли CAS какую-либо реальную ценность, или если это была просто галочка.
(Если вам нужно обойти хост, который использует CAS, и у вас есть права администратора на них, вы можете просто поместить свои сборки в GAC.)
В ожидании, CAS немного сложнее в .net 4.
По крайней мере, похоже, что новые экзамены Microsoft не будут иметь "базовый" экзамен, который включает CAS. Я не знаю, внесут ли они это в новые экзамены Winforms/WPF.