Licensing Server activation failed due to an error

LS_activation_failed_due_to_an_error_2000 (Rule)

Knowledge Base article:

Summary

An error occurred during an attempt to activate Terminal Server Licensing. This error can be caused by a corrupt crypt32.dll, or by corrupted certificates on the license server.

This rule covers the following event IDs: 4, 15, 16, 17

Other Information:

The event IDs described in this topic apply to Windows® 2000 Server and Windows Server™ 2000 operating systems.

Causes

Possible causes include:

Event 4: Terminal Server Licensing is unable to create certificate context. The certificates on the Terminal Server license server are corrupted.

Event 15: Terminal Server Licensing is unable to open the certificate store. The certificates on the Terminal Server license server are corrupted.

Event 16: Terminal Server Licensing cannot add the certificate to the certificate store. The certificates on the Terminal Server license server are corrupted, or Enforced Licensing is not defined.

Event 17: Terminal Server Licensing cannot save the certificate store. The certificates on the Terminal Server license server are corrupted.

Resolutions

Possible resolutions include:

Events 4, 15, 16, 17:

(Microsoft® Windows Server™ 2000 operating systems only) Verify that crypt32.dll has installed correctly. Check Event Viewer for errors related to crypt32.dll. If errors are found, reinstall License Server and contact the Microsoft Clearinghouse to reissue license packs. Access the Microsoft Clearinghouse by using the Terminal Server Licensing administrative tool.

Delete the MSLicensing key on the client computer:

Log on to the client computer.

Caution: Incorrectly editing the registry may severely damage your system. Before making changes to the registry, you should back up any valued data on the computer.

Open Registry Editor.

Locate and then click the following registry subkey:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSLicensing

Back up the registry file before editing it using the Export command. If you are running a Windows 2000 Server operating system, click Export on the Registry Editor File menu. Or, if you are running a Windows 2000 Server operating system, click Export Registry File on the Registry menu.

In the Filename box, type mslicensingbackup, and then click Save.

To restore this registry key in the future, double-click the Mslicensingbackup.reg file that you saved in this step.

On the Edit menu, click Delete, and then click Yes to confirm the deletion of the MSLicensing registry subkey.

Close Registry Editor, and then restart the computer.

The Microsoft® Windows® operating system rebuilds the missing registry key when you restart your computer.

Delete X509 certificate registry keys on the terminal server:

Open Registry Editor.

Caution: Incorrectly editing the registry may severely damage your system. Before making changes to the registry, you should back up any valued data on the computer.

Locate and then click the following registry subkey:

HKLM\SYSTEM\CurrentControlSet\Services\TermServices\Parameters

Back up the registry file before editing it using the Export command. If you are running a Windows 2000 Server operating system, click Export on the Registry Editor File menu. Or, if you are running a Windows 2000 Server operating system, click Export Registry File on the Registry menu.

Type exported-parameters in the File name box, and then click Save.

If you have to restore this registry subkey in the future, double-click the Exported-parameters.reg file that you saved in this step.

Under the Parameters registry subkey, right-click each of the following values, click Delete, and then click Yes to confirm the deletion:

Certificate

X509 Certificate

X509 Certificate ID

Close Registry Editor, and then restart the server.

Reactivate Terminal Server Licensing by using the Telephone connection method in the Licensing Wizard.

Restart the server.

If you activate Terminal Server Licensing by using the Telephone option, Terminal Server Licensing uses a different form of certificate.

Ensure the Microsoft Clearinghouse is issuing certificates that are generated by a valid signing/hashing algorithm.

Event 16, if Enforced Licensing is undefined: Enforce licensing and use default cryptography providers.

Element properties:

TargetMicrosoft.Windows.Server.2000.TerminalServicesLicensingServerRole
CategoryEventCollection
EnabledTrue
Event SourceTermServLicensing
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
RemotableTrue
Alert Message
Licensing Server activation failed due to an error
{0}
Event LogSystem
CommentMom2005ID='{1423B968-1A30-4F39-97E7-C037A22D45F7}'

Member Modules:

ID Module Type TypeId RunAs 
Event_Data_Source DataSource Microsoft.Windows.EventProvider Default
GenerateAlert WriteAction System.Health.GenerateAlert Default

Source Code:

<Rule ID="LS_activation_failed_due_to_an_error_2000" Target="Microsoft.Windows.Server.2000.TerminalServicesLicensingServerRole" Enabled="onEssentialMonitoring" Remotable="true" Comment="Mom2005ID='{1423B968-1A30-4F39-97E7-C037A22D45F7}'">
<Category>EventCollection</Category>
<DataSources>
<DataSource ID="Event_Data_Source" TypeID="Windows!Microsoft.Windows.EventProvider">
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<LogName>System</LogName>
<Expression>
<And>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery>EventNumber</XPathQuery>
</ValueExpression>
<Operator>MatchesMOM2005RegularExpression</Operator>
<Pattern>^(-1072627708|-1072627697|-1072627696|-1072627695)$</Pattern>
</RegExExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>TermServLicensing</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="SystemHealth!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>2</Severity>
<AlertOwner>$Data/PublisherName$</AlertOwner>
<AlertMessageId>$MPElement[Name="LS_activation_failed_due_to_an_error_2000.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue/>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>