Skip to content

Est. 2011ยทMicrosoft Partner 7033487ยทDelivery under 3 minยทSupport 7 days a week

Your vault is empty.

License Error Event ID 4105

Event ID 4105: per-user RDS CALs are issued but not recorded in Active Directory

11 min read Updated October 5, 2026 Windows Server: RDS, Hyper-V & Clustering

Fix it now

Event 4105 says the licence server cannot update the licence attributes for a user in Active Directory. Sessions keep working, because per-user CALs are tracked rather than enforced, which is exactly why this gets ignored. What you lose is the ability to prove how many CALs you are consuming.

  1. Confirm the licence server is a domain member. Per-user tracking is supported only in domain-joined scenarios because the record is stored on the user object in AD DS.
  2. In Active Directory Users and Computers, open the Builtin container and add the licence server’s computer account to the Terminal Server License Servers group.
  3. If the licence server is installed on a domain controller, add the Network Service account to that group as well – Microsoft requires both.
  4. Restart the licence server so its computer token picks up the new group membership.
  5. In Remote Desktop Licensing Manager, right-click the server, choose Review Configuration and publish it in Active Directory Domain Services, then generate a per-user CAL report from the Reports node.

Per-user CALs cannot be tracked in a workgroup, and cannot be revoked. Device CALs are the option if tracking has to work without Active Directory.

If the report shows issued CALs again you can stop here. If not, the next section covers the events that actually accompany this one.

Why it happens

A Per User RDS CAL is not held on a device. It is recorded as an attribute on the user’s account in Active Directory Domain Services, and that is the whole mechanism. The licence server issues the CAL, then writes to the user object. Event 4105 is the second half failing: “The Remote Desktop license server cannot update the license attributes for user <name> in the Active Directory Domain <domain>.”

Nothing breaks when this happens, which is the problem. Per User CALs are tracked and reported, not enforced at connection time, so users keep working while the record of what they consumed is never written. A deployment can run for years issuing more CALs than the organisation owns, with a reporting console that shows a comfortable number because it only counts what it managed to write down.

Microsoft’s requirements for tracking to work are short and specific. It is supported only in domain-joined scenarios, because the information is stored in AD DS. The computer account of the licence server must be a member of the Terminal Server License Servers group in AD DS. And if the licence server is installed on a domain controller, the Network Service account must also be a member of that group. That third condition is the one most often missed, because a licence server on a domain controller looks like the simplest possible deployment.

Two of the events people expect to find alongside 4105 belong somewhere else entirely. Event 4103 is “The certificate cannot be installed on the Remote Desktop license server”, usually a problem connecting to the Microsoft Clearinghouse over HTTPS, and its remedy is to reactivate the server. Event 4104 is “The remote procedure call (RPC) port is not listening”, which is a licence server availability fault. Neither has anything to do with writing attributes to user objects. The events that do are 4107 – the licence server failed to query AD DS for user information – and 74, 76, 8195 and 8196, which record the computer account being added to or removed from the Terminal Server License Servers group.

The licence server is not in the Terminal Server License Servers group

You have this one if Event 4105 for every user, and reports that show far fewer issued CALs than you have users.

  1. Open Active Directory Users and Computers and find the Terminal Server License Servers group in the Builtin container.
  2. Add the licence server’s computer account as a member.
  3. Restart the licence server; group membership is read into the computer’s token at boot.
  4. Look for Event 74, which records the account having been added successfully.

Event 8195 records a failure to add the account during RD Licensing installation, and Event 8196 records success. If 8195 is in the log, this was never done.

The licence server is on a domain controller

You have this one if The computer account is in the group, tracking still fails, and the licence server role sits on a DC.

  1. Add the Network Service account to the Terminal Server License Servers group as well as the computer account.
  2. Restart the licence server.
  3. Regenerate a per-user CAL report and confirm issuance is now recorded.

Microsoft states both memberships are required in this configuration. One without the other does not work.

The licence server cannot query the directory

You have this one if Event 4107 alongside 4105: the licence server failed to query AD DS for user information.

  1. Confirm LDAP connectivity from the licence server to a domain controller on TCP and UDP 389.
  2. Confirm DNS resolution of the domain from the licence server.
  3. Check that the users being issued CALs are in the same forest as the licence server; cross-forest per-user tracking is not supported.

The licence server is not domain-joined

You have this one if A workgroup licence server, Per User mode, and no tracking at all.

  1. Join the licence server to the domain, which is the only supported configuration for per-user tracking.
  2. If that is not possible, move the deployment to Per Device CALs, which can be tracked regardless of Active Directory membership.
  3. Change the licensing mode on the Session Hosts to match whatever you end up with.

The server is not published in Active Directory

You have this one if Tracking works intermittently, or Session Hosts in other domains never appear in reports.

  1. In Remote Desktop Licensing Manager, right-click the server and choose Review Configuration.
  2. Publish the server in Active Directory Domain Services from that dialog.
  3. Look for Event 83, which records registration as a service connection point, or Event 85, which records the failure and names network connectivity to AD DS as the cause.

Full reference

Which event means what

Event Source What it says
4105 TerminalServices-Licensing The licence server cannot update the licence attributes for a named user in a named Active Directory domain
4103 TerminalServices-Licensing The certificate cannot be installed on the licence server, possibly a problem reaching the Microsoft Clearinghouse over HTTPS. Reactivate the server
4104 TerminalServices-Licensing The remote procedure call (RPC) port is not listening
4106 TerminalServices-Licensing RDS CAL reporting – the event raised as per-user CAL reports are generated

