Ранее я использовал атрибут Unrestricted классическим способом:
Следующий код является запросом, утверждающим, что сборка должна иметь неограниченный доступ к файловой системе, чтобы функционировать.
using System.Security.Permissions;
// Indicates that FileIOPermission is required to run this assembly.
[assembly:FileIOPermission(SecurityAction.RequestMinimum, Unrestricted=true)]
public class FileManager
{
// Insert code to add and delete files.
}
в этом контексте Unrestricted = false будет означать, что доступ к файлу необязательно для выполнения метода.
, в отличие от «противоположного», которое требует, чтобы для выполнения метода доступ к файлу не предоставлялся.
В большинстве случаев, когда SecurityAction (Unrestricted = true || false) может создаваться динамически, первый случай обычно имеет больше смысла.