RpcServerRegisterAuthInfoW 関数 (rpcdce.h)
RpcServerRegisterAuthInfo 関数は、RPC ランタイム ライブラリに認証情報を登録します。
構文
RPC_STATUS RpcServerRegisterAuthInfoW(
RPC_WSTR ServerPrincName,
unsigned long AuthnSvc,
RPC_AUTH_KEY_RETRIEVAL_FN GetKeyFn,
void *Arg
);
パラメーター
ServerPrincName
AuthnSvc パラメーターで指定されたサービスを使用してリモート プロシージャ コールを認証するときにサーバーに使用するプリンシパル名へのポインター。 名前とその構文の内容は、使用中の認証サービスによって定義されます。 詳細については、「プリンシパル名の」を参照してください。
AuthnSvc
サーバーがリモート プロシージャ コールの要求を受信するときに使用する認証サービス。
GetKeyFn
暗号化キーを返すサーバー アプリケーションによって提供されるルーチンのアドレス。 RPC_AUTH_KEY_RETRIEVAL_FNを参照してください。
暗号化キー取得の既定の方法を使用するには、NULL パラメーター値を指定します。 この場合、認証サービスは既定の動作を指定します。 RPC_C_AUTHN_WINNT認証サービスを使用する場合は、このパラメーターを NULL を
認証サービス | GetKeyFn | Arg | 実行時の動作 |
---|---|---|---|
RPC_C_AUTHN_DPA | 無視 | 無視 | サポートされていません |
RPC_C_AUTHN_GSS_KERBEROS | 無視 | 無視 | サポートされていません |
RPC_C_AUTHN_GSS_NEGOTIATE | 無視 | 無視 | サポートされていません |
RPC_C_AUTHN_GSS_SCHANNEL | 無視 | 無視 | サポートされていません |
RPC_C_AUTHN_MQ | 無視 | 無視 | サポートされていません |
RPC_C_AUTHN_MSN | 無視 | 無視 | サポートされていません |
RPC_C_AUTHN_WINNT | 無視 | 無視 | サポートされていません |
RPC_C_AUTHN_DCE_PRIVATE | NULL | 以外の null | 指定されたキー テーブルから暗号化キーを取得する既定の方法を使用します。指定された引数が既定の取得関数に渡されます。 |
RPC_C_AUTHN_DCE_PRIVATE | 以外の null | NULL | 指定された暗号化キー取得関数を使用して、既定のキー テーブルからキーを取得します。 |
RPC_C_AUTHN_DCE_PRIVATE | 以外の null | 以外の null | 指定した暗号化キー取得関数を使用して、指定したキー テーブルからキーを取得します。指定された引数が取得関数に渡されます。 |
RPC_C_AUTHN_DEC_PUBLIC | 無視 | 無視 | 将来の使用のために予約されています。 |
RPC ランタイム ライブラリは、ServerPrincName パラメーター値 RpcServerRegisterAuthInfo から ServerPrincName パラメーター値として、GetKeyFn 取得関数に渡します。 RPC ランタイム ライブラリは、キー バージョン (KeyVer) パラメーターの値を自動的に提供します。 KeyVer パラメーター値が 0 の場合、取得関数は使用可能な最新のキーを返す必要があります。 取得関数は、Key パラメーターで認証キーを返します。
RpcServerRegisterAuthInfo から呼び出された取得関数 がRPC_S_OK以外の状態を返した場合、この関数は失敗し、エラー コードをサーバー アプリケーションに返します。 クライアントのリモート プロシージャ コール要求の認証中に RPC ランタイム ライブラリによって呼び出された取得関数がRPC_S_OK以外の状態を返した場合、要求は失敗し、RPC ランタイム ライブラリはクライアント アプリケーションにエラー コードを返します。
Arg
指定した場合、GetKeyFn ルーチンに渡すパラメーターへのポインター。 このパラメーターを使用して、認証サービスが SCHANNEL に設定されている場合に明示的な資格情報を指定する SCHANNEL_CRED 構造体へのポインターを渡すこともできます。
戻り値
価値 | 意味 |
---|---|
|
呼び出しは成功しました。 |
|
認証サービスが不明です。 |
備考
サーバー アプリケーション RpcServerRegisterAuthInfo を呼び出して、リモート プロシージャ コールの認証に使用する認証サービスを登録します。 サーバーは、サーバーが登録する認証サービスごとにこのルーチンを 1 回呼び出します。 サーバーが特定の認証サービスに対してこの関数を複数回呼び出した場合、結果は未定義になります。
クライアント アプリケーションが指定する認証サービス (RpcBindingSetAuthInfo または RpcServerRegisterAuthInfo
手記
rpcdce.h ヘッダーは、RPCServerRegisterAuthInfo をエイリアスとして定義し、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされる最小サーバー | Windows 2000 Server [デスクトップ アプリのみ] |
ターゲット プラットフォーム の |
ウィンドウズ |
ヘッダー | rpcdce.h (Rpc.h を含む) |
ライブラリ | Rpcrt4.lib |
DLL | Rpcrt4.dll |
関連項目
RpcBindingSetAuthInfo の