Steve Sheldonからの回答で問題が解決しましたが、GUIを使用せずに証明書のアクセス許可をスクリプト化しているため、スクリプト可能なソリューションが必要でした。私は自分の秘密鍵がどこに保管されているかを見つけるのに苦労しました。秘密鍵は含まれていませんでしたが-C:\ProgramData\Microsoft\Crypto\RSA\MachineKeys
、最終的には実際に含まれていることがわかりましたC:\ProgramData\Microsoft\Crypto\Keys
。以下に私がそれを見つけた方法を説明します:
試しましたFindPrivateKey
が、秘密鍵が見つかりませんでした。Powershellを使用すると、$cert.privatekey.cspkeycontainerinfo.uniquekeycontainername
null / emptyでした。
さいわい、certutil -store my
証明書を一覧表示し、ソリューションのスクリプトを作成するために必要な詳細を教えてくれました。
================ Certificate 1 ================
Serial Number: 162f1b54fe78c7c8fa9df09
Issuer: CN=*.internal.xxxxxxx.net
NotBefore: 23/08/2019 14:04
NotAfter: 23/02/2020 14:24
Subject: CN=*.xxxxxxxnet
Signature matches Public Key
Root Certificate: Subject matches Issuer
Cert Hash(sha1): xxxxa5f0e9f0ac8b7dd634xx
Key Container = {407EC7EF-8701-42BF-993F-CDEF8328DD}
Unique container name: 8787033f8ccb5836115b87acb_ca96c65a-4b42-a145-eee62128a
##* ^-- filename for private key*##
Provider = Microsoft Software Key Storage Provider
Private key is NOT plain text exportable
Encryption test passed
CertUtil: -store command completed successfully.
次に、c\ProgramData\Microsoft\Crypto\
フォルダーをスキャンし、C:\ ProgramData \ Microsoft \ Crypto \ Keysに8787033f8ccb5836115b87acb_ca96c65a-4b42-a145-eee62128aファイルを見つけました。
サービスアカウントに読み取りアクセス権を付与すると、このファイルで問題が解決します