Csharp/C Sharp by API/System.Security.Permissions/SecurityAction

Материал из .Net Framework эксперт
Перейти к: навигация, поиск

SecurityAction.Demand

<source lang="csharp"> using System; using System.IO; using System.Security.Permissions; [PrincipalPermissionAttribute(SecurityAction.Demand, Role="Administrators")] class MainClass {

 public static void Main() 
 {
   FileStream fsOut = File.Create(@"c:\\temp\\test.txt");
   StreamWriter sw = new StreamWriter(fsOut);
   sw.WriteLine("str");
   sw.Flush();
   sw.Close();
 }

}

 </source>


SecurityAction.InheritanceDemand

<source lang="csharp">

using System.Security.Permissions; [PublisherIdentityPermission(SecurityAction.InheritanceDemand, CertFile = "YourCertFile.cer")] public class MainClass {

   [PermissionSet(SecurityAction.InheritanceDemand, Name="FullTrust")]
   public void SomeProtectedMethod () 
   {
   }

}

 </source>


SecurityAction.RequestMinimum

<source lang="csharp"> using System; using System.Net; using System.Security.Permissions; [assembly:SecurityPermission(SecurityAction.RequestMinimum, UnmanagedCode = true)] class MainClass {

   public static void Main()
   {        
   }

}

 </source>


SecurityAction.RequestOptional

<source lang="csharp">

using System.Security.Permissions; [assembly:PermissionSet(SecurityAction.RequestOptional, Name = "Internet")] class MainClass {

   public static void Main(){
       
   }

}

 </source>


SecurityAction.RequestRefuse

<source lang="csharp">

using System.Security.Permissions; [assembly:FileIOPermission(SecurityAction.RequestRefuse, Write = @"C:\")] class MainClass{

  public static void Main(){
   
  
  }

}

 </source>