Поделиться через


Ключ AppID

Группируйте параметры конфигурации для одного или нескольких объектов DCOM в одно централизованное расположение в реестре. Объекты DCOM, размещенные одним исполняемым файлом, группируются в один AppID, чтобы упростить управление общими параметрами безопасности и конфигурации.

Раздел реестра

HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AppID\{AppID_GUID}

Значение реестра Описание
AccessPermission Описывает список управления доступом (ACL) субъектов, которые могут получить доступ к экземплярам этого класса. Этот ACL используется только приложениями, которые не вызывают CoInitializeSecurity.
ActivateAtStorage Настраивает клиент для создания экземпляров объектов на том же компьютере, что и постоянное состояние, которое они используют или из которых они инициализированы.
AppID Определяет ИДЕНТИФИКАТОР GUID AppID, соответствующий именованным исполняемым файлам.
AppIDFlags Указывает, как COM-сервер, настроенный для запуска в качестве интерактивного пользователя, будет запущен или привязан клиентом в рабочем столе, отличном от по умолчанию.
AuthenticationLevel Задает уровень проверки подлинности для приложений, которые не вызывают CoInitializeSecurity или для приложений, которые вызывают CoInitializeSecurity и указывают идентификатор AppID.
DllSurrogate Позволяет серверам DLL выполняться в суррогатном процессе. Если указана пустая строка, используется суррогат, предоставленный системой; в противном случае значение указывает путь суррогата, который будет использоваться.
DllSurrogateExecutable Позволяет серверам DLL выполняться в пользовательском суррогатном процессе вместе со значением реестраDllSurrogate.
конечных точек Настраивает com-приложение для использования указанного номера TCP-порта для обмена данными DCOM.
LaunchPermission Описывает список управления доступом (ACL) субъектов, которые могут запускать новые серверы для этого класса.
LoadUserSettings Определяет, будет ли COM загружать профиль пользователя для COM-серверов, работающих в качестве удостоверения запуска пользовательского приложения.
LocalService Устанавливает объект в качестве приложения-службы.
PreferredServerBitness Задает предпочтительную архитектуру, 32-разрядную или 64-разрядную для этого COM-сервера.
RemoteServerName Настраивает клиент для запроса запуска объекта на определенном компьютере всякий раз, когда вызывается функция активации, для которой не указана структура COSERVERINFO.
ROTFlags Управляет регистрацией COM-сервера в работающей таблице объектов (ROT).
Запуска Настраивает класс для запуска под определенной учетной записью пользователя при активации удаленного клиента без записи в качестве приложения-службы.
ServiceParameters Указывает параметры командной строки, передаваемые объекту, установленному для использования COM через значение реестра LocalService.
SRPTrustLevel Задает уровень доверия политики ограничений программного обеспечения (SRP) для приложений.

 

Замечания

Идентификаторы приложений сопоставляются с исполняемыми файлами и классами с помощью двух различных механизмов:

  • Использование 128-разрядного глобально уникального идентификатора (GUID), определяющего ключ AppID. Класс указывает соответствующий идентификатор AppID в ключ CLSID в именованном значении AppID. Это сопоставление используется во время активации.
  • Использование именованного значения, указывающего исполняемое имя (например, "MYOLDAPP.EXE"). Это именованное значение имеет тип REG_SZ и содержит строковое представление AppID, связанного с исполняемым файлом. Это сопоставление используется для получения разрешений доступа по умолчанию и уровня проверки подлинности.

Ключ HKEY_LOCAL_MACHINE\SOFTWARE\Classes соответствует ключу HKEY_CLASSES_ROOT, который был сохранен для совместимости с более ранними версиями COM.

Для COM-серверов сопоставление обычно создается и записывается в реестр во время регистрации или при запуске dcomcnfg.exe. Однако COM-клиенты, которые хотят установить безопасность с помощью ключа AppID, должны создать соответствующие разделы реестра и указать необходимое сопоставление, вызвав функции реестра или используя Regedit.exe. Затем для клиента можно задать такие значения, как AccessPermission или AuthenticationLevel. Например, предположим, что имя исполняемого файла для клиентского процесса — "YourClient.exe", и необходимо задать для уровня проверки подлинности значение "Нет". Вы будете использовать Guidgen.exe или Uuidgen.exe для создания GUID, который является идентификатором AppID для исполняемого файла. Затем вы задали значения в реестре, как показано в следующем примере, где 00000001 представляет уровень проверки подлинности None:

HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AppID
   {MyGuid}
      AuthenticationLevel = 00000001
   MyClient.exe
      AppID = {MyGUID}