public static void Main(string[] args) { //<Snippet2> Console.WriteLine("Creating a permission with Flags = OpenStore."); StorePermission sp = new StorePermission(StorePermissionFlags.OpenStore); //</Snippet2> //Create a new X509 store named teststore from the local certificate store. //You must put in a valid path to a certificate in the following constructor. X509Certificate2 certificate = new X509Certificate2("c:\\certificates\\*****.cer"); // Deny the permission to open a store. sp.Deny(); // The following code results in an exception due to an attempt to open a store. AddToStore(certificate); // Remove the deny for opening a store. CodeAccessPermission.RevertDeny(); // The following code results in an exception due to an attempt to add a certificate. // The exception is thrown due to a StorePermissionAttribute on the method denying AddToStore permission. AddToStore(certificate); // The current code is not affected by the attribute in the previously called method, so the following // intructions execute without an exception. X509Store store = new X509Store("teststore", StoreLocation.CurrentUser); store.Open(OpenFlags.ReadWrite); store.Add(certificate); // Demonstrate the behavior of the class members. ShowMembers(); Console.WriteLine("Press the Enter key to exit."); Console.ReadKey(); return; }