RDS 2019 CALs not requested / issued

Huskin1 96 Reputation points
2021-04-29T07:55:10.85+00:00

Dear

Running a Citrix 1912 CU1 environment based on Windows Server 2019 for both infrastructure components as well as the VDAs. We have a RDS Licensing server that has a bunch of Windows Server 2019 RDS Per User CALs. Our VDAs have a GPO which points them to the correct RDS Licensing server but no licenses are being issued to the users.

On the VDAs the RD Licensing Diagnoser not reporting any problems. It shows the RDS Licensing server as available and with the correct number of available licenses. The grace period popup does not show up anymore and connecting users are not kicked from the server after a certain period. All seems to be working properly.

I double-checked with Powershell and the GPO applied properly.

PS C:\Users\xxx> (gwmi -namespace "Root/CIMV2/TerminalServices" Win32_TerminalServiceSetting).getSpecifiedLicenseServerList()

__GENUS : 2
__CLASS : __PARAMETERS
__SUPERCLASS :
__DYNASTY : __PARAMETERS
__RELPATH :
__PROPERTY_COUNT : 2
__DERIVATION : {}
__SERVER :
__NAMESPACE :
__PATH :
ReturnValue : 0
SpecifiedLSList : {10.171.100.14}
PSComputerName :

PS C:\Users\xxx> gwmi -namespace "Root/CIMV2/TerminalServices" Win32_TerminalServiceSetting | findstr Licensing
LicensingDescription : This policy requires a license to be issued to each user that connects to the Remote Desktop Session Hos
LicensingName : Per User
LicensingType : 4
PolicySourceLicensingType : 1
PossibleLicensingTypes : 12

In the Event Viewer of the VDAs I can see no Errors or Warnings in Microsoft-Windows-TerminalServices-RemoteConnectionManager

On the RD Licensing Server it's showing all green. The server is part of the Terminal Server License Servers security group and the RDS (Volume) licenses have been added and are visible in the RD Licensing Manager console.

In the Event Viewer of the RD Licensing Server under Microsoft-Windows-TerminalServices-Licensing/ there is only one single event for both /Admin and /Operational, which is "Event ID 87: The licenses have been successfully installed onto the Remote Desktop license server". So the lack of any other events seems to me that the VDAs are not requesting a license to the RD Licensing Server when the user logs on to the VDA.

The VDAs do not need to cross a firewall to get to the RD Licensing Server and we have disabled the firewall (for testing purposes) on the RD Licensing Server to make sure all traffic is accepted.

Even though everything seems to be working as expected and none of the consoles or events are reporting a problem, no licenses are being issues which I find disturbing.

We are also running VDAs with Windows Server 2016 in the same Citrix site for which we have a separate RD Licensing Server (OS Windows Server 2016) with Windows Server 2016 (Volume) Per User RDS CALs. This server is configured in the same way and is actually effortlessly issuing licenses.

I'm pretty sure the fault is with the VDAs but I cannot find any errors related to the topic on the machines. Does anyone know how to dig deeper?

Windows for business | Windows Client for IT Pros | User experience | Remote desktop services and terminal services
Windows for business | Windows Server | User experience | Other
0 comments No comments
{count} votes

Accepted answer
  1. Huskin1 96 Reputation points
    2021-06-04T14:40:23.15+00:00

    I'd like to add that the solution to my problem was changing my Citrix WEM cache refresh startup script to:

    net stop "Netlogon"
    net stop "WemAgentSvc"
    net stop "WemLogonSvc"

    DEL /F /Q "C:\Program Files (x86)\Citrix\Workspace Environment Management Agent\Local Databases\LocalAgentCache.db"
    DEL /F /Q "C:\Program Files (x86)\Citrix\Workspace Environment Management Agent\Local Databases\LocalAgentDatabase.db"

    net start "WemAgentSvc"
    net start "Netlogon"
    net start "WemLogonSvc"

    timeout 10

    cd "C:\Program Files (x86)\Citrix\Workspace Environment Management Agent"
    AgentCacheUtility.exe -refreshcache


15 additional answers

