示例#1
0
        public void GetStandardSandboxTest()
        {
            Url fileUrl = new Url(@"\\server\share\app");
            Url webUrl  = new Url("http://www.microsoft.com");

            PermissionSet nothing       = PermissionSetFactory.GetStandardPermissionSet(StandardPermissionSet.Nothing);
            PermissionSet internet      = PermissionSetFactory.GetStandardPermissionSet(StandardPermissionSet.Internet, webUrl);
            PermissionSet localIntranet = PermissionSetFactory.GetStandardPermissionSet(StandardPermissionSet.LocalIntranet, fileUrl);

            // No zone -> nothing
            Evidence      noZone        = new Evidence();
            PermissionSet noZoneSandbox = PermissionSetFactory.GetStandardSandbox(noZone);

            Assert.IsTrue(nothing.IsSubsetOf(noZoneSandbox) && noZoneSandbox.IsSubsetOf(nothing));

            // Untrusted -> Nothing
            Evidence      untrustedZone    = new Evidence(new object[] { new Zone(SecurityZone.Untrusted), webUrl }, null);
            PermissionSet untrustedSandbox = PermissionSetFactory.GetStandardSandbox(untrustedZone);

            Assert.IsTrue(nothing.IsSubsetOf(untrustedSandbox) && untrustedSandbox.IsSubsetOf(nothing));

            // Internet -> Internet
            Evidence      internetZone    = new Evidence(new object[] { new Zone(SecurityZone.Internet), webUrl }, null);
            PermissionSet internetSandbox = PermissionSetFactory.GetStandardSandbox(internetZone);

            Assert.IsTrue(internet.IsSubsetOf(internetSandbox) && internetSandbox.IsSubsetOf(internet));

            // Trusted -> Internet
            Evidence      trustedZone    = new Evidence(new object[] { new Zone(SecurityZone.Trusted), webUrl }, null);
            PermissionSet trustedSandbox = PermissionSetFactory.GetStandardSandbox(trustedZone);

            Assert.IsTrue(internet.IsSubsetOf(trustedSandbox) && trustedSandbox.IsSubsetOf(internet));

            // Intranet -> LocalIntranet
            Evidence      intranetZone    = new Evidence(new object[] { new Zone(SecurityZone.Intranet), fileUrl }, null);
            PermissionSet intranetSandbox = PermissionSetFactory.GetStandardSandbox(intranetZone);

            Assert.IsTrue(localIntranet.IsSubsetOf(intranetSandbox) && intranetSandbox.IsSubsetOf(localIntranet));

            // MyComputer -> FullTrust
            Evidence      myComputerZone    = new Evidence(new object[] { new Zone(SecurityZone.MyComputer), fileUrl }, null);
            PermissionSet myComputerSandbox = PermissionSetFactory.GetStandardSandbox(myComputerZone);

            Assert.IsTrue(myComputerSandbox.IsUnrestricted());
        }
示例#2
0
 public void GetStandardSandboxNullEvidenceTest()
 {
     PermissionSetFactory.GetStandardSandbox(null);
 }