[Last Call] Learn how to a build a cloud-first strategyRegister Now


AD Group Policy resetting security descriptor for the SharedAccess service

Posted on 2008-10-09
Medium Priority
Last Modified: 2013-06-06
I have about 300 computers in my AD domain.  I'm unable to start the Windows Firewall Service on only my XP 32-bit machines.  The service is set to start automatically and I get this error if I try to manually start the service:

error 0x80004015: The class is configured to run as a security id different from the caller

The security descriptor for the SharedAccess service on my XP 32-bit machines is set to this:


I followed Microsoft's article (http://support.microsoft.com/kb/892199) and manually reset the security descriptor using the following command:


After that I'm able to successfully start the Firewall Service.

However, if I refresh the group policy on the machine (gpupdate /force) the security descriptor is changed back to the first key listed above.

I've tested changing a few things in my default domain group policy, resetting the SD for SharedAccess, and then refreshing the group policy, but each time they key is reverted back to the one that doesn't work.

I have the Administrative Template for the Windows Firewall set to disabled in the domain and standard group policy, but it makes no difference  if I set it to enabled or not configured.

What other areas in Group Policy might be causing this change?  Or is there something else going on?  All of my XP 64-bit machines work fine.

Question by:fourjohn
  • 2
LVL 18

Expert Comment

ID: 22680963

Click Start followed by Run...

Type in regedt32 and hit the enter key.

Locate the key HKEY_Local_MACHINE\software\classes\appid\{ce166e40-1e72-45b9-94c9-3b2050i8f180} and highlight it.

Click File and then Export from the File menu and export a copy of the key.

Make sure the key mentioned in step 3 is still highlighted and delete it.

Restart your computer and the Windows Firewall/Internet Connection Sharing Service should start automatically

Author Comment

ID: 22702815
Ok, deleting the reg key seems to work even after refreshing the group policy.

As a test I built a virtual PC with a fresh copy of XP with Service Pack 3 embedded (not that it really matters).  Before joining the machine to the domain the Windows Firewall service loads correctly and the SharedAccess security ID is D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)

After joining the machine to the domain and the group policy has taken effect (and then rebooting), the SharedAccess security ID changes to D:(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;SY)(A;;CCLCSWLOCRRC;;;IU) and the Windows Firewall service fails to load.  Deleting the regkey and rebooting works.

However, I would like to understand what in my group policy is causing this problem as it clearly looks to be the culprit.  Deleting a regkey via a login script for all 300 networked machines creates another dependency for me and I would instead like to fix my group policy.

What is happening when the regkey is deleted?  I'm just trying to understand what it's doing.

Also, can someone give me any clues as to where in my domain policy that is causing the issue?


Accepted Solution

fourjohn earned 0 total points
ID: 22706213
The problem was in the default domain policy and here is how I corrected it:

Open the Default Domain Policy
Navigate to \Computer Configuration\Windows Settings\Security Settings\System Services
Open Windows Firewall/Internet Connection Sharing (ICS)
Check the box next to "Define this policy setting"
Select the service start mode to Automatic
Click the Edit Security button
      Set Administrators (local) to Full Control
      Set Authenticated Users to Read
      Set Power Users (local) to Read + Start, Stop and Pause
      Set System to Read + Start, Stop and Pause
Refresh the group policy on the machine (gpupdate /force)

The combination of security settings above sets the SharedAccess Security ID to a working value of:


It is also helpful to understand the association between the Access right string Constant, the Access Right Value, and the GUI security permission:

CC     ADS_RIGHT_DS_CREATE_CHILD          Query template
DC     ADS_RIGHT_DS_DELETE_CHILD          Change template
LC      ADS_RIGHT_ACTRL_DS_LIST                  Query status
SW     ADS_RIGHT_DS_SELF                        Enumerate dependents
RP      ADS_RIGHT_DS_READ_PROP                  Start
WP     ADS_RIGHT_DS_WRITE_PROP          Stop
DT      ADS_RIGHT_DS_DELETE_TREE           Pause and continue
LO      ADS_RIGHT_DS_LIST_OBJECT           Interrogate
CR      ADS_RIGHT_DS_CONTROL_ACCESS   User-defined control
SD      DELETE                                               Delete
RC      READ_CONTROL                               Read permissions
WD     WRITE_DAC                                       Change permissions
WO     WRITE_OWNER                               Take Ownership

Deleting the HKEY_Local_MACHINE\software\classes\appid\{ce166e40-1e72-45b9-94c9-3b2050i8f180} regkey is more of a workaround whereas I was asking to fix the problem at the root cause.


Featured Post

Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article provides a convenient collection of links to Microsoft provided Security Patches for operating systems that have reached their End of Life support cycle. Included operating systems covered by this article are Windows XP,  Windows Server…
Microsoft Office 365 is a subscriptions based service which includes services like Exchange Online and Skype for business Online. These services integrate with Microsoft's online version of Active Directory called Azure Active Directory.
This tutorial will walk an individual through the steps necessary to join and promote the first Windows Server 2012 domain controller into an Active Directory environment running on Windows Server 2008. Determine the location of the FSMO roles by lo…
Microsoft Active Directory, the widely used IT infrastructure, is known for its high risk of credential theft. The best way to test your Active Directory’s vulnerabilities to pass-the-ticket, pass-the-hash, privilege escalation, and malware attacks …
Suggested Courses

834 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question