SetPathList() public method

public SetPathList ( RegistryPermissionAccess access, string pathList ) : void
access RegistryPermissionAccess
pathList string
return void
        public override IPermission CreatePermission()
        {
            if (base.m_unrestricted)
            {
                return(new RegistryPermission(PermissionState.Unrestricted));
            }
            RegistryPermission permission = new RegistryPermission(PermissionState.None);

            if (this.m_read != null)
            {
                permission.SetPathList(RegistryPermissionAccess.Read, this.m_read);
            }
            if (this.m_write != null)
            {
                permission.SetPathList(RegistryPermissionAccess.Write, this.m_write);
            }
            if (this.m_create != null)
            {
                permission.SetPathList(RegistryPermissionAccess.Create, this.m_create);
            }
            if (this.m_viewAcl != null)
            {
                permission.SetPathList(AccessControlActions.View, this.m_viewAcl);
            }
            if (this.m_changeAcl != null)
            {
                permission.SetPathList(AccessControlActions.Change, this.m_changeAcl);
            }
            return(permission);
        }
Esempio n. 2
0
        public override IPermission CreatePermission()
        {
            if (m_unrestricted)
            {
                return(new RegistryPermission(PermissionState.Unrestricted));
            }
            else
            {
                RegistryPermission perm = new RegistryPermission(PermissionState.None);
                if (m_read != null)
                {
                    perm.SetPathList(RegistryPermissionAccess.Read, m_read);
                }
                if (m_write != null)
                {
                    perm.SetPathList(RegistryPermissionAccess.Write, m_write);
                }
                if (m_create != null)
                {
                    perm.SetPathList(RegistryPermissionAccess.Create, m_create);
                }
#if FEATURE_MACL
                if (m_viewAcl != null)
                {
                    perm.SetPathList(AccessControlActions.View, m_viewAcl);
                }
                if (m_changeAcl != null)
                {
                    perm.SetPathList(AccessControlActions.Change, m_changeAcl);
                }
#endif
                return(perm);
            }
        }
        /// <summary>Creates and returns an identical copy of the current permission.</summary>
        /// <returns>A copy of the current permission.</returns>
        public override IPermission Copy()
        {
            RegistryPermission registryPermission = new RegistryPermission(this._state);
            string             pathList           = this.GetPathList(RegistryPermissionAccess.Create);

            if (pathList != null)
            {
                registryPermission.SetPathList(RegistryPermissionAccess.Create, pathList);
            }
            pathList = this.GetPathList(RegistryPermissionAccess.Read);
            if (pathList != null)
            {
                registryPermission.SetPathList(RegistryPermissionAccess.Read, pathList);
            }
            pathList = this.GetPathList(RegistryPermissionAccess.Write);
            if (pathList != null)
            {
                registryPermission.SetPathList(RegistryPermissionAccess.Write, pathList);
            }
            return(registryPermission);
        }
Esempio n. 4
0
 public override IPermission CreatePermission()
 {
     if (m_unrestricted)
     {
         return(new RegistryPermission(PermissionState.Unrestricted));
     }
     else
     {
         RegistryPermission perm = new RegistryPermission(PermissionState.None);
         if (m_read != null)
         {
             perm.SetPathList(RegistryPermissionAccess.Read, m_read);
         }
         if (m_write != null)
         {
             perm.SetPathList(RegistryPermissionAccess.Write, m_write);
         }
         if (m_create != null)
         {
             perm.SetPathList(RegistryPermissionAccess.Create, m_create);
         }
         return(perm);
     }
 }
Esempio n. 5
0
        public override IPermission Copy()
        {
            RegistryPermission rp = new RegistryPermission(_state);

            string path = GetPathList(RegistryPermissionAccess.Create);

            if (path != null)
            {
                rp.SetPathList(RegistryPermissionAccess.Create, path);
            }

            path = GetPathList(RegistryPermissionAccess.Read);
            if (path != null)
            {
                rp.SetPathList(RegistryPermissionAccess.Read, path);
            }

            path = GetPathList(RegistryPermissionAccess.Write);
            if (path != null)
            {
                rp.SetPathList(RegistryPermissionAccess.Write, path);
            }
            return(rp);
        }
