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


Структура 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 будет использоваться для согласования службы проверки подлинности, которая будет работать между клиентом и сервером. Однако для pAuth Info можно указать структуруpAu thInfoNULLдля удовлетворения любого из следующих потребностей:

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

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

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 2000 Профессиональный [классические приложения | Приложения UWP]
минимальный поддерживаемый сервер Windows 2000 Server [классические приложения | Приложения UWP]
заголовка wtypesbase.h (include WTypes.h)

См. также

COSERVERINFO