javascript と activeX (CAPICOM Store api) を使用して、IE 11 を介してユーザー ストアから証明書を削除しようとしています。
私が使用するJavaScriptコードは次のとおりです。
[...]
oldCertificate.PrivateKey.Delete();
userCertificateStore.Remove(oldCertificate);
[...]
oldCertificate は Capicom Certificate オブジェクトであり、userCertificateStore は Capicom Store オブジェクトです。
テストのために、私は以前、Windows 8.1 タッチ パッドと Gemalto スマート カード リーダーで、偽の VSC として TPM とキー ストレージを備えたスマート カードを使用していました。すべてがうまくいきました。
タッチ パッドに VSC をインストールしたので、VSC にある証明書を削除しようとすると、スマート カードを選択できる Windows セキュリティ プロンプトでエラーが表示されます (つまり、スマート カードの選択) 。
VSC を選択すると、「セキュリティ ドライバには、システムにないパイロットが必要です。管理者に連絡してください。」と表示されます。
これはかなり一般的なエラーのようです...
Capicom は廃止されたため、MSDN Web サイトの X509 Store でドキュメントを検索しようとしましたが、オブジェクト メソッドまたはプロパティを取得できませんでした。
この問題を一時的に回避するために、すべての証明書選択リストとユーザー ストアから非表示にするために、アーカイブ済み証明書属性を true に設定することにしました。これは機能しますが、キー コンテナーはシステム上にまだ存在します... これにより、コンテナーの制限数で問題が発生する可能性があります。
どのパイロットをインストールするか、またはどのセキュリティ オプションを使用すると、JavaScript コードで VSC のキー ストレージを削除できるか知っている人はいますか?
または、誰かが X509 ストアで証明書を削除する実際の例を持っている場合、それは素晴らしいことです! オブジェクトのメソッドとプロパティを含む完全なドキュメントへのリンクもあります。
ありがとう