Sort by: Most helpful
  1. Hushkin 1 Reputation point
    2021-05-10T15:34:19.68+00:00

    anonymous user I have put the solution in production AS-IS. The licenses are not being issued but no session disconnects are occurring, as would be the case if the licensing was improperly configured or if there were no licenses available.

    As explained in my initial post, it's working without as it should, I just don't see the available licenses going down. My fear is that in the background the session host servers are still taking into account the grace period, which will expire in 90-odd days. The Remote Desktop Licensing Diagnoser utility is still not reporting any problems, connection to the Remote Desktop Licensing servers is up. All is green.

    I have read your post but I have read nothing new unfortunately. We have the appropriate licenses for both Citrix and RDS CALs and they have been implemented in the same way as on our Windows Server 2016 session host servers, on which the issuing process is working properly.

    I have deployed a new VM on which I have activated the Remote Desktop Licensing service and I have added the licenses. The same behavior occurs.

    I guess I will know in 3 months when the grace period expires. In the meantime I'll try to troubleshoot the problem further.

    0 comments No comments

  2. Hushkin 1 Reputation point
    2021-05-10T16:02:01.063+00:00

    Furthermore, I have found some posts that claim that if the RDS CALs are installed on a Per User bases, the Remote Desktop Licensing server does not track the licensing usage and that it is based on the honor system.

    https://www.reddit.com/r/sysadmin/comments/bipvm7/rd_per_user_cals_issues_more_than_total_installed/
    https://social.technet.microsoft.com/Forums/Lync/en-US/0fea833f-da67-4dad-a1b2-94868b96a7f0/rds-cals-not-being-issued-always-zero?forum=winserverTS

    I find this claim very odd as my Windows Server 2016 RDS licenses are also on a Per User bases.

    I have generate reports of both my Windows Server 2016 and 2019 RD Licensing Manager servers (I have changed usernames, domain and hostname for privacy reasons)

    Windows Server 2016 RD Licensing Manager:

    CAL Usage Report
    RD License Server:,"RDLicensingW2K16"
    Report Date:,"Monday, May 10, 2021 5:56:21 PM"

    CAL Version,CAL Type,Installed CALs,CALs in Use,CAL Availability
    Windows Server 2016,RDS Per User CAL,400,322,Limited

    Successful Per User License Issuance Detail

    Issued to User,CAL Version,CAL Type,Expires On
    contoso.com\user1,Windows Server 2016,RDS Per User CAL,"Friday, May 14, 2021 7:53:05 AM"
    contoso.com\user2,Windows Server 2016,RDS Per User CAL,"Friday, May 14, 2021 8:28:01 AM"
    contoso.com\user3,Windows Server 2016,RDS Per User CAL,"Friday, May 14, 2021 8:32:39 AM"
    ....
    contoso.com\userX,Windows Server 2016,RDS Per User CAL,"Friday, July 9, 2021 8:29:11 AM"

    No Per User License Issuance has failed

    No Per Device License has been issued

    Windows Server 2019 RD Licensing Manager:

    CAL Usage Report
    RD License Server:,"RDLicensingW2K19"
    Report Date:,"Monday, May 10, 2021 5:45:04 PM"

    CAL Version,CAL Type,Installed CALs,CALs in Use,CAL Availability
    Windows Server 2019,RDS Per User CAL,400,0,Available

    No Per User License has been Issued

    No Per User License Issuance has failed

    No Per Device License has been issued

    I created a test user and granted this user access to our Citrix environment. On my first connection, normally it should issue a license to the user but neither on the RD Licensing Manager nor in the AD attributes I see the license being issued, which is very concerning.

    95297-image.png

    0 comments No comments

  3. Anonymous
    2021-05-11T01:33:36.137+00:00

    Hi, I am doing some research for current issue, thanks for your waiting.

    0 comments No comments

  4. Anonymous
    2021-05-12T09:08:56.82+00:00

    Hi, Let's check the following information for further research. 1.RD Licensing server is domain member, also is built-in group Terminal Server License Servers member. 2.Two RD Licensing GPO has been deployed on RD Session Host server. Please run the command GPRESULT to confirm it. Navigate to Computer Configuration - Administrative Templates - Windows Components - Remote Desktop Services - Remote Desktop Session Host – Licensing Double click Use the specified Remote Desktop license servers, set to Enabled and enter the names of the license servers then click OK Double click Set the Remote Desktop licensing mode. Note: If the FQDN of the license server doesn’t work, replace it with the IP. ![95846-gp1.png][1] Set the Remote Desktop licensing mode ![95948-gp2.png][2] 3.Typically, if the connection is successful using a domain account, but there is no CAL key value written in the attribute, it may be because the port is not opened. Please refer this link: https://social.technet.microsoft.com/wiki/contents/articles/16164.rds-2012-which-ports-are-used-during-deployment.aspx#Remote_Desktop_Licensing_Server 4.Considering that the CALs has not been successfully issued, you can try to delete CAL databased and re-install CAL pack. To rebuild the RD Licensing database automatically - On the license server, open Remote Desktop Licensing Manager. To open Remote Desktop Licensing Manager, click Start, point to Administrative Tools, point to Remote Desktop Services, and then click Remote Desktop Licensing Manager. - Verify that the connection method for the Remote Desktop license server is set to Automatic connection (recommended) by right-clicking the license server on which you want to rebuild the RD Licensing database, and then clicking Properties. On the Connection Method tab, change the connection method if necessary, and then click OK. - Select the license server whose RD Licensing database you want to rebuild, and then on the Action menu, click Manage RDS CALs. - On the Welcome to the Manage RDS CALs Wizard page, click Next. - On the Action Selection page, click Rebuild the license server database. - Select a reason for rebuilding the RD Licensing database, and then click Next. - On the Confirm Deletion of RDS CALs page, select the Confirm deletion of RDS CALs currently installed on this license server check box, and then click Next. - After the contents of the RD Licensing database have been deleted, on the Reinstalling RDS CALs page, click Next. Note: you can only reinstall one set (or pack) of RDS CALs at a time. After you have reinstalled the first set of RDS CALs, the wizard asks you if you want to reinstall another set of RDS CALs. You are asked this after each set of RDS CALs is reinstalled. - On the License Program page, select the appropriate program through which you purchased your RDS CALs, and then click Next. - The License Program that you selected on the previous page in the wizard determines what information you need to provide on this page. In most cases, you must provide either a license code or an agreement number. Consult the documentation provided when you purchased your RDS CALs. - After you have entered the required information, click Next. - On the Product Version and License Type page, select the appropriate product version, license type, and quantity of RDS CALs for your environment based on your RDS CAL purchase agreement, and then click Next. - The Microsoft Clearinghouse is automatically contacted and processes your request. The RDS CALs are then automatically reinstalled onto the license server. - To reinstall another set of RDS CALs, on the Reinstalling Additional RDS CALs page, click Continue reinstalling additional RDS CALs, and then click Next. Repeat steps 9 through 13. To finish rebuilding the RD Licensing database, click Finish rebuilding the RD Licensing database, click Next, and then click Finish. 5.After performing the above steps, if the problem persists, you could view event from RD Session Host and RD Licensing. If the answer is helpful, please click "Accept Answer" and upvote it. Best regards [1]: /api/attachments/95846-gp1.png?platform=QnA [2]: /api/attachments/95949-gp2.png?platform=QnA

    0 comments No comments

Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.