4D 21 から、HTTPS リクエストはディスクに保存された証明書ではなく、Windows 証明書ストアに保存された証明書を使用できるようになりました。これは、HTTPS リクエストのクライアント側でローカルな証明書を使用する必要がある場合に特に便利です。
HTTPS リクエストで Windows 証明書ストアの証明書を使用することは、4D フォーラムで 4D デベロッパーから多く寄せられたフィーチャーリクエストでした。今回も、4D 21はその声にお応えします。
証明書の設定
HTTPリクエストで、Windows 証明書ストアのどの証明書を使うかを定義するのは簡単です。new() 関数に渡すoptions オブジェクトのnewstoreCertificateName 属性にその名前を設定するだけです。以下にコード例を示します:
var $options:={storeCertificateName :"myCertificateName"}
var $request :=4D.HTTPRequest.new($url;$options)
もちろん、以下の例に示すように、HTTP エージェントに対して証明書名を設定することも可能です:
var $options:={storeCertificateName :"myCertificateName"}
var $agent :=4D.HTTPAgent.new($options)
var $request :=4D.HTTPRequest.new($url; {agent:$agent})
Windowsへの証明書のインストール
Windows 証明書ストアへの証明書の登録は非常に簡単です。最も簡単な方法は、 PKCS#12 証明書を使うことであり、これは秘密鍵と ID 証明書の両方を含んでいます。このような証明書を生成できるツールは多くあります。
Windows エクスプローラでPKCS#12 証明書 ファイルをダブルクリックし、下の動画に示すように、ウィザードの手順に従うだけです。
⚠️ 特に重要なのは、ウィザードの3番目のステップで、”Mark this key as exportable” (この鍵をエクスポート可能としてマークする)オプションにチェックを入れることです。これをスキップすると、4D は証明書を使用できません。
これで完了です!証明書は安全に保存され、4D で使用する準備が整いました!
この新機能は、現在Windows でのみ利用可能です。macOS のKeychain への対応は現在検討中です。
この新機能が皆様のご期待に添えることを願っています。また、4D フォーラムでフィードバックをお寄せください。
それでは良いコーディングを!
Comments are not currently available for this post.