1

WCF ベースの Web サービスのインストール パッケージの作成に取り組んでいます。このサービスは、インストールされた証明書を介してメッセージ レベルの暗号化を使用します。証明書のインストールとそのア​​クセス許可の設定の両方を自動化する方法を考え出そうとしています。

現在、MMC スナップインを使用して証明書を手動でインストールしています。インストール後、インストールされた証明書を含むファイルを見つけて、ネットワーク サービス アカウントがアクセスできるようにアクセス許可を変更する必要があります。ファイルを見つける唯一の方法は、「...\Microsoft\Crypto\RSA\MachineKeys」フォルダー (正確なパスはプラットフォームによって異なります) を開き、最新の変更日でファイルを特定することです。

WIX を使用してインストール パッケージを作成しようと考えています。WIX には証明書をインストールするための特定の機能がありますが、権限は依然として問題になると思います。サブジェクト名 (または同様のもの) で識別されるインストール済み証明書の物理パスを取得するためのユーティリティ、API、またはその他の手段はありますか。

もちろん、この問題にはもっと直接的な解決策があるかもしれません。

この問題についてご協力いただきありがとうございます。

4

3 に答える 3

0

証明書自体には権限がありません。これは、MY、CA、または ROOT ストアなど、ユーザーの証明書ストアのいずれかに置くことができます。または、それらのストアのコンピューターのバージョンにある可能性があります。証明書とともに秘密鍵もインストールしているようです。サービスが秘密鍵にアクセスできるようにするには、秘密鍵をコンピューターのキー ストアにインストールする必要があります。CryptImportKey などを使用して手動でインポートする場合は、CryptAcquireContext でキー コンテナーを取得するときに CRYPT_MACHINE_KEYSET を指定する必要があります。

于 2009-03-11T18:43:32.850 に答える
0

証明書をインストールする必要がありますか? 代わりに PFX ファイルなどから参照して、インストールの必要性を否定できますか?

于 2009-03-10T21:42:27.233 に答える