2012-05-08 12 views
3

Windows Server 2003でmakecertを使用して証明書を作成する場合、プライベートキーがアクセスできるようにプライベートキーのアクセス許可を設定する必要がありますWCFサービスによって読み取られます。 C:\ Documents and Settings \ All Users \ Application Data \ Microsoft \ Crypto \ RSA \ MachineKeysに移動してファイルにアクセスできました。 NETWORK SERVICEの読み取り権限を設定すると、すべて正常に機能しました。Windows Server 2008で証明書のプライベートキーのアクセス許可を設定する

私はWindows Server 2008を見ていて、C:\ Usersやそれ以外の場所では同じような場所を見つけることができません。秘密鍵へのアクセス許可を設定するための適切なメカニズムは何ですか?彼らはどこに位置していますか?私はmakecertを使ってTrustedPeople/localmachineに直接インストールしています

答えて

4

ここで使用するツールはWinHttpCertCfg.exeのようです。これは、上記の方法よりも証明書の秘密鍵に対するアクセス許可を設定する、よりクリーンな方法です。私の推測では、Windows 2008以降では、MSはより離散した場所にキーを隠すことにしました。

WinHttpCertCfgを使用してアクセス許可を設定しました。次に、LOCAL_MACHINE \ TrustedPeopleのMyCert01という名前の証明書のNETWORK SERVICEへの読み取りアクセス許可を与えるコマンドの例を示します。

winhttpcertcfg.exe -g -c LOCAL_MACHINE\TrustedPeople -s MyCert01 -a "NETWORK SERVICE" 
+1

警告:winhttpcertcfgの「-s」paramは証明書の「件名」名の大文字と小文字を区別しない_substring_検索し、発見された_first_の証明書にのみ補助金を-g。これは、あなたが2つの証明書を持っていて、十分に特定のSubject名を持っていない場合には問題です。例:最初の証明書に「件名:CN = ABC、O = MyCompany」があり、2番目の証明書に「件名:CN = MyCompany」がある場合、2番目の証明書を見つける方法はありません... –

+0

"ちょうどC:\ ProgramData \ Microsoft \です... – Jaykul

関連する問題