Структура COAUTHINFO (wtypesbase.h)

Содержит параметры проверки подлинности, используемые при выполнении запроса удаленной активации с клиентского компьютера на сервер.

Синтаксис

typedef struct _COAUTHINFO {
  DWORD          dwAuthnSvc;
  DWORD          dwAuthzSvc;
  LPWSTR         pwszServerPrincName;
  DWORD          dwAuthnLevel;
  DWORD          dwImpersonationLevel;
  COAUTHIDENTITY *pAuthIdentityData;
  DWORD          dwCapabilities;
} COAUTHINFO;

Члены

dwAuthnSvc

Используемая служба проверки подлинности. Список значений см. в разделе Константы службы проверки подлинности. Используйте RPC_C_AUTHN_NONE, если проверка подлинности не требуется. RPC_C_AUTHN_WINNT используется по умолчанию, и RPC_C_AUTHN_GSS_KERBEROS также поддерживается.

dwAuthzSvc

Используемая служба авторизации. Список значений см. в разделе Константы авторизации. Чтобы использовать службу проверки подлинности NT, укажите RPC_C_AUTHZ_NONE.

pwszServerPrincName

Имя участника-сервера, используемое со службой проверки подлинности. Если вы используете RPC_C_AUTHN_WINNT, имя субъекта должно иметь значение NULL.

dwAuthnLevel

Используемый уровень проверки подлинности. Список значений см. в разделе Константы уровня проверки подлинности.

В Windows Server 2003 удаленные активации используют уровень проверки подлинности по умолчанию, указанный в параметре CoInitializeSecuritydwAuthnLevel . В предыдущих версиях Windows RPC_C_AUTHN_LEVEL_CONNECT всегда использовался для уровня безопасности, если не был явно указан другой уровень.

dwImpersonationLevel

Используемый уровень олицетворения. Список значений см. в разделе Константы уровня олицетворения. Это значение должно быть RPC_C_IMP_LEVEL_IMPERSONATE или выше.

pAuthIdentityData

Указатель на структуру COAUTHIDENTITY , которая устанавливает удостоверение клиента, не являющееся стандартным. Если этот параметр имеет значение NULL, используется фактическое удостоверение клиента. Значения элементов структуры зависят от службы проверки подлинности. Это значение должно иметь значение NULL , если в dwAuthnSvc не указан протокол проверки подлинности сети NTLMSSP или Kerberos, используемый в качестве службы авторизации.

dwCapabilities

Указывает дополнительные возможности этого прокси-сервера. В настоящее время этот элемент должен быть EOAC_NONE (0x0) или RPC_C_QOS_CAPABILITIES_MUTUAL_AUTH (0x1). Используйте RPC_C_QOS_CAPABILITIES_MUTUAL_AUTH, если требуется Kerberos.

Комментарии

Если pAuthInfo в COSERVERINFO имеет значение NULL, Snego будет использоваться для согласования службы проверки подлинности, которая будет работать между клиентом и сервером. Однако для pAuthInfo можно указать структуру COAUTHINFO, отличной от NULL, в соответствии с любой из следующих потребностей:

  • Указание другого удостоверения клиента для удаленной активации компьютера. Указанное удостоверение будет использоваться для разрешения на запуск проверка на сервере, а не для реального удостоверения клиента.
  • Чтобы указать, что для удаленной активации компьютера используется Kerberos, а не NTLMSSP. Может быть указано или не указано удостоверение клиента без определенных значений.
  • Запрос небезопасной активации.
  • Указание собственной службы проверки подлинности.
Указание структуры COAUTHINFO позволяет активациям DCOM правильно работать с поставщиками безопасности, отличными от NTLMSSP. Можно также указать дополнительные сведения о безопасности, используемые во время удаленной активации для взаимодействия с альтернативными реализациями DCOM.

Если присвоить dwAuthzSvc, pwszServerPrincName, dwImpersonationLevel или dwCapabilities неправильные значения и вызвать CoGetClassObject или CoCreateInstanceEx, эти функции не возвращают E_INVALIDARG или аналогичную ошибку. Вместо неправильных значений используются значения по умолчанию.

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Профессиональная [классические приложения | Приложения UWP]
Минимальная версия сервера Windows 2000 Server [классические приложения | Приложения UWP]
Верхняя часть wtypesbase.h (включая WTypes.h)

См. также раздел

COSERVERINFO