HTTPS 証明書の検証

提供: RAD Studio
移動先: 案内検索

DataSnap クライアント アプリケーション への移動


https プロトコルを使ってサーバーに接続するクライアント(この場合、サーバーは IIS で稼働している可能性が高い)を開発している場合は、サーバーの証明書を検証するためのチェックをクライアント コードに実装することになります。

接続のセットアップ

クライアントの https 接続をセットアップするには、フォームに TSQLConnection をドラッグ アンド ドロップします。 [オブジェクト インスペクタ]で、[Driver]プロパティを[Datasnap]に、[Driver]プロパティの [CommunicationProtocol][https] に、[Driver]プロパティの[URLPath]を "IISVirtualDirectory/ServerProjectName.dll" に、それぞれ設定します。 ポートおよびその他のあらゆる接続情報を必要に応じて設定します。

証明書の検証

フォーム上の TSQLConnection インスタンスをクリックし、[オブジェクト インスペクタ]の[イベント]タブを開いて、[ValidatePeerCertificate]イベントを実装します。 このイベントのシグネチャは以下のとおりです。


procedure XValidatePeerCertificate(Owner: TObject; Certificate: TX509Certificate; const ADepth: Integer; var Ok: Boolean);

証明書そのものは TX509Certificate インスタンスで、その内容を調べて証明書に問題がなければ Ok の値を True に、そうでなければ False に、それぞれ設定できます。

証明書に関する以下の関数/手続きが役に立つ場合があります。


function Verify(key: TPublicKey): Boolean;
procedure CheckValidity;
procedure CheckValidity(ADate: TDateTime);

TX509CertificateDBXCommon ユニットにあります)の詳細については、該当するドキュメントを参照してください。

関連項目