Yubikey: Ký mã ClickOnce bằng chứng chỉ được lưu trữ trên Yubikey
Vấn đề
Khi cố gắng ký mã cho ứng dụng ClickOnce trong Visual Studio, bạn không thể thấy chứng chỉ được lưu trữ trên Yubikey của mình.
Nguyên nhân
Tiện ích ký mã do Visual Studio sử dụng cho các ứng dụng ClickOnce không nhận dạng được các khóa ECDSA mới được yêu cầu. Tính đến phiên bản Visual Studio 2022 tháng 2 năm 2024, tiện ích này không được hỗ trợ.
Các giải pháp khả thi
Để ký mã, trước tiên bạn phải cài đặt các điều kiện tiên quyết sau:
- Windows 10 SDK / LƯU Ý: Khi cài đặt, bạn chỉ cần chọn thành phần Singtool
- YubiKey Smart Card Minidriver / LƯU Ý: Có thể điều này không bắt buộc
Khi xây dựng phần mềm, sau đó bạn sẽ thực hiện như sau:
Xuất bản ứng dụng ClickOnce của bạn MÀ KHÔNG cần ký vào manifest.
Sau đo sử dụng Singtool để ký như bình thường, đây là hướng dẫn cho SingTool
https://muassl.com/ho-tro/huong-dan-cai-dat/window...
Áp dụng cho Visual Studio 2022
Xử lý sự cố khác
Lỗi Microsoft IIS: Chứng chỉ không được tin cậy rộng rãi do thiếu đường dẫn chứng chỉ (Certificate Path) hợp lệ
Cần làm gì khi một Root CA hết hạn hoặc cập nhật
Gemalto Safenet eToken 5110CC (940): Làm thế nào để mở khóa (đặt lại mật khẩu)
Lỗi: Verify return code: 21 (unable to verify the first certificate)
Zimbra: Lỗi chdir(/root) failed: Permission denied
Signtool: Lỗi No certificates were found that met all the given criteria
Cài đặt SSL thành công nhưng Google hoặc Facebook báo lỗi
Windows: Bản vá bổ sung Trusted Root Certificates
Windows: Tự động cập nhật Chứng chỉ gốc - Trusted Root Certificates
Chrome lỗi ERR_CERT_AUTHORITY_INVALID trên Windows 7
Zimbra: Xử lý lỗi Root CA Certificate Expiration
Cpanel: Root CA Certificate Expiration
Comodo/Sectigo: Lỗi Root certificate has expired
Hướng dẫn cập nhật Root / Intermediate CA trên Linux Server
Comodo/Sectigo: Lỗi Root certificate has expired
Lỗi: Windows does not have enough information to verify this certificate
Windows Server 2012: Hướng dẫn cập nhật máy chủ hỗ trợ TLS 1.2
Windows Server 2008: Hướng dẫn cập nhật máy chủ hỗ trợ TLS 1.2
Exchange Server: Khắc phục lỗi didnt found starttls in server response, try anyway khi kết nối STARTTLS
VestaCP/Sectigo: SSL intermediate chain is not valid