HttpBaseProtocolFilter.ServerCustomValidationRequested イベント

定義

このイベントは、サーバーとの SSL/TLS 接続が確立されるときに発生します。 サーバー SSL 証明書の追加の検証 (OS の既定値に加えて) を実行する必要がある場合は、このイベントのイベント ハンドラーを実装する必要があります。

// Register
event_token ServerCustomValidationRequested(TypedEventHandler<HttpBaseProtocolFilter, HttpServerCustomValidationRequestedEventArgs const&> const& handler) const;

// Revoke with event_token
void ServerCustomValidationRequested(event_token const* cookie) const;

// Revoke with event_revoker
HttpBaseProtocolFilter::ServerCustomValidationRequested_revoker ServerCustomValidationRequested(auto_revoke_t, TypedEventHandler<HttpBaseProtocolFilter, HttpServerCustomValidationRequestedEventArgs const&> const& handler) const;
public event TypedEventHandler<HttpBaseProtocolFilter,HttpServerCustomValidationRequestedEventArgs> ServerCustomValidationRequested;
function onServerCustomValidationRequested(eventArgs) { /* Your code */ }
httpBaseProtocolFilter.addEventListener("servercustomvalidationrequested", onServerCustomValidationRequested);
httpBaseProtocolFilter.removeEventListener("servercustomvalidationrequested", onServerCustomValidationRequested);
- or -
httpBaseProtocolFilter.onservercustomvalidationrequested = onServerCustomValidationRequested;
Public Custom Event ServerCustomValidationRequested As TypedEventHandler(Of HttpBaseProtocolFilter, HttpServerCustomValidationRequestedEventArgs) 

イベントの種類

Windows の要件

デバイス ファミリ
Windows 10 Anniversary Edition (10.0.14393.0 で導入)
API contract
Windows.Foundation.UniversalApiContract (v3.0 で導入)

注釈

このイベントを発生させる前に、サーバー証明書の既定の OS 検証が実行されます。 証明書がこの検証に失敗した場合、接続は終了し、イベント ハンドラーは呼び出されません。

OS 検証の一部をスキップするには (運用環境のシナリオでは推奨されません)、 IgnoreableServerCertificateErrors プロパティを使用して、無視するエラーを指定します。 証明書に他のエラーがない限り、OS 検証は成功したと見なされ、イベント ハンドラーが呼び出されます。

イベント ハンドラー コードは、SSL/TLS 接続の確立中に OS の同期コールバックの一部として実行されます。 接続中にサーバーがタイムアウトしないように、イベント ハンドラー コード内で実行時間の長いタスクを実行しないようにします。

イベント ハンドラー コード内で非同期 API を呼び出す必要がある場合は、非同期 API を呼び出す前に遅延 ( HttpServerCustomValidationArgs.GetDeferral を参照) を受け取る必要があります。 完了したら、遅延を呼び出します ハンドラー コードからコントロールを返す Complete メソッド。

次のスニペットは、このイベントをサブスクライブする方法を示しています。

HttpBaseProtocolFilter.ServerCustomValidationRequest += (sender, args) =>
{
	var cert = args.ServerCertificate
	// Your custom cert validation code here.
}

適用対象