You hit 0X00000514 and you're probably annoyed because nothing you tried worked. I get it. This error shows up when a program tries to do something that requires a specific Windows privilege, but your account or the service running it doesn't have that privilege. The message "Not all privileges or groups referenced are assigned to the caller" sounds vague, but the fix is usually straightforward.
The Quick Fix: Run the app as Administrator
Before you dig into settings, try the simplest thing that solves this for most people.
- Right-click the program or shortcut that's throwing the error.
- Select Run as administrator from the context menu.
- If the program opens without the error, you've confirmed the issue is missing privileges.
After you click Run as administrator, you'll see a User Account Control pop-up. Click Yes to allow it. If the program works now, you've fixed it for this session, but you'll need to make it permanent so you don't have to right-click every time.
Make it always run as administrator
- Right-click the shortcut or executable file and choose Properties.
- Go to the Compatibility tab.
- Check the box that says Run this program as an administrator.
- Click Apply and then OK.
When you click Apply, you might not see any visible change, but the setting is saved. Next time you launch the program, Windows will ask for permission and then run it with full privileges.
Why This Works
Windows assigns a set of privileges to every process when it starts. Some of those privileges, like SeShutdownPrivilege or SeDebugPrivilege, are normally reserved for administrators. When a program runs without elevation, it gets a limited token. That token doesn't include the privileges the program needs to perform certain actions—like accessing hardware, changing system files, or managing services. The program then calls a Windows function that checks for a privilege, fails, and throws 0X00000514.
Running as administrator gives the process a full token with all the privileges your account holds. That's the fastest way to get past this error when it's a one-off annoyance.
If That Doesn't Work: Check Group Policy
Sometimes running as admin isn't enough. The error might come from a service or a scheduled task that runs under a different account, and that account lacks the required privilege. Here's the real fix for that case.
- Press Win + R, type
gpedit.msc, and press Enter. (If you have Windows 10 or 11 Home, you'll need to skip this and try the registry method below.) - In the Local Group Policy Editor, go to Computer Configuration → Windows Settings → Security Settings → Local Policies → User Rights Assignment.
- Look for the privilege mentioned in the error message if there is one. Often it's Replace a process level token or Adjust memory quotas for a process.
- Double-click that policy, click Add User or Group, and type in the account that's running the program or service (like
NETWORK SERVICEorLOCAL SERVICE). - Click OK, then Apply.
After you click Apply, you'll see the user appear in the list. You might need to restart the service or the computer for the change to take effect.
When You Don't Have gpedit.msc (Windows Home)
Windows Home doesn't include the Group Policy Editor. You can still fix the privilege issue using the registry, but it's trickier. The privileges are stored under HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SeCreateTokenPrivilege and similar named values. However, editing these manually is risky and error-prone. Instead, I recommend you use a free tool called LGPO.exe from Microsoft to apply the same policy settings. That's an advanced move, so only attempt it if you're comfortable with command-line tools.
Less Common Variations
Error when starting a Windows Service
If you see this error in the Event Viewer when a service fails to start, the service account doesn't have the Log on as a service right. Here's how to grant it:
- Open Local Security Policy by typing
secpol.mscin the Run box. - Go to Local Policies → User Rights Assignment.
- Double-click Log on as a service.
- Click Add User or Group, enter the service account, and click OK.
After applying this, restart the service and check if it starts.
Error when accessing a network share
Sometimes you'll get 0X00000514 when trying to access a shared folder on another PC. That's not a local privilege issue—it's the remote server denying your account the necessary rights. The fix is to ask the admin of that machine to grant you the SeNetworkLogonRight on the remote computer, or verify your account has been added to the share permissions.
Error in a scheduled task
Scheduled tasks often run with limited privileges unless you check the Run with highest privileges box. Open Task Scheduler, right-click your task, go to Properties, and on the General tab, check that box. Then click OK and test the task manually.
Preventing This Error in the Future
The best way to avoid 0X00000514 is to not run programs as administrator all the time. That's a bad habit that can weaken security. Instead, grant the specific privilege that the program needs, or run the program under a dedicated account that has exactly the rights it requires. If you're a developer, make sure your code requests the minimum privileges it needs and handles the error gracefully when they're not granted.
Also, keep your Windows up to date. Some privilege-related bugs get fixed in cumulative updates, so you might stop seeing this error after a monthly update.
If you've gone through all these steps and the error still shows up, check the event log for the exact process that's failing. The log will give you the process name and maybe the specific privilege it asked for. That makes the fix obvious.