You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
DO NOT Implement Client or Server Certificate. It's for the future
Acceptance Criteria
When there is no Root Certificate (default or custom), implement this UI
If we generate a default Root Certificate in Certificate Menu -> Install for Windows -> Manual or Auto Tab -> It will show the default certificate in the Custom Root Certificate
Delete button is disabled if it's a Default Certificate, but enable if it's a custom Root certificate
Able to import p12 (with passphrase) -> Decrypt p12 with password to PEM and Private Key and store in Proxyman Data Folder -> Custom Certificate Folder. Do not store user password
Make sure it shows an error if the passphrase is wrong.
Able to import PEM / DER (This feature is not available on macOS). This view should be separated into components, we we can reuse it later for Server / Client Certificate
After importing custom Root Certificate -> Verify that the UI displays
Logic
Maybe we should write new CustomCertificateService.ts to store and handle custom certificate (maybe we will use this class to store Client/Server customer certificate too)
All custom certificates should be stored in Proxyman Data Folder -> Custom Certificate Folder
Do not store user p12 passphare. We decrypt p12 file to PEM and Private Key.
Write a simple func to verify if it's a valid Root Certificate. Ping @NghiaTranUIT to get the idea. If it's invalid, still import it, but show warning yellow label on the UI to warning the user
✅ IMPORTANT LOGIC: If Custom Root Certificate is provided -> We should clear all cache certificates (read ca.js) and know where it's store and we should clear all cache and delete old server certificate (which was issued by old Root Certificate)
Description
Acceptance Criteria
Make sure it shows an error if the passphrase is wrong.
Able to import PEM / DER (This feature is not available on macOS). This view should be separated into components, we we can reuse it later for Server / Client Certificate
Logic
CustomCertificateService.tsto store and handle custom certificate (maybe we will use this class to store Client/Server customer certificate too)Proxyman Data Folder -> Custom Certificate Folderca.js) and know where it's store and we should clear all cache and delete old server certificate (which was issued by old Root Certificate)