2017-03-02 99 views
2

需要在Mozilla Firefox证书存储中添加自定义证书"MycustomCert.pem"受信任列表。如何修改Mozilla证书存储中的可信证书列表?访问mozilla firefox证书存储到HCERTSTORE

获取窗口的示例代码ROOT证书存储。相反,根需要得到Mozilla的证书来HCERTSTORE数据结构的访问

int main() 
{ 
    HCERTSTORE hRootStore; 

    hRootStore = CertOpenStore(CERT_STORE_PROV_SYSTEM, 0, 0, CERT_STORE_OPEN_EXISTING_FLAG | CERT_SYSTEM_STORE_LOCAL_MACHINE, L"ROOT"); 
    if (!hRootStore) 
     return 1; 

    CertCloseStore(hRootStore, 0); 
    return 0; 
} 

给替代方法除了使用certutils.exe

+1

Chrome使用系统的证书存储区。 Firefox和Opera都有自己的证书存储区。 Firefox使用NSS,而不是OpenSSL。我怀疑你将能够使用Windows的API来访问或修改Mozilla的证书存储(但我不确定)。 – jww

回答

0

我所面临的问题,我已经创建了一个批处理文件添加证书到Mozilla的商店,

set certificateFile=Ourcert.pem 
set certificateName=UurCertName 
Set FFProfdir=%Appdata%\mozilla\firefox\profiles 
DIR %FFProfDir% /A:D /B > "%Temp%\FFProfile.txt" 
FOR /F "tokens=*" %%i in (%Temp%\FFProfile.txt) do (call :Foo %%i 
) 
pause 

:Foo 
set cetDbLoc=%FFProfdir%\%1 
C:\nss3.13.5nspr4.9.1x86\bin\certutil -A -n %certificateName% -t "TCu,Cuw,Tuw" -i %certificateFile% -d %cetDbLoc% 
:End 

你必须从下载nss tools 210并在nss tools内使用certutil而不是Windows默认certutil