// (c) 2006 Richard Grimes // www.grimes.demon.co.uk using System; using System.Threading; using System.Security.Principal; using System.Security.Permissions; class App { static void Main() { AppDomain.CurrentDomain.SetPrincipalPolicy(PrincipalPolicy.WindowsPrincipal); Plugin plugin = new Plugin(); plugin.Initialize(); try { Console.WriteLine("called OnlyAdministrators"); OnlyAdministrators(); } catch (Exception e) { Console.WriteLine("failed " + e.Message); } } [PrincipalPermission(SecurityAction.Demand, Role=@"BUILTIN\Administrators")] static void OnlyAdministrators() { Console.WriteLine("OnlyAdministrators called"); } }