cancel
Showing results for 
Search instead for 
Did you mean: 

Comunicação com SEFAZ via proxy server

RafaelVieira
Active Participant
0 Kudos

Bom dia,

Alguém saberia informar se, ao invés da utilização de um certificado digital importado no Visual Admin (PI 7.01) e posteriormente configurando keystore entry e view nos canais SOAP Receiver, configurar um proxy server no adapter (Configure Proxy > host e port / Conf. Proxy User Authentication > user e pwd) e não usar o certificado digital, seria o suficiente para estabelecer uma conexão confiável entre PI e SEFAZ ?

Obrigado,

Rafael.

Accepted Solutions (1)

Accepted Solutions (1)

former_member182114
Active Contributor
0 Kudos

Bom dia Rafael,

Se você informou o keystore entry e view no SOAP Receiver então você está usando certificado digital.

Falta ainda importar os certificados públicos da Sefaz para o Trusted CA's no keystorage do PI.

Além do mais, PI 7.01? Que serviço você está instalando?

Você está recebendo algum erro?

Atenciosamente, Fernando Da Rós

RafaelVieira
Active Participant
0 Kudos

Não Fernando, seria pra deixar as keystores em branco (não usar certificado).

Ao invés disso, utilizar apenas os dados do proxy server nos adapters.

Pode ser feito dessa forma?

E ainda assim, teria que importar os certificados da SEFAZ (pra o PI confiar na SEFAZ) ?

Estou configurando os cenários do XML 2.0 com GRC 10.0.

Valeu !

henrique_pinto
Active Contributor
0 Kudos

Sao 2 coisas diferentes e independentes.

O Proxy só vai redirecionar a HTTP Request para o domínio da rede externa (internet), ele nao altera o protocolo de comunicacao (HTTP / HTTPS) nem tampouco os parametros do handshake SSL (i.e. certificado).

Assim:

  • Deixar de usar o certificado nao é possível;
  • Usar internet proxy ou ter conexao direta à internet no servidor do PI são opções possíveis.
RafaelVieira
Active Participant
0 Kudos

Acho entao que isso responde a questao, não é possível tecnicamente configurar os cenários que comunicam com a SEFAZ sem ter os certificados no Visual Admin.

Valeu !!

henrique_pinto
Active Contributor
0 Kudos

A única opção (não recomendada) de vc nao ter os certificados no PI seria vc ter uma interface GRC <-> BPM (PI) <-> Algum outro Middleware <-> SEFAZ. No caso, o receiver adapter SOAP do PI nao chamaria a SEFAZ direto mas sim uma interface do outro middleware, que por sua vez chamaria a SEFAZ, sincronamente. O certificado nesse caso deveria ser armazenado e configurado no outro middleware.

Já vi clientes fazendo isso pra manter o PI na intranet e o outro middleware na DMZ. Já vi esse cenario com Biztalk, WebLogic, Tibco e até mesmo com outro PI (e.g. um PI interno e um PI DMZ). Porém, não se justifica, pois com um proxy de internet simples vc elimina esse outro middleware. Nunca vi ninguém considerando esse cenário para evitar de ter o certificado no PI, por razões de segurança.

O que é relativamente comum de se ver é empresas separarem o certificado da assinatura digital (que tem q ser um por raiz de CNPJ) do certificado de SSL (que pode ser 1 único para todo o grupo/conjunto de empresas). Dessa maneira, o handling dos certificados é independente, e vc mantém os N certificados de assinatura na PSE do NFE mas apenas 1 certificado de SSL no Visual Admin.

Answers (1)

Answers (1)

Former Member
0 Kudos

Olá Rafael!

Não creio que seja uma alternativa adequada. Se for o GRC 10.0, você ainda tem os certificados na STRUST, além dos certificados próprios (para assinatura dos XMLs) e certificados públicos dos parceiros (fornecedores por exemplo), ainda deverão ser mantidos para o cenário B2B.

O seu proxy iria garantir que uma mensagem no protocolo HTTP recebida pelo receiver SOAP channel seria transportada com HTTPS para a SEFAZ, mas igual necessitaria dos certificados instalados. Não vejo vantagens em transferir essa responsabilidade para o proxy (e que eu saiba ele não faria a assinatura do HTTPS).

Att,

Lucas Santos

RafaelVieira
Active Participant
0 Kudos

Mas é assim (como estou imaginando): instalação dos certificados privados na STRUST pros cenários outbound e configuração na SPRO do GRC já iria garantir a assinatura. Esse proxy server iria apenas estabelecer a comunicação confiável entre PI e SEFAZ.

Para os B2Bs, ainda teria que importar os certificados parceiros na STRUST, mas isso seria normal.

Ainda assim, vocês acham que esse cenário é impossível (ou ao menos inviável)?

former_member182114
Active Contributor
0 Kudos

Bom dia Rafael,

Isto é mais comum no sentido contrário (proxy reverso) onde você expõe o proxy à internet com https (server certificate) e na DMZ tem vários web servers para atender às requisições.

Nem sei se faz sentido. Qualquer máquina na sua rede (salvo restrições extras por IP) poderia enviar à Sefaz XML's usando o canal seguro provido pelo proxy (nem sei se é possível, mas tô só suponto que sim).

E se tiver apenas um proxy o mesmo certificado seria usado para DEV/QAS/PRD ao mesmo tempo, ou seja, não teria como testar um novo certificado sem parar produção. Também é mais uma camada onde os logs ficam em outro ambiente (talvez até com outro time).

Claro que algumas ponderações aqui estou pensando em clientes onde procedimentos são rígidos, os times são múltiplos com responsabilidades específicas. Então saindo do campo das possibilidades e tentando entender sua realidade (talvez seu cenário ou de seu cliente seja simples). O que você pretende fazer se isto for possível?

Atenciosamente, Fernando Da Rós

RafaelVieira
Active Participant
0 Kudos

Fernando, neste cliente existe uma equipe responsável pelas interfaces e, para comunicação com qualquer sistema externo, a política deles diz que esta comunicação deve ser feita através do proxy server.

Quis confirmar se existia a possibilidade de estabelecer a conexão com as Sefazes através desta camada do proxy e assim não utilizar os certificados digitais.

Pelo que vi das respostas aqui, tecnicamente é até possível utilizar esta camada intermediária entre PI e Sefaz, mas além de não ser possível estabelecer o handshake, não faz muito sentido uma vez que o certificado digital teria que ser instalado no proxy server também.

De volta aos certificados então 😃

Muito obrigado!

Rafael Da Silva.

henrique_pinto
Active Contributor
0 Kudos

Se vc tiver os certificados no Visual Admin, nao precisa instalar certificado no proxy nao.

Faz sentido usar proxy sim, pois assim o PI nao precisa ter acesso externo, pode estar na intranet e nao na DMZ.

RafaelVieira
Active Participant
0 Kudos

Henrique, a questão é: utilizar proxy server e não ter que utilizar os certificados no Visual Admin.

Entendi aqui das respostas que estes não são 2 eventos mutuamente exclusivos, então utilizar um proxy não livraria a necessidade de instalação de um certificado privado (seja no VA ou no proxy ou no middleware da 3a camada - como Tibco).