Ejemplo n.º 1
0
        //</SNIPPET8>

        //<SNIPPET9>
        public void AddDivMessage()
        {
            Uri    currentUri = new Uri(webBrowser1.Url.ToString());
            String hostName   = null;

            // Ensure we have a host name, and not just an IP, against which to test.
            if (!(currentUri.HostNameType == UriHostNameType.Dns))
            {
                DnsPermission permit = new DnsPermission(System.Security.Permissions.PermissionState.Unrestricted);
                permit.Assert();

                IPHostEntry hostEntry = System.Net.Dns.GetHostEntry(currentUri.Host);
                hostName = hostEntry.HostName;
            }
            else
            {
                hostName = currentUri.Host;
            }

            if (!hostName.Contains("adatum.com"))
            {
                AddTopPageMessage("You are viewing a web site other than ADatum.com. " +
                                  "Please exercise caution, and ensure your Web surfing complies with all " +
                                  "corporate regulations as laid out in the company handbook.");
            }
        }
Ejemplo n.º 2
0
        internal CDNSPermDialog(DnsPermission perm)
        {
            this.Text = CResourceStore.GetString("Dnsperm:PermName");

            m_PermControls = new CDNSPermControls(perm, this);
            Init();
        } // CDNSPermDialog
Ejemplo n.º 3
0
        private void Button_Click_6(object sender, RoutedEventArgs e)
        {
            int       port   = 8080;
            string    ip     = "127.0.0.1";
            TcpClient client = new TcpClient(ip, port);

            string[] hostNames = { "www.microsoft.com", "www.apple.com",
                                   "www.google.com",    "www.ibm.com",    "cisco.netacad.net",
                                   "www.oracle.com",    "www.nokia.com",  "www.hp.com",      "www.dell.com",
                                   "www.samsung.com",   "www.toshiba.com","www.siemens.com",
                                   "www.amazon.com",    "www.sony.com",   "www.canon.com",   "www.alcatellucent.com",
                                   "www.acer.com",      "www.motorola.com" };
            ;
            IPAddress[]   ipAddresses;
            var           permissionState = System.Security.Permissions.PermissionState.Unrestricted;
            DnsPermission dnsPermission   = new DnsPermission(permissionState);

            dnsPermission.PermitOnly();
            for (var index = 0; index < hostNames.Length; index++)
            {
                string hN = hostNames[index];
                ipAddresses     = Dns.GetHostAddresses(hN);
                ipAddress.Text += hN + " => \n" + ipAddresses.ToString() + "\n";
            }
        }
Ejemplo n.º 4
0
// </Snippet1>
    // Create a DnsPermission instance that is the intersection of current
    // DnsPermission instance and the specified DnsPermission instance.
    private void MyIntersection()
    {
        DnsPermission permission = (DnsPermission)dnsPermission1.Intersect(dnsPermission2);

        // Print the attributes and the values of the intersection instance of
        // DnsPermission.
        PrintKeysAndValues(permission.ToXml().Attributes);
    }
Ejemplo n.º 5
0
        public bool GetIsDnsAvailable()
        {
            PermissionSet permissionSet = new PermissionSet(PermissionState.None);
            DnsPermission perm          = new DnsPermission(PermissionState.Unrestricted);

            permissionSet.AddPermission(perm);
            return(permissionSet.IsSubsetOf(AppDomain.CurrentDomain.PermissionSet));
        }
Ejemplo n.º 6
0
        public void PermissionState_Bad()
        {
            PermissionState ps = (PermissionState)Int32.MinValue;
            DnsPermission   dp = new DnsPermission(ps);

            // no ArgumentException here
            Assert.IsFalse(dp.IsUnrestricted());
        }
Ejemplo n.º 7
0
    // <Snippet1>
    private void MyUnion()
    {
        // Create a DnsPermission instance that is the union of the current DnsPermission
        // instance and the specified DnsPermission instance.
        DnsPermission permission = (DnsPermission)dnsPermission1.Union(dnsPermission2);

        // Print the attributes and the values of the union instance of DnsPermission.
        PrintKeysAndValues(permission.ToXml().Attributes);
    }
Ejemplo n.º 8
0
        public void FromXml_WrongVersion()
        {
            DnsPermission   dp = new DnsPermission(PermissionState.None);
            SecurityElement se = dp.ToXml();

            se.Attributes.Remove("version");
            se.Attributes.Add("version", "2");
            dp.FromXml(se);
        }
Ejemplo n.º 9
0
        public void FromXml_NoVersion()
        {
            DnsPermission   dp = new DnsPermission(PermissionState.None);
            SecurityElement se = dp.ToXml();

            SecurityElement w = new SecurityElement(se.Tag);

            w.AddAttribute("class", se.Attribute("class"));
            dp.FromXml(w);
        }
