RemoteCertificateValidationCallback デリゲートとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > RemoteCertificateValidationCallback デリゲートの意味・解説 

RemoteCertificateValidationCallback デリゲート

メモ : このデリゲートは、.NET Framework version 2.0新しく追加されたものです。

認証使用されるリモートSSL (Secure Sockets Layer) 証明書検証します。

名前空間: System.Net.Security
アセンブリ: System (system.dll 内)
構文構文

Public Delegate Function
 RemoteCertificateValidationCallback ( _
    sender As Object, _
    certificate As X509Certificate, _
    chain As X509Chain, _
    sslPolicyErrors As SslPolicyErrors _
) As Boolean
Dim instance As New RemoteCertificateValidationCallback(AddressOf
 HandlerMethod)
public delegate bool RemoteCertificateValidationCallback
 (
    Object sender,
    X509Certificate certificate,
    X509Chain chain,
    SslPolicyErrors sslPolicyErrors
)
public delegate bool RemoteCertificateValidationCallback
 (
    Object^ sender, 
    X509Certificate^ certificate, 
    X509Chain^ chain, 
    SslPolicyErrors sslPolicyErrors
)
/** @delegate */
public delegate boolean RemoteCertificateValidationCallback (
    Object sender, 
    X509Certificate certificate, 
    X509Chain chain, 
    SslPolicyErrors sslPolicyErrors
)
JScript では、デリゲート使用できますが、新規に宣言することはできません。

パラメータ

sender

この検証ステータス情報格納するオブジェクト

certificate

リモート側の認証使用される証明書

chain

リモートの証明書に関連付けられた証明機関チェーン

sslPolicyErrors

リモートの証明書に関連付けられた 1 つ上のエラー

戻り値
指定した証明書認証使用できるかどうか判断する Boolean 値。

解説解説
使用例使用例

RemoteCertificateValidationCallback クラスインスタンスによって呼び出されるメソッド実装するコード例次に示します検証エラーがある場合、このメソッドはそれらを表示し認証されていないサーバーとの通信を防ぐ false返します

      
// The following method is invoked by the RemoteCertificateValidationDelegate.
public static bool ValidateServerCertificate(
      object sender,
      X509Certificate certificate,
      X509Chain chain,
      SslPolicyErrors sslPolicyErrors)
{
   if (sslPolicyErrors == SslPolicyErrors.None)
        return true;

    Console.WriteLine("Certificate error: {0}", sslPolicyErrors);
    
    // Do not allow this client to communicate with unauthenticated
 servers.
    return false;
}

前のコード例定義されメソッド使用してデリゲート作成するコード例次に示します

// Create a TCP/IP client socket.
// machineName is the host running the server application.
TcpClient client = new TcpClient(machineName,443);
Console.WriteLine("Client connected.");
// Create an SSL stream that will close the client's stream.
SslStream sslStream = new SslStream(
    client.GetStream(), 
    false, 
    new RemoteCertificateValidationCallback (ValidateServerCertificate),
 
    null
    );
// The server name must match the name on the server certificate.
try 
{
    sslStream.AuthenticateAsClient(serverName);
} 
catch (AuthenticationException e)
{
    Console.WriteLine("Exception: {0}", e.Message);
    if (e.InnerException != null)
    {
        Console.WriteLine("Inner exception: {0}", e.InnerException.Message);
    }
    Console.WriteLine ("Authentication failed - closing the connection.");
    client.Close();
    return;
}
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
System.Net.Security 名前空間
LocalCertificateSelectionCallback デリゲート



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「RemoteCertificateValidationCallback デリゲート」の関連用語

RemoteCertificateValidationCallback デリゲートのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



RemoteCertificateValidationCallback デリゲートのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2025 Microsoft.All rights reserved.

©2025 GRAS Group, Inc.RSS