Importe o Certificado Confiável de Java para o JRE

6

Eu preciso instalar um certificado de um aplicativo Java para muitas pessoas. Eu quero usar um programa de um clique ou arquivo em lotes para importá-lo como um certificado confiável (em Control Panel- > Security- > Certificate). Então eles não precisarão pressionar sempre para permitir que eles usem o aplicativo pela primeira vez.

Eu extraí o certificado necessário como .csr e .cer (o .csr via painel de controle e .cer via keytool). Agora preciso recuperar um deles sem clicar nos menus.

Eu realmente não entendo a documentação de importação de .cer com keytool e gostaria de um exemplo. Ou há uma maneira mais fácil do que usar o keytool?

    
por Zalastax 10.05.2011 / 20:15

4 respostas

2

Alguns exemplos de como fazer isso usando "keytool"

O segundo link aqui tem um arquivo de lote de exemplo:

@echo off
echo
echo This will import an X.509 SSL certificate into the keystore for the JVM
specified
echo
echo Press Control+C to abort.
pause
SETLOCAL

rem -------------------------------------------------
rem 1) Set the path to you JVM here
rem -------------------------------------------------
set JAVA_HOME=C:\j2sdk1.4.2_05

rem -------------------------------------------------
rem 2) SET THE CERTIFICATE NAME AND ALIAS HERE
rem -------------------------------------------------
set CERT_NAME=mycert.cer
set CERT_ALIAS=mycert

rem -------------------------------------------------
rem 3) SET THE KEYTOOL PASSWORD HERE
rem -------------------------------------------------
set KEYTOOL_PASS=changeit

rem -------------------------------------------------
rem DO NOT EDIT BELOW THIS LINE
rem -------------------------------------------------
set JAVA_SECURITY=%JAVA_HOME%\jre\lib\security
set CERT=%JAVA_SECURITY%\%CERT_NAME%
%JAVA_HOME%\jre\bin\keytool -import -trustcacerts -keystore %JAVA_SECURITY%\cacerts
-storepass %KEYTOOL_PASS% -noprompt -alias %CERT_ALIAS% -file %CERT%
ENDLOCAL
pause

Qual parte você está tendo dificuldade em entender? Existe uma seção específica que não faz sentido? Você precisa de ajuda com o arquivo de lote? Onde, especificamente, você está ficando preso? Talvez eu possa ajudar mais especificamente.

    
por 10.05.2011 / 20:20
0

O conceito de cadeia de confiança para o keytool Java e aplicativos assinados espera que o usuário confirme a confiança, adotando uma ação afirmativa. Nesse caso, o usuário importaria a chave pública relacionada ao publicador de código em seu keystore, o que requer que ele tenha um keystore Java e uma senha relacionados ao mesmo. Consulte a seção link informando -

6: Import Certificate as a Trusted Certificate

Ray downloads SSignedApplet.jar and CompanyCer.cer to his home directory. Ray must now >create a keystore database (raystore) and import the certificate into it using the alias >company. Ray uses keytool in his home directory to do this:...

Isso apresenta um desafio considerável, portanto, o comportamento padrão é executar aplicativos assinados com a caixa de diálogo OK que você está tentando endereçar. O acesso remoto / a criação de keystores Java para outros é contrário ao design de segurança.

    
por 10.05.2011 / 22:10
0

Tivemos um problema semelhante aqui tentando evitar pop-ups de aceitação de certificado em applets assinados. Encontramos uma correção, não é bonita, mas parece ter funcionado até agora. Cada usuário possui um armazenamento de chaves trusted.certs (dependendo do sistema operacional, ele está em algum lugar abaixo de <username>/AppData...Sun/Java/Deployment/trusted.certs ) que é gerado na primeira vez em que acessa um applet na máquina especificada. Você pode ter um script de inicialização para substituir esse arquivo para cada usuário de algum lugar central. Para criar o novo arquivo trusted.certs , acabamos de aceitar os certs em uma única máquina que queremos lá e, em seguida, copiámos todo o keystore trusted.certs para a nova máquina.

Carregar para o keystore do certs central para o JRE não funcionou para nós, então fomos nessa outra rota. É feio, e se você tivesse a senha para esse keystore, você também poderia definir isso via script de lote como acima, mas é o que fizemos.

Essa abordagem fez mais sentido para nós, já que funcionava de forma usuário por usuário e, como está vinculada a um logon, permite a administração centralizada e atualizações em massa.

    
por 09.08.2012 / 19:03
0

Em C:\Windows\Sun\Java\Deployment crie um arquivo chamado deployment.config .

O conteúdo deste arquivo deve ser:

deployment.system.config=file:///C:/Windows/Sun/Java/Deployment/deployment.properties
deployment.system.config.mandatory=false

Crie outro arquivo no mesmo local chamado deployment.properties e inclua essa linha em deployment.properties:

deployment.system.security.trusted.certs=C\:\Windows\Sun\Java\Deployment\trusted.certs

copie os trusted.certs de um perfil de usuário com todos os certificados necessários para c:\windows\sun\java\deployments também.

Todos os certificados contidos no arquivo agora aparecerão no painel de controle do java, em Sistema / Certificados confiáveis

você também pode fazer isso com a maioria das outras propriedades do java, incluindo-as no arquivo deployment.properties , como:

deployment.javaws.autodownload=NEVER
deployment.javaws.autodownload.locked
deployment.security.level=MEDIUM
deployment.security.level.locked
deployment.security.mixcode=HIDE_RUN
deployment.security.mixcode.locked
deployment.insecure.jres=NEVER
deployment.insecure.jres.locked
deployment.expiration.check.enabled=false
deployment.expiration.check.enabled.locked
deployment.webjava.enabled=true
deployment.webjava.enabled.locked

A primeira linha define a propriedade, a segunda (com .locked no final) impede que os usuários alterem as propriedades no painel de controle java

você também pode gerenciar a lista de exceções do site criando um arquivo no mesmo local chamado exception.sites e adicionando os endereços da Web a esse arquivo (um site por linha) e incluindo essa linha em deployment.properties :

deployment.user.security.exception.sites=C\:\Windows\Sun\Java\Deployment\exception.sites

este link explicará a maioria das propriedades configuráveis:

link

    
por 09.04.2015 / 15:35