0

SignerSignExここで C#の素晴らしい使用法を見つけました: https://stackoverflow.com/a/26372061

開発環境では問題なく動作します。マシンですが、Azure WebJob では次のようなものを使用する必要があります。

X509Certificate2 cert = new X509Certificate2(certPath, 
                        certPassword, 
                        X509KeyStorageFlags.MachineKeySet |
                        X509KeyStorageFlags.PersistKeySet |
                        X509KeyStorageFlags.Exportable);

ただし、X509KeyStorageFlags.MachineKeySetフラグを使用するとSignerSignExhResult=-2146885626 が返されます (エラー コード 0x80092006 - ストアまたはオブジェクトにプロバイダーが指定されていません)。

どうすれば修正できますか、また MachineKeySet が provider に影響を与えるのはなぜですか? ありがとう!

4

1 に答える 1

0

いくつかの調査の後、私はほぼ確信しています (99% :) )SignerSignExユーザーのプロファイルがないと機能しません。だから私はmono + opensslを使いました。

解決策のように見えます。

Mono を使用した Authenticode の例は、 https ://github.com/mono/mono/blob/master/mcs/tools/security/signcode.cs で確認できます。

さようなら、楽しい時間を!

于 2015-11-16T10:44:28.983 に答える