Ejemplo n.º 10
0
        public void FromXml_WrongTagCase()
        {
            DnsPermission   dp = new DnsPermission(PermissionState.None);
            SecurityElement se = dp.ToXml();

            se.Tag = "IPERMISSION";             // instead of IPermission
            dp.FromXml(se);
            // note: normally IPermission classes (in corlib) DO care about the
            // IPermission tag
        }
Ejemplo n.º 11
0
        public void FromXml_WrongTag()
        {
            DnsPermission   dp = new DnsPermission(PermissionState.None);
            SecurityElement se = dp.ToXml();

            se.Tag = "IMono";
            dp.FromXml(se);
            // note: normally IPermission classes (in corlib) DO care about the
            // IPermission tag
        }
Ejemplo n.º 12
0
        internal CDNSPermControls(IPermission perm, Object oParent) : base(perm, oParent)
        {
            // If they don't have a permission for this permission set, we will
            // feed our property page a 'none' permission state.

            if (perm == null)
            {
                m_perm = new DnsPermission(PermissionState.None);
            }
        }// CDNSPermControls
Ejemplo n.º 13
0
        public void Default()
        {
            DnsPermissionAttribute a = new DnsPermissionAttribute(SecurityAction.Assert);

            Assert.AreEqual(a.ToString(), a.TypeId.ToString(), "TypeId");
            Assert.IsFalse(a.Unrestricted, "Unrestricted");

            DnsPermission perm = (DnsPermission)a.CreatePermission();

            Assert.IsFalse(a.Unrestricted, "Unrestricted");
        }
Ejemplo n.º 14
0
 private void Subset(DnsPermission Permission1)
 {
     if (permission.IsSubsetOf(Permission1))
     {
         Console.WriteLine("Current 'DnsPermission' instance is a subset of specified 'DnsPermission' instance.");
     }
     else
     {
         Console.WriteLine("Current 'DnsPermission' instance is not a subset of specified 'DnsPermission' instance.");
     }
 }
Ejemplo n.º 15
0
// <Snippet1>
    public void ConstructDnsPermission()
    {
        try
        {
            // Create a DnsPermission instance.
            DnsPermission permission = new DnsPermission(PermissionState.None);
            // Create a SecurityElement instance by calling the ToXml method on the
            // DnsPermission instance.
            // Print its attributes, which hold the  XML encoding of the DnsPermission
            // instance.
            Console.WriteLine("Attributes and Values of 'DnsPermission' instance :");
            PrintKeysAndValues(permission.ToXml().Attributes);

            // Create a SecurityElement instance.
            SecurityElement securityElementObj = new SecurityElement("IPermission");
            // Add attributes and values of the SecurityElement instance corresponding to
            // the permission instance.
            securityElementObj.AddAttribute("version", "1");
            securityElementObj.AddAttribute("Unrestricted", "true");
            securityElementObj.AddAttribute("class", "System.Net.DnsPermission");

            // Reconstruct a DnsPermission instance from an XML encoding.
            DnsPermission permission1 = new DnsPermission(PermissionState.None);
            permission1.FromXml(securityElementObj);

            // Print the attributes and values of the constructed DnsPermission object.
            Console.WriteLine("After reconstruction Attributes and Values of new DnsPermission instance :");
            PrintKeysAndValues(permission1.ToXml().Attributes);
        }
        catch (NullReferenceException e)
        {
            Console.WriteLine("NullReferenceException caught!!!");
            Console.WriteLine("Source : " + e.Source);
            Console.WriteLine("Message : " + e.Message);
        }
        catch (SecurityException e)
        {
            Console.WriteLine("SecurityException caught!!!");
            Console.WriteLine("Source : " + e.Source);
            Console.WriteLine("Message : " + e.Message);
        }
        catch (ArgumentNullException e)
        {
            Console.WriteLine("ArgumentNullException caught!!!");
            Console.WriteLine("Source : " + e.Source);
            Console.WriteLine("Message : " + e.Message);
        }
        catch (Exception e)
        {
            Console.WriteLine("Exception caught!!!");
            Console.WriteLine("Source : " + e.Source);
            Console.WriteLine("Message : " + e.Message);
        }
    }
        public static void Main(string[] args)
        {
            DnsPermission permission = new DnsPermission(System.Security.Permissions.PermissionState.Unrestricted);

            permission.Demand();
            //创建一个SecurityElement对象来控制DnsPermission实例
            SecurityElement securityElementObj = permission.ToXml();

            Console.WriteLine("Tag,Attributes and Values of 'DnsPermission' instance :");
            //输出属性名称和值
            PrintKeysAndValues(securityElementObj.Attributes);
        }
