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

Binding で参照されているサーバーの予想されるプリンシパル名へのポインターへのポインターを返します。 返される名前の内容とその構文は、使用中の認証サービスによって定義されます。

RpcBindingInqAuthInfoExServerPrincName パラメーターを返さないようにするには、null 値を指定します。 この場合、アプリケーションは RpcStringFree 関数を呼び出しません。

AuthnLevel

Binding を使用して行われたリモート プロシージャ 呼び出しに使用される認証のレベルに設定されたポインターを返します。 RPC でサポートされる認証レベルの一覧については、「 認証レベルの定数」を参照してください。 関数が AuthnLevel パラメーターを返さないようにするには、null 値を指定します。

AuthnLevel パラメーターで返されるレベルは、クライアントが RpcBindingSetAuthInfoEx 関数を呼び出したときに指定されたレベルとは異なる場合があります。 この不一致は、RPC ランタイム ライブラリがクライアントによって指定された認証レベルをサポートせず、次の上位の認証レベルに自動的にアップグレードされる場合に発生します。

AuthnSvc

Binding を使用して行われたリモート プロシージャ 呼び出しに指定された認証サービスに設定されたポインターを返します。 RPC でサポートされる認証サービスの一覧については、「 Authentication-Service Constants」を参照してください。

RpcBindingInqAuthInfoExAuthnSvc パラメーターを返さないようにするには、null 値を指定します。

AuthIdentity

Binding を使用して行われたリモート プロシージャ 呼び出しに対して指定されたクライアントの認証資格情報と承認資格情報を含むデータ構造へのハンドルへのポインターを返します。

RpcBindingInqAuthInfoExAuthIdentity パラメーターを返さないようにするには、null 値を指定します。

AuthzSvc

Binding でリモート プロシージャ 呼び出しを行ったクライアント アプリケーションによって要求された承認サービスに設定されたポインターを返します。 RPC でサポートされる認証サービスの一覧については、「 Authentication-Service Constants」を参照してください。

RpcBindingInqAuthInfoExAuthzSvc パラメーターを返さないようにするには、null 値を指定します。

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 をエイリアスとして定義します。これは、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択します。 エンコードに依存しないエイリアスをエンコードニュートラルでないコードと組み合わせて使用すると、コンパイルまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。

要件

   
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリ |UWP アプリ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリ |UWP アプリ]
対象プラットフォーム Windows
ヘッダー rpcdce.h (Rpc.h を含む)
Library Rpcrt4.lib
[DLL] Rpcrt4.dll

関連項目

RPC_SECURITY_QOS

RpcBindingSetAuthInfoEx

RpcStringFree