Esempio n. 6
0
        public static bool RunSecurityDemands()
        {
            FileIOPermission fPer = new FileIOPermission(PermissionState.None);
            fPer.AllLocalFiles = FileIOPermissionAccess.AllAccess;
            fPer.AllFiles = FileIOPermissionAccess.AllAccess;
            try
            {
                fPer.Demand();
            }
            catch (SecurityException s)
            {
                Common.DebugHelper.WriteLine("File IO Permission Error: {0}", s.Message);
                return false;
            }

            System.Security.Permissions.FileDialogPermission fdPer = new FileDialogPermission(FileDialogPermissionAccess.None);
            fdPer.Access = FileDialogPermissionAccess.OpenSave;
            try
            {
                fdPer.Demand();
            }
            catch (System.Security.SecurityException s)
            {
                Common.DebugHelper.WriteLine("File Dialog Persmission Error: {0}", s.Message);
                return false;
            }

            System.Security.Permissions.RegistryPermission rPer = new RegistryPermission(PermissionState.None);
            rPer.SetPathList(RegistryPermissionAccess.AllAccess, "HKEY_LOCAL_MACHINE");
            try
            {
                fPer.Demand();
            }
            catch (System.Security.SecurityException s)
            {
                Common.DebugHelper.WriteLine("Registry Access Permission Error: {0}", s.Message);
                return false;
            }

            return true;
        }
        public override IPermission CreatePermission()
        {
            if (m_unrestricted)
            {
                return new RegistryPermission( PermissionState.Unrestricted );
            }
            else
            {
                RegistryPermission perm = new RegistryPermission(PermissionState.None);
                if (m_read != null)
                    perm.SetPathList( RegistryPermissionAccess.Read, m_read );
                if (m_write != null)
                    perm.SetPathList( RegistryPermissionAccess.Write, m_write );
                if (m_create != null)
                    perm.SetPathList( RegistryPermissionAccess.Create, m_create );
#if FEATURE_MACL
                if (m_viewAcl != null)
                    perm.SetPathList( AccessControlActions.View, m_viewAcl );
                if (m_changeAcl != null)
                    perm.SetPathList( AccessControlActions.Change, m_changeAcl );
#endif
                return perm;
            }
        }
Esempio n. 8
0
		public override IPermission Copy () 
		{
			RegistryPermission rp = new RegistryPermission (_state);

			string path = GetPathList (RegistryPermissionAccess.Create);
			if (path != null)
				rp.SetPathList (RegistryPermissionAccess.Create, path);

			path = GetPathList (RegistryPermissionAccess.Read);
			if (path != null)
				rp.SetPathList (RegistryPermissionAccess.Read, path);

			path = GetPathList (RegistryPermissionAccess.Write);
			if (path != null)
				rp.SetPathList (RegistryPermissionAccess.Write, path);
			return rp;
		}
Esempio n. 9
0
		public void SetPathList ()
		{
			RegistryPermission ep = new RegistryPermission (PermissionState.None);
			ep.SetPathList (RegistryPermissionAccess.AllAccess, keyLocalMachine);
			// LAMESPEC NoAccess do not remove the TMP from AllAccess
			ep.SetPathList (RegistryPermissionAccess.NoAccess, keyLocalMachine);
			ep.SetPathList (RegistryPermissionAccess.Read, keyCurrentUser);
			ep.SetPathList (RegistryPermissionAccess.Write, keyCurrentUser);
			SecurityElement se = ep.ToXml ();
			Assert.AreEqual (keyCurrentUser, se.Attribute ("Read"), "SetPathList-ToXml-Read");
			Assert.AreEqual (keyCurrentUser, se.Attribute ("Write"), "SetPathList-ToXml-Write");
		}
Esempio n. 10
0
 public override IPermission CreatePermission()
 {
     if (m_unrestricted)
     {
         return new RegistryPermission( PermissionState.Unrestricted );
     }
     else
     {
         RegistryPermission perm = new RegistryPermission(PermissionState.None);
         if (m_read != null)
             perm.SetPathList( RegistryPermissionAccess.Read, m_read );
         if (m_write != null)
             perm.SetPathList( RegistryPermissionAccess.Write, m_write );
         if (m_create != null)
             perm.SetPathList( RegistryPermissionAccess.Create, m_create );
         return perm;
     }
 }