Windows 7 workstation, Launch 'regedit.exe' as 'Administrator'

Find the following registry key:


Right click and select 'Permissions' Change owner to administrators group. Change permissions for administrators group. Grant Full Control. I get an error saying:

unable to save permission, access denied

Why do get access denied when I run as administrator?

migrated from Oct 26 '12 at 6:36

This question came from our site for professional and enthusiast programmers.

  • What is the UAC set for? – cowboydan Oct 25 '12 at 23:52
  • Are you on a domain? If so, the domain security settings may be restricting you. – willell Oct 25 '12 at 23:52
up vote 6 down vote accepted

Administrator does not mean "you get all rights to do anything." Administrator happens to be an account (or in your case, most likely the Local Administrators group) which by default is given some sensitive privileges like SeDebugPrivilege and similar. However, as far as the security subsystem is concerned, it is just an account. (Very much unlike root in Unix-like operating systems) If you aren't the owner of the key in question, and your account does not have WRITE_DAC access to the registry key in question, then you won't be able to change the access control list on the key in question.

Try taking ownership first. By default, the local administrators group has SeTakeOwnershipPrivilege, which allows taking ownership of any object even without the WRITE_OWNER permission being granted by the object's discretionary access control list. Once you are the owner, you should be implicitly granted READ_CONTROL (which allows you to read the security descriptor on the object in question), and WRITE_DAC (which allows you to write to the DACL on the key in question). (Assuming the OWNER_RIGHTS SID isn't in use; that's extremely unlikely)

  • Apologies for awakening a dead question, but how exactly do you "take ownership"? What do you mean by that? – Nic Hartley Jan 5 '15 at 22:15
  • 1
    @newbiedoodle: Make a security descriptor with yourself as the owner (InitializeSecurityDescriptor / SetSecurityDescriptorOwner), and call SetSecurityInfo / SetNamedSecurityInfo or similar with it. – Billy ONeal Jan 5 '15 at 22:19
  • @newbie: Sorry, was responding as if it were a StackOverflow question. :) In the registry editor go to the security editor and click "Advanced" and owner is listed at the top. – Billy ONeal Jan 5 '15 at 22:21
  • @BillyONeal Eh, still got it. It took a little more Googling, but same thing. Thanks again. – Nic Hartley Jan 5 '15 at 22:25

Your Answer


By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.