Ejemplo n.º 17
0
        public void FromXml_NoClass()
        {
            DnsPermission   dp = new DnsPermission(PermissionState.None);
            SecurityElement se = dp.ToXml();

            SecurityElement w = new SecurityElement(se.Tag);

            w.AddAttribute("version", se.Attribute("version"));
            dp.FromXml(w);
            // note: normally IPermission classes (in corlib) DO NOT care about
            // attribute "class" name presence in the XML
        }
Ejemplo n.º 18
0
 internal DnsClient(
     IPEndPoint serverEndPoint,
     RequestBuilder requestBuilder,
     ResolverFactory resolverFactory,
     ResponseParser responseParser)
 {
     _dnsPermissions  = new DnsPermission(PermissionState.Unrestricted);
     _serverEndPoint  = serverEndPoint;
     _requestBuilder  = requestBuilder;
     _resolverFactory = resolverFactory;
     _responseParser  = responseParser;
 }
Ejemplo n.º 19
0
        public void Unrestricted()
        {
            DnsPermissionAttribute a = new DnsPermissionAttribute(SecurityAction.Assert);

            a.Unrestricted = true;
            DnsPermission dp = (DnsPermission)a.CreatePermission();

            Assert.IsTrue(dp.IsUnrestricted(), "IsUnrestricted");

            a.Unrestricted = false;
            dp             = (DnsPermission)a.CreatePermission();
            Assert.IsFalse(dp.IsUnrestricted(), "!IsUnrestricted");
        }
Ejemplo n.º 20
0
        public void FromXml_WrongClass()
        {
            DnsPermission   dp = new DnsPermission(PermissionState.None);
            SecurityElement se = dp.ToXml();

            SecurityElement w = new SecurityElement(se.Tag);

            w.AddAttribute("class", "Wrong" + se.Attribute("class"));
            w.AddAttribute("version", se.Attribute("version"));
            dp.FromXml(w);
            // doesn't care of the class name at that stage
            // anyway the class has already be created so...
        }
Ejemplo n.º 21
0
        public DnsQueryRequest()
        {
            _dnsPermissions = new DnsPermission(PermissionState.Unrestricted);

            // Construct the class with some defaults
            _transactionId = (ushort)r.Next();
            _flags         = 0;
            _queryResponse = QueryResponse.Query;
            this._opCode   = OpCode.QUERY;
            // Recursion Desired
            this._nsFlags   = NsFlags.RD;
            this._questions = 1;
        }
Ejemplo n.º 22
0
        public void IsSubset()
        {
            DnsPermission dpn = new DnsPermission(PermissionState.None);
            DnsPermission dpu = new DnsPermission(PermissionState.Unrestricted);

            Assert.IsTrue(dpn.IsSubsetOf(null), "None IsSubsetOf null");
            Assert.IsFalse(dpu.IsSubsetOf(null), "Unrestricted IsSubsetOf null");

            Assert.IsTrue(dpn.IsSubsetOf(dpn), "None IsSubsetOf None");
            Assert.IsTrue(dpu.IsSubsetOf(dpu), "Unrestricted IsSubsetOf Unrestricted");

            Assert.IsTrue(dpn.IsSubsetOf(dpu), "None IsSubsetOf Unrestricted");
            Assert.IsFalse(dpu.IsSubsetOf(dpn), "Unrestricted IsSubsetOf None");
        }
Ejemplo n.º 23
0
        }// PutValuesinPage

        internal override IPermission GetCurrentPermission()
        {
            DnsPermission perm;

            if (m_radUnrestricted.Checked == true)
            {
                perm = new DnsPermission(PermissionState.Unrestricted);
            }
            else
            {
                perm = new DnsPermission(PermissionState.None);
            }

            return(perm);
        } // GetCurrentPermissions
Ejemplo n.º 24
0
// <Snippet1>
    public void useDns()
    {
        // Create a DnsPermission instance.
        DnsPermission permission = new DnsPermission(PermissionState.Unrestricted);

        // Check for permission.
        permission.Demand();
        // Create a SecurityElement object to hold XML encoding of the DnsPermission instance.
        SecurityElement securityElementObj = permission.ToXml();

        Console.WriteLine("Tag, Attributes and Values of 'DnsPermission' instance :");
        Console.WriteLine("\n\tTag :" + securityElementObj.Tag);
        // Print the attributes and values.
        PrintKeysAndValues(securityElementObj.Attributes);
    }
