Câu trả lời từ Steve Sheldon đã khắc phục vấn đề cho tôi, tuy nhiên, vì tôi đang cấp quyền cho chứng chỉ kịch bản mà không có gui, tôi cần một giải pháp có thể viết được. Tôi loay hoay tìm nơi cất giữ khóa riêng của mình. Khóa riêng không có trong -C:\ProgramData\Microsoft\Crypto\RSA\MachineKeys
, cuối cùng tôi thấy rằng nó thực sự nằm trong C:\ProgramData\Microsoft\Crypto\Keys
. Dưới đây tôi mô tả làm thế nào tôi phát hiện ra rằng:
Tôi đã thử FindPrivateKey
nhưng nó không thể tìm thấy khóa riêng và sử dụng powershell $cert.privatekey.cspkeycontainerinfo.uniquekeycontainername
là null / trống.
May mắn thay, certutil -store my
liệt kê các chứng chỉ và cung cấp cho tôi các chi tiết tôi cần để kịch bản giải pháp.
================ 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.
Sau đó tôi đã quét c\ProgramData\Microsoft\Crypto\
thư mục và tìm thấy tệp 8787033f8ccb5836115b87acb_ca96c65a-4b42-a145-eee62128a trong C: \ ProgramData \ Microsoft \ Crypto \ Keys .
Cho phép tài khoản dịch vụ của tôi đọc quyền truy cập tệp này đã khắc phục các sự cố cho tôi