尝试使用Java密钥库类将自签名CA证书导入Windows根信任库时,无法阻止/绕过用户提示
尝试使用Java密钥库类将自签名CA证书导入Windows根信任存储时,无法阻止/绕过用户提示 我已成功生成自签名根CA X509证书。现在,由于它是一个自签名证书,我想将它从Java导入Windows根信任存储(受信任的根证书颁发机构)。当我尝试使用Keystore类将证书从Java导入Windows根目录时,Java代码运行,但出现一个提示,我们需要信任并通过单击“是”接受导入。如何防止或绕过此提示以接受此证书导入弹出窗口并直接导入证书而无需任何用户操作 我尝试使用相同的代码将证书导入Windows MY“Personal”truststore,但没有收到任何弹出的用户提示。证书已成功从Java导入个人信任库。同样,我也希望在没有任何用户提示的情况下将证书导入Windows根目录。请帮忙尝试使用Java密钥库类将自签名CA证书导入Windows根信任库时,无法阻止/绕过用户提示,java,cryptography,bouncycastle,Java,Cryptography,Bouncycastle,尝试使用Java密钥库类将自签名CA证书导入Windows根信任存储时,无法阻止/绕过用户提示 我已成功生成自签名根CA X509证书。现在,由于它是一个自签名证书,我想将它从Java导入Windows根信任存储(受信任的根证书颁发机构)。当我尝试使用Keystore类将证书从Java导入Windows根目录时,Java代码运行,但出现一个提示,我们需要信任并通过单击“是”接受导入。如何防止或绕过此提示以接受此证书导入弹出窗口并直接导入证书而无需任何用户操作 我尝试使用相同的代码将证书导入Win
KeyStore keyStore = KeyStore.getInstance("Windows-ROOT", "SunMSCAPI");
keyStore.load(null, null); // Load keystore
keyStore.setCertificateEntry("AliasNameExample", x509Certificate);
keyStore.store(null, null);
使用Java代码,我们如何将自签名CA证书导入Windows根信任库,而不提示用户输入接受“是/否”。您不能绕过此提示对话框。它嵌入在crypt32.dll库中(
CertAddCertificateContextToStore
函数)
唯一的解决方法是使用本地机器存储。但是,它需要完全的管理员权限。每当我尝试导入证书时,它总是导入到当前用户中。要将证书导入本地计算机,我应该对上述Java代码做哪些更改?另外,当我以完全的管理员权限运行它时,导入到本地机器商店的方法是否会阻止弹出窗口?我不熟悉Java API。但是,如果您知道如何在本地计算机存储中安装证书,则不会出现弹出窗口。但应用程序必须在提升模式下以完全管理员权限执行。