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


Функция RpcBindingInqAuthInfoExW (rpcdce.h)

Функция RpcBindingInqAuthInfoEx возвращает сведения о проверке подлинности, авторизации и качестве обслуживания безопасности из дескриптора привязки.

Синтаксис

RPC_STATUS RpcBindingInqAuthInfoExW(
  RPC_BINDING_HANDLE       Binding,
  RPC_WSTR                 *ServerPrincName,
  unsigned long            *AuthnLevel,
  unsigned long            *AuthnSvc,
  RPC_AUTH_IDENTITY_HANDLE *AuthIdentity,
  unsigned long            *AuthzSvc,
  unsigned long            RpcQosVersion,
  RPC_SECURITY_QOS         *SecurityQOS
);

Параметры

Binding

Дескриптор привязки сервера, из которого возвращаются сведения о проверке подлинности и авторизации.

ServerPrincName

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

Укажите значение NULL, чтобы запретить RpcBindingInqAuthInfoEx возвращать параметр ServerPrincName . В этом случае приложение не вызывает функцию RpcStringFree .

AuthnLevel

Возвращает набор указателей на уровень проверки подлинности, используемый для удаленных вызовов процедур, выполненных с помощью привязки. Список уровней проверки подлинности, поддерживаемых RPC, см. в разделе Константы уровня проверки подлинности. Укажите значение NULL, чтобы функция не возвращала параметр AuthnLevel .

Уровень, возвращаемый в параметре AuthnLevel , может отличаться от уровня, указанного при вызове клиентом функции RpcBindingSetAuthInfoEx . Это несоответствие возникает, когда библиотека времени выполнения RPC не поддерживает уровень проверки подлинности, заданный клиентом, и автоматически обновляется до следующего более высокого уровня проверки подлинности.

AuthnSvc

Возвращает набор указателей на службу проверки подлинности, указанную для удаленных вызовов процедур, выполненных с помощью привязки. Список служб проверки подлинности, поддерживаемых RPC, см. в разделе Authentication-Service Constants.

Укажите значение NULL, чтобы запретить RpcBindingInqAuthInfoEx возвращать параметр AuthnSvc .

AuthIdentity

Возвращает указатель на дескриптор структуры данных, которая содержит учетные данные для проверки подлинности и авторизации клиента, указанные для удаленных вызовов процедур, выполненных с помощью привязки.

Укажите значение NULL, чтобы запретить RpcBindingInqAuthInfoEx возвращать параметр AuthIdentity .

AuthzSvc

Возвращает набор указателей на службу авторизации, запрошенную клиентским приложением, которое произвело удаленный вызов процедуры для привязки. Список служб проверки подлинности, поддерживаемых RPC, см. в разделе Authentication-Service Constants.

Укажите значение NULL, чтобы запретить RpcBindingInqAuthInfoEx возвращать параметр AuthzSvc .

RpcQosVersion

Передает значение текущей версии (необходимо для прямого совместимости, если в эту функцию внесены расширения). Всегда присвойте этому параметру значение RPC_C_SECURITY_QOS_VERSION.

SecurityQOS

Возвращает указатель на структуру RPC_SECURITY_QOS , которая определяет параметры качества обслуживания.

Возвращаемое значение

Значение Значение
RPC_S_OK
Вызов выполнен успешно.
RPC_S_INVALID_BINDING
Недопустимый дескриптор привязки.
RPC_S_WRONG_KIND_OF_BINDING
Это была неправильная привязка для операции.
RPC_BINDING_HAS_NO_AUTH
Привязка не содержит сведений о проверке подлинности.
 
Примечание Список допустимых кодов ошибок см. в разделе Возвращаемые значения RPC.
 

Комментарии

Клиентское приложение вызывает функцию RpcBindingInqAuthInfoEx для просмотра сведений о проверке подлинности и авторизации, связанных с дескриптором привязки сервера. Эта функция позволяет запрашивать качество безопасности обслуживания в дескрипторе привязки. В противном случае он идентичен RpcBindingInqAuthInfo.

Библиотека времени выполнения RPC выделяет память для возвращаемого параметра ServerPrincName . Приложение отвечает за вызов функции RpcStringFree для возвращаемой строки аргумента.

Примечание

Заголовок rpcdce.h определяет RpcBindingInqAuthInfoEx в качестве псевдонима, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОД. Использование псевдонима, не зависящий от кодирования, с кодом, который не является нейтральным для кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или времени выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Профессиональная [классические приложения | Приложения UWP]
Минимальная версия сервера Windows 2000 Server [классические приложения | Приложения UWP]
Целевая платформа Windows
Header rpcdce.h (включая Rpc.h)
Библиотека Rpcrt4.lib
DLL Rpcrt4.dll

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

RPC_SECURITY_QOS

RpcBindingSetAuthInfoEx

RpcStringFree