Ошибки лицензирования 1003 и 1004


Информация в этой статье применяется к:


Описание проблемы

При подключении к MetaFrame на сервере Windows 2000 могут возникать следующие ошибки:

Event ID: 1003
Source: TermService
Type: Information

The terminal service client has provided an invalid license.

или

Event ID: 1004
Source: TermService
Description: Unable to acquire a license for user name, domain name.

Возможные причины

Проблема 1

При подключении посредством Citrix ICA Client после загрузки клиента RDP Web Client, клиент RDP может подключаться без проблем.

Если не используются клиенты на базе Windows 2000 Professional или Windows XP Professional, то перед установлением соединения ICA должно быть подтверждено существование двух лицензий Windows - обычная CAL и Terminal Services CAL. Ошибки соединения могут быть связаны с недостаточными правами доступа к ключам реестра. Если подключение не удается, посмотрите в Microsoft Terminal Services License manager, перечислена ли в нем рабочая станция. Если нет, то это не связано с Citrix. Обратитесь в техподдержку Microsoft. Убедитесь, что терминальные лицензии активированы. Подробнее см. документ "Лицензирование терминальных служб".

Журнал событий не фиксирует устройство клиента, которое дало неверную лицензию. Недостаточные права к группе пользователей Authenticated Users могут вызвать эту проблему. Подключение заканчивается неудачей даже после удаления из реестра ключа MSLicense.

Для решения этой проблемы попробуйте следующее.
На устройстве клиента с помощью regedt32t найдите ключ HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSLicensing. Подсветите его и из меню выберите Security, Permissions, щелкните Advanced. Убедитесь, что в списке Permissions есть группа Authenticated Users. Если нет, то добавьте ее. В "Permission Entry for MSLicensing" дайте полный контроль группе Users, щелкните Apply и OK.


Проблема 2

После перемещения сервера лицензирования клиенты RDP подключаются без проблем.

Причина

Потенциальный конфликт двух библиотек Icaapi.dll и Rdpwsx.dll могут вызвать рассинхронизацию личного ключа сертификата на сервере терминалов.

Решение

На клиенте сделайте следующие изменения в реестре:
Найдите ключ
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TermService\Parameters
и добавьте в него следующее значение:

Имя: DefaultLicenseServer
Тип данных: REG_SZ
Значение: Server Name

где Server Name - имя сервера лицензирования, либо имя NetBIOS, либо IP-адрес

Далее следуйте инструкциям по ремонту ключа сертификата.


Проблема 3

Эта проблема возникает при использовании терминалов Wyse WT1200LE 4.2.x. Она относится к аппаратуре клиента. Симптомы наблюдаются следующие: 1) Станция может подключиться к одному серверу MetaFrame, но не может к другому; в то же время клиенты RDP подключаются без проблем.

Проверьте следующее:

  1. Сколько установлено TS CAL? И где они установлены? Используете вы Active Directory или домены NT4.0?
    Если вы используете домен AD, то вы должны установить сервер лицензирования на контроллере домена в корневом домене. Для каждого сайта AD должен быть только один сервер лицензирования. Устанавливайте службу лицензирования под администратором домена. Если создан пустой корневой домен, объект AD для TS-Enterprise-License-Server не может быть правильно создан. Убедитесь, что к объекту AD можно сделать запрос через LDAP. Серверы Windows 2000, запускающие у себя службы терминалов, ищут сервер лицензирования посредством просмотра LDAP. Подробнее о процессе поиска сервера лицензирования см. статьи Microsoft Q232520, Q261110, Q304080.
  2. Как много генерируется ошибок и находится ли сервер лицензирования в той же подсети/домене, что и серверы терминалов?
    Если в одной подсети находятся только серверы MetaFrame, измените конфигурацию TCP/IP на серверах MetaFrame, включив просмотр WINS, добавьте сервер WINS в список, и используйте ключ реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TermService\Parameters\DefaultLicenseServer. (см. Проблему 2)
  3. Является ли пользователь администратором или обычным пользователем?
  4. Какую версию клиента ICA вы используете?
  5. На каких рабочих станциях Windows и не-Windows возникают эти проблемы?
  6. Есть ли временные серверы терминалов в списке TS Admin?
  7. Вы прочитали Q287687, Q315404, применили Microsoft Service Pack 3? Помогли ли Q270898, Q277917 или Q294655?
  8. Как установлено лицензирование - per-server или per-seat?

