Это не ново, этот же атрибут был добавлен в предыдущих версиях Visual Studio. Они просто не изменили шаблон элемента. Это атрибут CAS, который в основном говорит: «Мне нужны как минимум минимальные разрешения для запуска неуправляемого кода».
Что уместно, это разрешение всегда необходимо для приложения C ++ / CLI. Даже если вы пишете чистый код, для инициализации CRT все равно требуется разрешение неуправляемого кода. Разрешение применимо только в сценариях с песочницей, когда код не выполняется с полным доверием, например, в веб-браузере или в настройке безопасного плагина. CAS действительно устарела, но не была удалена. Не совсем уверен, что происходит в .NET 4.0 в эти дни. Это было чем-то вроде того, что CAS устарел, это было неэффективно, потому что это было так трудно понять обычному Джо, как я.
Блог Шона Фаркаса - лучший источник информации об этом. Он гуру безопасности .NET в Microsoft.
Версия на C # почти такая же:
using System.Security.Permissions;
...
[assembly: SecurityPermission(SecurityAction.RequestMinimum, UnmanagedCode = true)]
Не знаю, зачем вам это нужно, достаточно сборки C ++ / CLI, запрашивающей это.