Функция 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, см. в разделе Константы уровня проверки подлинности. Укажите значение 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 или Юникод этой функции на основе определения константы препроцессора UNICODE. Сочетание использования псевдонима, не зависящий от кодировки, с кодом, не зависящим от кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.

Требования

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

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

RPC_SECURITY_QOS

RpcBindingSetAuthInfoEx

RpcStringFree