Client java conectar https

2 respostas
raffaele

Lista.

Estou com problema para conectar via https que necessita tanto de certificado do lado do cliente qto do servidor, estou usando HTTPClient do pacote commons da apache.

Já utilizei a keytool para importar a chave que foi registrada no servidor no arquivo e configuração de certificados do java (JAVA_HOME/certs)

mas gera o seguinte erro…

mainjavax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException: Certificate chaining error: issuer DN != subject DN

Alguém passou por experiência parecida?

Obrigado

2 Respostas

T

“Certificate chaining error: issuer DN != subject DN”
para verificar se isso é realmente um erro de “chaining”, experimente importar todos os certificados X.509 no seu browser de sua preferência, e veja se há algum problema com a cadeia de certificação.
Se você não conseguir formar a cadeia desde a autoridade certificadora até o seu certificado, você terá problemas.
Veja se no Keystore do Java que roda a aplicação server existe um “trusted cert” que corresponde à autoridade certificadora que emitiu o certificado client. Pode ser que não exista o certificado, ou ele esteja já expirado (por exemplo, existe um certificado da Verisign (“Class 3”) na versão 1.4.1 que estava expirado, e foi substituído só na versão 1.4.2_05.
Pode ser também que você esteja usando uma versão velha do JDK, se for possível atualize ambas as partes para 1.4.2_07. Um cliente meu teve um problema semelhante com certificados (ele queria usar um web service do Itaú que rodava em https (SSL), mas estava rodando JDK 1.4;1 e o certificado do Itaú justamente tinha sido emitido pela Verisign Class 3, e a conexão não fechava de jeito nenhum. Foi resolvido alterando-se para JDK 1.4.2_05.)

Luca

Olá

Descreva com mais detalhes tudo o que fez.

Não é comum ver aplicações que necessitam tanto de certificado do lado do cliente qto do servidor. Até hoje eu nunca vi e gostaria de saber em quais casos está usando. Sei que existe pois li no livro do Rescorla e lá diz que serve para restringir o acesso de alguns serviços somente a alguns clientes. Devem haver outros casos.

[]s
Luca

Criado 22 de fevereiro de 2005
Ultima resposta 22 de fev. de 2005
Respostas 2
Participantes 3