Ejemplo n.º 25
0
// <Snippet1>
    public void useDns()
    {
        // Create a DnsPermission instance.
        permission = new DnsPermission(PermissionState.Unrestricted);
        DnsPermission dnsPermission1 = new DnsPermission(PermissionState.None);

        // Check for permission.
        permission.Demand();
        dnsPermission1.Demand();
        // Print the attributes and values.
        Console.WriteLine("Attributes and Values of 'DnsPermission' instance :");
        PrintKeysAndValues(permission.ToXml().Attributes);
        Console.WriteLine("Attributes and Values of specified 'DnsPermission' instance :");
        PrintKeysAndValues(dnsPermission1.ToXml().Attributes);
        Subset(dnsPermission1);
    }
Ejemplo n.º 26
0
// <Snippet1>
    public void UseDns()
    {
        // Create a DnsPermission instance.
        DnsPermission myPermission = new DnsPermission(PermissionState.Unrestricted);

        // Check for permission.
        myPermission.Demand();
        // Create an identical copy of the above 'DnsPermission' object.
        DnsPermission myPermissionCopy = (DnsPermission)myPermission.Copy();

        Console.WriteLine("Attributes and Values of 'DnsPermission' instance :");
        // Print the attributes and values.
        PrintKeysAndValues(myPermission.ToXml().Attributes);
        Console.WriteLine("Attribute and values of copied instance :");
        PrintKeysAndValues(myPermissionCopy.ToXml().Attributes);
    }
Ejemplo n.º 27
0
// <Snippet2>
    public void useDns()
    {
        // Create a DnsPermission instance.
        dnsPermission1 = new DnsPermission(PermissionState.Unrestricted);
        dnsPermission2 = new DnsPermission(PermissionState.None);
        // Check for permission.
        dnsPermission1.Demand();
        dnsPermission2.Demand();
        Console.WriteLine("Attributes and Values of first DnsPermission instance :");
        PrintKeysAndValues(dnsPermission1.ToXml().Attributes);
        Console.WriteLine("Attributes and Values of second DnsPermission instance :");
        PrintKeysAndValues(dnsPermission2.ToXml().Attributes);
        Console.WriteLine("Union of both instances : ");
        MyUnion();
        Console.WriteLine("Intersection of both instances : ");
        MyIntersection();
    }
Ejemplo n.º 28
0
        public void Intersect()
        {
            DnsPermission dpn = new DnsPermission(PermissionState.None);

            Assert.IsNull(dpn.Intersect(null), "None N null");
            Assert.IsNull(dpn.Intersect(dpn), "None N None");

            DnsPermission dpu = new DnsPermission(PermissionState.Unrestricted);

            Assert.IsNull(dpu.Intersect(null), "Unrestricted N null");

            DnsPermission result = (DnsPermission)dpu.Intersect(dpu);

            Assert.IsTrue(result.IsUnrestricted(), "Unrestricted N Unrestricted");

            Assert.IsNull(dpn.Intersect(dpu), "None N Unrestricted");
            Assert.IsNull(dpu.Intersect(dpn), "Unrestricted N None");
        }
Ejemplo n.º 29
0
        public void PermissionState_None()
        {
            PermissionState ps = PermissionState.None;
            DnsPermission   dp = new DnsPermission(ps);

            Assert.IsFalse(dp.IsUnrestricted(), "IsUnrestricted");

            SecurityElement se = dp.ToXml();

            // only class and version are present
            Assert.AreEqual(2, se.Attributes.Count, "Xml-Attributes#");
            Assert.IsNull(se.Children, "Xml-Children");

            DnsPermission copy = (DnsPermission)dp.Copy();

            Assert.IsFalse(Object.ReferenceEquals(dp, copy), "ReferenceEquals");
            Assert.AreEqual(dp.IsUnrestricted(), copy.IsUnrestricted(), "IsUnrestricted ()");
        }
Ejemplo n.º 30
0
        public void PermissionState_Unrestricted()
        {
            PermissionState ps = PermissionState.Unrestricted;
            DnsPermission   dp = new DnsPermission(ps);

            Assert.IsTrue(dp.IsUnrestricted(), "IsUnrestricted");

            SecurityElement se = dp.ToXml();

            Assert.AreEqual("true", se.Attribute("Unrestricted"), "Xml-Unrestricted");
            Assert.AreEqual(3, se.Attributes.Count, "Xml-Attributes#");
            Assert.IsNull(se.Children, "Xml-Children");

            DnsPermission copy = (DnsPermission)dp.Copy();

            Assert.IsFalse(Object.ReferenceEquals(dp, copy), "ReferenceEquals");
            Assert.AreEqual(dp.IsUnrestricted(), copy.IsUnrestricted(), "IsUnrestricted ()");
        }