Ключ AppID
Группируйте параметры конфигурации для одного или нескольких объектов DCOM в одно централизованное расположение в реестре. Объекты DCOM, размещенные одним исполняемым файлом, группируются в один AppID, чтобы упростить управление общими параметрами безопасности и конфигурации.
Раздел реестра
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AppID\{AppID_GUID}
Значение реестра | Description |
---|---|
AccessPermission | Описывает контроль доступа List (ACL) субъектов, которые могут получить доступ к экземплярам этого класса. Этот ACL используется только приложениями, которые не вызывают CoInitializeSecurity. |
ActivateAt служба хранилища | Настраивает клиент для создания экземпляров объектов на том же компьютере, что и постоянное состояние, которое они используют или из которых они инициализированы. |
AppID | Определяет ИДЕНТИФИКАТОР GUID AppID, соответствующий именованным исполняемым файлам. |
AppIDFlags | Указывает, как COM-сервер, настроенный для запуска в качестве интерактивного пользователя, будет запущен или привязан клиентом в рабочем столе, отличном от по умолчанию. |
AuthenticationLevel | Задает уровень проверки подлинности для приложений, которые не вызывают CoInitializeSecurity или для приложений, которые вызывают CoInitializeSecurity и указывают идентификатор AppID. |
DllSurrogate | Позволяет серверам DLL выполняться в суррогатном процессе. Если указана пустая строка, используется суррогат, предоставленный системой; в противном случае значение указывает путь суррогата, который будет использоваться. |
DllSurrogateExecutable | Позволяет серверам DLL выполняться в пользовательском суррогатном процессе вместе со значением реестра DllSurrogate. |
Конечные точки | Настраивает com-приложение для использования указанного номера TCP-порта для обмена данными DCOM. |
LaunchPermission | Описывает список контроль доступа (ACL) субъектов, которые могут запускать новые серверы для этого класса. |
LoadUser Параметры | Определяет, будет ли 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}