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


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

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

Синтаксис

RPC_STATUS RpcBindingInqAuthInfoExA(
  RPC_BINDING_HANDLE       Binding,
  RPC_CSTR                 *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, см. в разделе Authentication-Level константы. Укажите значение NULL, чтобы запретить функцию возвращать параметр AuthnLevel.

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

AuthnSvc

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

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

AuthIdentity

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

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

AuthzSvc

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

Укажите значение 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]
целевая платформа Виндоус
заголовка rpcdce.h (include Rpc.h)
библиотеки Rpcrt4.lib
DLL Rpcrt4.dll

См. также

RPC_SECURITY_QOS

RpcBindingSetAuthInfoEx

RpcStringFree