The events that really do accompany 4105

Event What it records
74 The computer account or Network Service account has been added to the Terminal Server License Servers group
76 The computer account has been removed from that group
4107 The licence server failed to query Active Directory Domain Services for user information
4108 The licence server failed to generate the report
4143 A CAL was successfully issued to a named user in a named domain
4145 A CAL for a named user in a named domain has been renewed
8195 The computer account could not be added to the group during RD Licensing installation
8196 The computer account was successfully added during installation

Read 8195 and 8196 first on a server you did not build. They tell you whether the group membership was ever created, which is the difference between something that broke and something that was never set up.

Getting an honest number

  1. Fix the group membership and restart the licence server.
  2. Let a full working week pass so that users actually connect and CALs are issued and recorded.
  3. Open the Reports node in Remote Desktop Licensing Manager and generate a per-user CAL usage report.
  4. Compare the tracked user count against the User CALs you hold.
  5. Repeat monthly. The number only means something if it is being written continuously.

Why this is a compliance question rather than an outage

Per User CALs can be over-allocated. Microsoft says so plainly in its comparison of the two CAL types: a Per Device pool cannot be over-allocated, and a Per User pool can be, in breach of the agreement. The technical enforcement is deliberately weaker than the licensing obligation, which means the only thing standing between an organisation and an unnoticed shortfall is the report – and a broken 4105 makes that report say what you want to hear.

Per User versus Per Device where tracking matters

Per User Per Device
Tracking mechanism An attribute on the AD user object Held on the device
Works in a workgroup No Yes
Cross-forest tracking Not supported Not applicable
Revocation Not possible Up to 20 per cent of installed CALs
Enforcement Tracked and reported, not enforced Enforced at issuance

If the deployment genuinely cannot support Active Directory tracking – a workgroup licence server, or users in a forest the licence server cannot query – Device CALs are the supported answer rather than a compromise. They are tracked regardless of Active Directory membership, and they are the only type you can reclaim.

When a licence is the actual fix

This is a compliance signal rather than an outage, and that is precisely what makes it worth acting on. Per User CALs are tracked but not enforced, so a deployment can run for years consuming more CALs than it owns without a single user being refused – and a broken tracking mechanism makes the usage report agree with you. Fix the group membership first, let a full week of connections build a real record, then generate a per-user CAL usage report and compare the tracked user count against the User CALs you actually hold. Whatever gap that shows is the real shortfall. Before ordering, check two versions: the CALs must be the same version as your newest Session Host or later, and the licence server must run the same Windows Server version as the CALs or later. Send Arco that report along with your host and licence server versions and we will size the purchase from the evidence rather than from a round number.

Every code this article covers

Code What it points at Source
Event ID 4105 “The Remote Desktop license server cannot update the license attributes for user <name> in the Active Directory Domain <domain>.” This is the per-user CAL tracking failure Microsoft Learn
Event ID 4103 “The certificate cannot be installed on the Remote Desktop license server. This issue might be due to a problem connecting to the Microsoft Clearinghouse over HTTPS.” An activation and certificate event, not a per-user tracking one Microsoft Learn
Event ID 4104 “The remote procedure call (RPC) port is not listening.” A licence server availability event, not part of the per-user tracking range Microsoft Learn
Event ID 4106 “RDS CAL reporting” – the event raised while per-user CAL reports are generated on the licence server Microsoft Learn

Confirm the fix worked

  1. The licence server’s computer account is a member of the Terminal Server License Servers group in AD DS, and Event 74 records it.
  2. Where the licence server is on a domain controller, the Network Service account is a member of the same group.
  3. Event 4105 stops appearing after users reconnect.
  4. A per-user CAL usage report from the Reports node lists the users who have connected.
  5. Events 4143 and 4145 appear as CALs are issued and renewed, which is the positive confirmation that writing to AD DS is working.

Questions people ask about this

Are users affected while this is broken?

No, and that is the danger. Per User CALs are tracked and reported rather than enforced at connection time, so sessions carry on working while the record of what was consumed is never written.

Is Event 4103 part of this problem?

No. Event 4103 is a certificate installation failure on the licence server, usually a problem reaching the Microsoft Clearinghouse over HTTPS, and its remedy is to reactivate the server. Event 4104 is the RPC port not listening. Neither is about writing attributes to user objects.

Our licence server is a domain controller. Anything different?

Yes, and it is the most commonly missed requirement. As well as the computer account, the Network Service account must be a member of the Terminal Server License Servers group. Microsoft states both are needed in that configuration.

Can per-user CALs be tracked in a workgroup?

No. Microsoft states per-user CAL tracking and reporting is supported only in domain-joined scenarios, because the issuance record is stored on the user account in AD DS. Device CALs are the option where Active Directory is not available.

Can I reclaim per-user CALs from people who have left?

Not by revoking them – Per User CALs cannot be revoked at all. They renew on their own cycle, and a user who stops connecting stops renewing. That is why the report matters: it is the only view you get of what is actually in use.

Related error codes

Was this article helpful?

Your feedback helps us improve our documentation.

Related articles

License Error Event ID 1074 and 6008: separating an expired Server evaluation from a crash Free Fix RD Web Access broken: HTTP 500.100, HTTP 404.17 and Event ID 1309 explained License Error 0x80338012 in Windows Admin Center: the WinRM client cannot connect to the node Free Fix Event ID 16010 and 20148: Hyper-V storage operations fail and VMs go missing
โ† Back to Knowledge Base