ブラウザコンポーネントと証明書

105 views
Skip to first unread message

中村

unread,
Jun 5, 2023, 12:30:27 AM6/5/23
to Japan RAD Studio User Group
こんにちは、中村と申します。

先日、クライアント証明書が必須のウェブサイトを作りました。
そのサイトを表示するためだけの簡易的なブラウザアプリをDelphiで作りたいのですが、ブラウザコンポーネントにクライアント証明書やCA証明書などをオンコードで内蔵させておく方法なんてありますでしょうか。

オンコードでなくても、実行時に特定の証明書ファイルを読み込んで使用する形でも良いのですが、いずれにしても証明書をPCに事前インストールすることなく利用できる方法がないか調べてます。

実現する方法があればDelphiのバージョンとかVCL/FMXプラットホームなどは問わないのですが、なにか良い案あったらアドバイスいただけますでしょうか。

mam

unread,
Jun 11, 2023, 11:41:46 PM6/11/23
to Japan RAD Studio User Group
mamと申します。

WebView2(TEdgeBrowser、Webview4Delphi)では少なくとも、インストールされているクライアント証明書の選択はできても、インストールされていないクライアント証明書は使えないようです。

基本認証ならソースコードに埋め込めるのですが・・・。
onBasicAuthenticationRequested()内で処理すれば・・・。

var r:ICoreWebView2BasicAuthenticationResponse; pwc:PChar; begin //基本認証(ベーシック認証)の要求があった場合 aWebView.Get_Source(pwc); if pwc='特定のURL' then begin aArgs.Get_Response(r); r.Set_UserName(PChar('基本認証ユーザー名')); r.Set_Password(PChar('基本認証パスワード')); end; end;  

Webview4Delphiのサンプルソース
https://mam-mam.net/delphi/tedgebrowser_webview4delphi.html

答えになっていなくてすいません。


2023年6月5日月曜日 13:30:27 UTC+9 中村:

中村

unread,
Jun 12, 2023, 1:57:20 AM6/12/23
to Japan RAD Studio User Group
中村です。mamさん、ありがとうございます。

証明書の本質からして、ユーザーの同意なく使用することはできなさそうですね。
インストールされてる証明書を選択するのはできるようですので、その方向か、
あるいは証明書を使わない別なアプローチを考えてみます。
2023年6月12日月曜日 12:41:46 UTC+9 mam:
Reply all
Reply to author
Forward
0 new messages