Welcome to Scripting Forums Sign in | Join | Help
in Search

ACE Permissions not propogating

Last post 03-15-2007, 4:09 PM by AbqBill. 2 replies.
Sort Posts: Previous Next
  •  03-15-2007, 4:09 PM 524

    ACE Permissions not propogating

    The below snipped is working as intended except that the permissions are not being propogated down to the existing files and folders.  Can anyone tell me what am I doing wrong?

    Sub SetPermissions(strFolder, strTrustee)
      Set objSecurity = CreateObject("ADsSecurityUtility")
      Set objSD = objSecurity.GetSecurityDescriptor(strFolder, _
                        ADS_PATH_FILE, ADS_SD_FORMAT_IID)
      Set objDACL = objSD.DiscretionaryAcl
      Set objNewAce = CreateObject("AccessControlEntry")

      'set file access to directory so Everyone can
      'read existing files in the directory.
      Set objNewAce = CreateObject("AccessControlEntry")
      objNewAce.Trustee = strTrustee
      objNewAce.AccessMask = FILE_FULL_ACCESS
      objNewAce.AceType = ACETYPE_ACCESS_ALLOWED

      'permissions are to be propogated to existing files/folders & inherited by any new files/folders
      objNewAce.AceFlags = CONTAINER_INHERIT_ACE Or OBJECT_INHERIT_ACE
      objDACL.AddAce objNewAce

      'set directory permissions so Everyone can add files
      Set objNewAce2 = CreateObject("AccessControlEntry")
      objNewAce2.Trustee = strTrustee
      objNewAce2.AccessMask = FILE_FULL_ACCESS
      objNewAce2.AceType = ACETYPE_ACCESS_ALLOWED
      objNewAce2.AceFlags = CONTAINER_INHERIT_ACE
      objDACL.AddAce objNewAce2
      objSD.DiscretionaryAcl = objDACL

      objSecurity.SetSecurityDescriptor strFolder, _
                  ADS_PATH_FILE, objSD, ADS_SD_FORMAT_IID
    End Sub

     

  •  04-10-2007, 9:55 AM 631 in reply to 524

    Re: ACE Permissions not propogating

    I still can't get it working but I know why I am having the problem.  The permissions I am trying to change are under Documents and  Settings.  This folder has special  security set on it.  It looks like I need to figure out how to change the SE_DACL_Protected flag.

    Any help will be greatly appriciated!

    jj

  •  04-13-2007, 10:51 AM 658 in reply to 631

    Re: ACE Permissions not propogating

    Hi jcampbel,

    Changing permissions using ActiveX objects in a script, like you're trying to do, is notoriously difficult.

    I recommend SetACL (http://setacl.sourceforge.net/) instead. The syntax is complex (but probably less complex than what you're trying to do), and I've found it to be very useful and reliable.

    HTH,

    Bill

View as RSS news feed in XML
SPONSORED LINKS FEATURED LINKS

Download Data Protection Manager 2007Disaster recovery at a low cost Maximize speed, performance and reliablity of your PCs and servers—automatically!Speed Up Your PC! Try Diskeeper 2008 with InvisiTasking Free Now! Microsoft Learning Snack - Green IT Through Virtualization Many organizations face rising operating costs caused by excessive energy consumption. Virtualization and "Green IT" can help cut these costs. Get the information you need to bring Green IT savings to your business. Order Your Fundamentals CD Today!Register today for your in-depth copy of one of three Fundamental CDs on the following topics – Exchange, SQL, and SharePoint. Microsoft Learning Snack - Virtualization With Windows Server 2008Windows Server 2008 includes virtualization technology that allows many operating systems - including open source - to run on a single host. Come learn the basics of implementing these features. Microsoft Learning Snack - Virtualization BasicsWith virtualization, computing components essentially become on-demand services, freeing each element of a system from the others. This short video explains the needs, benefits, and technologies behind virtualization. Microsoft Learning Snack - Virtualization BasicsWith virtualization, computing components essentially become on-demand services, freeing each element of a system from the others. This short video explains the needs, benefits, and technologies behind virtualization. Microsoft Learning Snack - Virtualization With Windows Server 2008Windows Server 2008 includes virtualization technology that allows many operating systems - including open source - to run on a single host. Come learn the basics of implementing these features. Empower Your Processes with PowerShell 201Paul Robichaux delves deep into PowerShell how-tos in 3 informative lessons, each followed by live Q&A—all on your own computer! Register today! Microsoft Learning Snack - Green IT Through VirtualizationMany organizations face rising operating costs caused by excessive energy consumption. Virtualization and "Green IT" can help cut these costs. Get the information you need to bring Green IT savings to your business. New Release: Windows IT Pro Master CD13 years of content archives, fast answers with advanced search tools, and full access to WindowsITPro.com—order today!

 Copyright © 2008 Penton Media, Inc., All rights reserved. Terms and Use | Privacy Statement | Reprints and Licensing