Tôi đang cố gắng mạnh mẽ đặt tên cho một hội đồng với một tệp PFX cũng được sử dụng để ký điện tử. Chứng chỉ PFX có tùy chọn CodeSigning và được cung cấp bởi CA.Đặt tên mạnh với PFX
Khi tôi cố gắng sử dụng nó tôi nhận được lỗi sau:
error MSB3325: Cannot import the following key file: myCert.pfx. The key file may be password protected. To correct this, try to import the certificate again or manually install the certificate to the Strong Name CSP with the following key container name: VS_KEY_B763CB2413AC1708
Tôi đã cố gắng để xóa nó và cài đặt lại PFX sử dụng
sn -d VS_KEY_B763CB2413AC1708
sn -i myCert.pfx VS_KEY_B763CB2413AC1708
Nhưng điều đó không làm việc. Tôi đã cố gắng đưa chứng chỉ vào kho chứng chỉ - điều đó cũng không thay đổi gì cả. Tôi đã cố gắng chạy Visual Studio như một quản trị viên cũng như thực hiện MSBuild từ dòng lệnh.
Tôi cũng đã cố gắng trì hoãn ký lắp ráp với một chứng chỉ được tạo ra tại địa phương (mà làm việc) và sau đó từ chức nó sử dụng
sn -R myAssembly.dll myCert.pfx
Sau đó, tôi nhận được thông báo lỗi sau:
Failed to re-sign the assembly -- Keyset does not exist
tôi đã tìm thấy các yêu cầu cho chứng chỉ ký mã số trong ClickOnce Manifest Signing and Strong-Name Assembly Signing Using Visual Studio Project Designer's Signing Page, Signing Assemblies. Có vẻ như tất cả bọn họ đều đã gặp nhau, nhưng có lẽ tôi đang thiếu thứ gì đó. Làm thế nào tôi có thể giải quyết vấn đề này?
FWIW, sự cố của tôi đã được giải quyết bằng cách chạy VS dưới dạng quản trị viên - nhưng tôi có tệp .pfx tốt đã biết - có tệp .pfx của bạn đã hoạt động ở bất kỳ đâu? Nó được tạo ra bởi Visual Studio? (Tôi đã tạo ra nó thông qua dòng lệnh một thời gian dài trước đây, nhưng tôi nhớ, để có được tất cả các chi tiết trong đó để làm cho Visual Studio vui vẻ, mất khoảng 10 lệnh khác nhau, và khoảng 3 bộ công cụ khác nhau ... và cuối cùng tôi đã kết thúc với cả tệp .cer và tệp .pfx ...) – BrainSlugs83