Изоляция проблемы

  1. Изолируйте проблемный сервер в рабочую группу и/или сделайте его контроллером домена.
  2. Разрешите на этом сервере TSCAL Server.
  3. Создайте минимум два сеанса ICA на этом сервере
  4. Запретите на этом сервере TSCAL Server .
  5. Если нужно, понизьте ранг сервера
  6. Вновь прикрепите сервер в домен
  7. Попробуйте создать сеанс ICA

Как осуществляется поиск сервера лицензий
(по статье Microsoft Q232520)

Домен Windows 2000

Домен Windows NT 4.0

Рабочая группа

Настройка предпочтительного сервера лицензирования

Сервер терминалов может получать лицензии оот сервера лицензирования, находящихся в удаленной подсети, или от указанного сервера в той же самой подсети. Имя этого компьютера можно указать в реестре Windows 2000 в параметре DefaultLicenseServer.

Добавьте параметр DefaultLicenseServer (тип REG_SZ) в ключ реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TermService\Parameters
и укажите в нем имя NetBIOS компьютера, запускающего у себя сервер лицензирования. Убедитесь, что это имя можно разрешить посредством WINS или просмотром lmhosts.


Terminal Server Is Unable to Locate a License Server
(по статье Microsoft Q304080)

Симпотом: После инсталляции и активирования Terminal Server License Server, клиенты сервера терминалов не могут получить правильной лицензию и не могут установить соединение с сервером терминалов.

Причина: Это может случаться, если сервер лицензирования установлен как Enterprise License server.

Решение: Откройте ключ реестра
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\TermServLicensing\Parameters

Параметр Role может принимать значение '0' (Domain/Workgroup License Server) или '1' (Enterprise License Server).

Если сервер лицензирования установлен как enterprise license server:

  1. Pfgecnbnt Terminal Services Licensing Manager и запишите число доступных клиентских лицений
  2. Деинсталлируйте сервер лицензирования
  3. Вновь инсталлируйте сервер лицензирования как domain license server
  4. Позвоните в Microsoft Clearinghouse (1-888-571-2048) для повторной активации

Windows 2000 Terminal Services in Windows NT 4.0 Domain Cannot Find Windows 2000 Terminal Services Licensing Server
(по статье Q261116)

Windows 2000 Terminal Services в домене Windows NT 4.0 могут не найти сервер лицензирования Windows 2000. Таким образом, сервер терминалов выдает 90-дневную лицензию.

Эта проблема также встречается в рабочих группах Windows NT 4.0.

При этом в системном журнале появляется следующая ошибка:
Event ID: 1010
Source: TermSrvice
Type: Warning
Description: The terminal services could not locate a license server. Confirm that all license servers on the network are registered in WINS\DNS, accepting network requests, and the Terminal Services Licensing Service is running.

Причина: Когда сервер терминалов Windows 2000 находится в домене Windows NT 4.0, он не может использовать Active Directory для поиска сервера лицензирования.

Для решения этой проблемы установите предпочтительный сервер лицензирования (см. выше)

Подробности.
Сервер терминалов Windows 2000 должен быть способен запрашивать Active Directory. Объект сервера лицензирования хранится в контейнере Configuration. Этот контейнер реплицируется на каждом контроллере домена в пределах дерева. Информация, хранящаяся в этом объекте, должна быть минимальна.

Характерное имя этого объекта (DN) следующее:

LDAP://CN=TS-Enterprise-License-Server,CN=site-name,CN=sites,configuration-container

Клиент читает эту информацию для определения информации о сервере лицензирования. Если перечислено более одного сервера, один из них выбирается случайным образром. Если в сайте нет серверов enterprise, или невозможно определить имя сайта (например, на Microsoft Windows 95/Microsoft Windows 98), то клиент ищет в Active Directory объекты по общему имени (CN), вне зависимости от сайта.

To resolve this issue, add a registry setting for the preferred license server so that the Windows 2000 Terminal Services server can locate the Windows 2000 Terminal Services Licensing server in the Windows 2000-based domain or in the Windows NT 4.0-based domain. For additional information, click the article number below to view the article in the Microsoft Knowledge Base: