Login Registre-se
Certificado A3 - Fim do Applets  XML
Índice dos Fóruns » Java Avançado
Autor Mensagem
ThiagoSilva

JavaC Membro

Membro desde: 16/06/2016 09:54:46
Mensagens: 16
Offline

Boa noite pessoal,

Preciso implementar em uma aplicação web o uso do Certificado A3, para assinar e transmitir arquivos xml.
Por se tratar de web, e o certificado digital estar conectado no lado cliente e não servidor, complica bastante nossa vida.

Encontrei aqui vários exemplos com applets, porém com o fim do suporte a NPAPI pelo Google Chrome esta opção já não funciona no Chrome.

Alguém tem alguma sugestão/exemplo de como implementar essa solução?
Notei que uma alternativa ao Applet é o Java Web Start. Alguém já usou pra essa finalidade e pode compartilhar essa experiencia?
jeroqueiroz

Moderador
[Avatar]

Membro desde: 11/06/2011 09:45:18
Mensagens: 1348
Localização: Bahia
Offline

Tenho a mesma necessidade igualmente a diversos outros aqui no fórum, mas a maior parte até agora acabou desistindo no A3.


Jeremias Santos
Seguir no Twitter @jeroqueiroz
Blog Jeroqueiroz


Projeto NF-e, CT-e, CC-e? Comece Por Aqui!


Membros do fórum,

Usem a tag [code] e [/code] quando postarem Códigos Java e ou exemplos de XMLs.
Evitem tópicos duplicados.
Tópico solucionado? Edite o primeiro post e coloque [RESOLVIDO] no final do título.
Evitem reviver tópicos antigos.

O tópico resolveu seu problema? Seja gentil, comente e ou agradeça quem contribuiu com a solução.

Obrigado!
[Email] [WWW] [Yahoo!] [MSN]
ThiagoSilva

JavaC Membro

Membro desde: 16/06/2016 09:54:46
Mensagens: 16
Offline

Entendi.. vou estudar aqui pra tentar progredir, se conseguir alguma coisa posto aqui.
Obrigado jeroqueiroz
lplana

JavaC Membro

Membro desde: 25/05/2016 09:35:01
Mensagens: 3
Offline

Amigo, tive o mesmo desafio que você está encontrando. O que fiz para solucioná-lo foi criar um serviço REST que rodasse em um servidor embarcado (Spring Boot / TomCat), de modo que o cliente deve ter esse serviço rodando, e quando ele aciona a interface web o JavaScript faz uma requisição localhost para iniciar o software de assinatura. Desse jeito tudo fica transparente, inclusive de navegador.
Espero que ajude. Se precisar de mais esclarecimentos estamos aí.
ThiagoSilva

JavaC Membro

Membro desde: 16/06/2016 09:54:46
Mensagens: 16
Offline

Legal lplana, no inicio da próxima vou voltar a trabalhar nisso, daí pintar alguma dúvida te dou um toque.
Muito Obrigado.
ThiagoSilva

JavaC Membro

Membro desde: 16/06/2016 09:54:46
Mensagens: 16
Offline

lplana wrote:Amigo, tive o mesmo desafio que você está encontrando. O que fiz para solucioná-lo foi criar um serviço REST que rodasse em um servidor embarcado (Spring Boot / TomCat), de modo que o cliente deve ter esse serviço rodando, e quando ele aciona a interface web o JavaScript faz uma requisição localhost para iniciar o software de assinatura. Desse jeito tudo fica transparente, inclusive de navegador.
Espero que ajude. Se precisar de mais esclarecimentos estamos aí.


lplana, uma dúvida..

Criei o serviço rest e na minha máquina esta tudo funcionando, estou utilizando tomcat.
O client no javascript que faz a requisição no localhost ficou assim:


var uri = "http://localhost:8080/rest/..."

var client = new XMLHttpRequest();
client.open("GET", uri);

client.onreadystatechange = function() {
PF('loadingDialog').hide();

if (client.readyState == 4) {
if (client.status == 200) {
... executa comportamento X
}
else {
... executa comportamento Y
}
}
}

client.send();


Daí minha dúvida, quando este cara esta no servidor cloud, essa requisição ira ocorre no localhost do servidor.
Como faço para que a requisição ocorre no localhost da máquina do cliente?

Muito obrigado pela dica que havia me dado, me ajudou muito.
Foi a primeira vez que criei um serviço rest, aprendi pra caramba.

Esta mensagem foi editada 1 vez. Última atualização foi em 13/12/2016 07:52:55

jeroqueiroz

Moderador
[Avatar]

Membro desde: 11/06/2011 09:45:18
Mensagens: 1348
Localização: Bahia
Offline

Conseguiram fazer a comunicação Web usando o A3 ?

Jeremias Santos
Seguir no Twitter @jeroqueiroz
Blog Jeroqueiroz


Projeto NF-e, CT-e, CC-e? Comece Por Aqui!


Membros do fórum,

Usem a tag [code] e [/code] quando postarem Códigos Java e ou exemplos de XMLs.
Evitem tópicos duplicados.
Tópico solucionado? Edite o primeiro post e coloque [RESOLVIDO] no final do título.
Evitem reviver tópicos antigos.

O tópico resolveu seu problema? Seja gentil, comente e ou agradeça quem contribuiu com a solução.

Obrigado!
[Email] [WWW] [Yahoo!] [MSN]
ThiagoSilva

JavaC Membro

Membro desde: 16/06/2016 09:54:46
Mensagens: 16
Offline

jeroqueiroz wrote:Conseguiram fazer a comunicação Web usando o A3 ?


Local esta tudo funcionando jeroqueiroz.
Agora que subi para o servidor, estou com essa dificuldade em fazer um get no serviço rest no localhost.
Esse serviço vai ficar em um tomcat na máquina do cliente, funcionando como uma espécie de "plugin" para usar o certificado A3 e enviar os arquivos xml assinados para o servidor.
jeroqueiroz

Moderador
[Avatar]

Membro desde: 11/06/2011 09:45:18
Mensagens: 1348
Localização: Bahia
Offline

Você criou um serviço local que roda na maquina do cliente para então fazer requisições rest a um web service ?

Ele não funciona tolamente Web (Nuvem), correto?

Jeremias Santos
Seguir no Twitter @jeroqueiroz
Blog Jeroqueiroz


Projeto NF-e, CT-e, CC-e? Comece Por Aqui!


Membros do fórum,

Usem a tag [code] e [/code] quando postarem Códigos Java e ou exemplos de XMLs.
Evitem tópicos duplicados.
Tópico solucionado? Edite o primeiro post e coloque [RESOLVIDO] no final do título.
Evitem reviver tópicos antigos.

O tópico resolveu seu problema? Seja gentil, comente e ou agradeça quem contribuiu com a solução.

Obrigado!
[Email] [WWW] [Yahoo!] [MSN]
ThiagoSilva

JavaC Membro

Membro desde: 16/06/2016 09:54:46
Mensagens: 16
Offline

Isso mesmo jeroqueiroz.
O sistema envia uma requisição para esse serviço rest que esta no localhost, esse cara vai assinar enviar e retornar o xml de distribuição para o sistema.

Este problema que eu estava consegui resolver, era na vdd um conflito de segurança entre https e http.
jeroqueiroz

Moderador
[Avatar]

Membro desde: 11/06/2011 09:45:18
Mensagens: 1348
Localização: Bahia
Offline

Preciso fazer o A3 funcionar para uma aplicação web rodando servidor remoto, assim como utilizávamos com o Applet pegando da USB do Cliente.

Faz ideia de alguma forma para tal?

Jeremias Santos
Seguir no Twitter @jeroqueiroz
Blog Jeroqueiroz


Projeto NF-e, CT-e, CC-e? Comece Por Aqui!


Membros do fórum,

Usem a tag [code] e [/code] quando postarem Códigos Java e ou exemplos de XMLs.
Evitem tópicos duplicados.
Tópico solucionado? Edite o primeiro post e coloque [RESOLVIDO] no final do título.
Evitem reviver tópicos antigos.

O tópico resolveu seu problema? Seja gentil, comente e ou agradeça quem contribuiu com a solução.

Obrigado!
[Email] [WWW] [Yahoo!] [MSN]
ThiagoSilva

JavaC Membro

Membro desde: 16/06/2016 09:54:46
Mensagens: 16
Offline

Então jeroqueiroz , eu abri esse tópico com essa dúvida também rs
Pesquisei bastante a respeito, e pelo que vi o "substituto" do Applet é o Java Web Start, mas não cheguei a estudar o uso desse recurso, abracei a idéia que o lplana sugeriu.
jeroqueiroz

Moderador
[Avatar]

Membro desde: 11/06/2011 09:45:18
Mensagens: 1348
Localização: Bahia
Offline

Usando local não resolve meu problema porque estou precisando que a aplicação seja totalmente web.

Jeremias Santos
Seguir no Twitter @jeroqueiroz
Blog Jeroqueiroz


Projeto NF-e, CT-e, CC-e? Comece Por Aqui!


Membros do fórum,

Usem a tag [code] e [/code] quando postarem Códigos Java e ou exemplos de XMLs.
Evitem tópicos duplicados.
Tópico solucionado? Edite o primeiro post e coloque [RESOLVIDO] no final do título.
Evitem reviver tópicos antigos.

O tópico resolveu seu problema? Seja gentil, comente e ou agradeça quem contribuiu com a solução.

Obrigado!
[Email] [WWW] [Yahoo!] [MSN]
jeroqueiroz

Moderador
[Avatar]

Membro desde: 11/06/2011 09:45:18
Mensagens: 1348
Localização: Bahia
Offline

Cara o certificado é utilizado apenas para assinar o XML ou no momento da requisição SOAP a Sefaz também se faz necessário uso do mesmo? No Cenário A3 eu não me recordo.

Saberia me informar ?

Jeremias Santos
Seguir no Twitter @jeroqueiroz
Blog Jeroqueiroz


Projeto NF-e, CT-e, CC-e? Comece Por Aqui!


Membros do fórum,

Usem a tag [code] e [/code] quando postarem Códigos Java e ou exemplos de XMLs.
Evitem tópicos duplicados.
Tópico solucionado? Edite o primeiro post e coloque [RESOLVIDO] no final do título.
Evitem reviver tópicos antigos.

O tópico resolveu seu problema? Seja gentil, comente e ou agradeça quem contribuiu com a solução.

Obrigado!
[Email] [WWW] [Yahoo!] [MSN]
ThiagoSilva

JavaC Membro

Membro desde: 16/06/2016 09:54:46
Mensagens: 16
Offline

No momento da requisição o certificado é utilizado também jeroqueiroz.
 
Índice dos Fóruns » Java Avançado
Ir para:   
Powered by JForum 2.1.9 © JForum Team