Ir para conteúdo
  • Cadastre-se

dev botao

  • Este tópico foi criado há 2611 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado
1 minuto atrás, juuninho disse:

Isso, eu estava me referindo ao .NET sim... foi mal!

Certo, então independente de S.O a dependência sera do .NET 4.0 nesse caso, certo?

Que no caso do XP, só atualizando para o SP3.

Essa eSocialSignature.dll e Security.Cryptografy.dll estão versionadas em algum lugar?

Obrigado Tiago


Afirmativo para todas as questões!
https://github.com/tiagopsilva/eSocialSignature

Postado
Agora, juuninho disse:

Sabe me dizer se essa solução é a que será adotada nos fontes do Acbr para o e-social?

Valeu Tiago, obrigado!

Não, essa é uma solução temporária totalmente feita pelos usuários da biblioteca do eSocial.

  • 2 semanas depois ...
Postado
Em 27/12/2017 at 14:39, Jeihcio Francis disse:

Eu acabei resolvendo o problema que mencionei acima da seguinte forma: 

 

Configurações do componente:

 

If ( Obj.Modelo = A3 ) Then
         Begin
            If FConsultar Then
               AACBreSocial.Configuracoes.Geral.SSLLib := libCapicom
            Else
               AACBreSocial.Configuracoes.Geral.SSLLib := libCustom;

            AACBreSocial.Configuracoes.Geral.SSLXmlSignLib := xsNone;
            AACBreSocial.Configuracoes.Certificados.NumeroSerie := Obj.NumeroSerie;
            AACBreSocial.SSL.CarregarCertificado;
         End;

 

Obs: Eu sei que por default o 'SSLXmlSignLib' vem 'xsNone', mas eu quis deixar explicitamente no código do meu controller que é obrigatório setar esse valor no atributo. 

 

Depois e antes de enviar eu faço:

 

{ Assinatura digital }
ACBreSocial1.AssinarEventos;

{ Enviar dados ao webservice }
ACBreSocial1.Configuracoes.Geral.SSLXmlSignLib := xsXmlSec;
ACBreSocial1.Enviar(getTipoGrupo(nTabela));

 

Antes de enviar é obrigatório setar 'xsXmlSec'  para a propriedade 'SSLXmlSignLib', pois no método 'Enviar' da classe 'TACBreSocial' que fica dentro do arquivo 'ACBReSocial' existe a seguinte verificação: 

 

if SSL.SSLXmlSignLib <> xsXmlSec then
    raise EACBreSocialException.Create('Necessário DigestMethod Algorithm = sha256 -> SSLLib = libOpenSSL'); 

 

Essas configurações eu fiz no meu código da minha aplicação, já no componente da ACBR tive que fazer as seguintes alterações no arquivo 'ACBrDFeSSL':

 

Método 'Assinar' da classe 'TDFeSSLXmlSignClass':

 

function TDFeSSLXmlSignClass.Assinar(const ConteudoXML, docElement,
  infElement: String; SignatureNode: String; SelectionNamespaces: String;
  IdSignature: String; IdAttr: String): String;
var
  xml: PAnsiChar;
begin
   FpDFeSSL.SSLCryptLib := cryCapicom;

   xml := PAnsiChar(AnsiString(ConteudoXML));
   TESocialSignature.SignSHA256Ansi(xml, PAnsiChar(AnsiString(infElement)),
                                         PAnsiChar(AnsiString(FpDFeSSL.NumeroSerie)),
                                         PAnsiChar(AnsiString(FpDFeSSL.Senha)));
   Result := string(AnsiString(xml));
end;

 

e no método 'Validar' dessa mesma classe:

 

function TDFeSSLXmlSignClass.Validar(const ConteudoXML, ArqSchema: String; out
  MsgErro: String): Boolean;
var
  DFeSSL: TDFeSSL;
begin
   DFeSSL := TDFeSSL.Create;
   Try
      DFeSSL.SetSSLXmlSignLib(xsXmlSec);
      Result := DFeSSL.Validar(ConteudoXML, ArqSchema, MsgErro);
   Finally
      DFeSSL.Free;
   End;
end;

 

Essas foram as unicas alterações que fiz para resolver o problema....

deixei exataente assim e está dando "metodo Enviar não implementado em TDFeSSLHttpClass"
Aconteceu isso pra alguem?

  • Moderadores
Postado
47 minutos atrás, juuninho disse:

Boa tarde!

Alguém sabe me informar se essa versão atualizada do e-Social que foi subida para o trunk, já contempla a assinatura sha-256 com o A1 e A3 (fora o PFX)?

Se sim, qual as configs que deve-se utilizar?

Obg!

 

só testando.

veja o exemplo e tente rodar.

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Transparent-02.png
 

 

Postado

Pessoal, Bom dia 

Show de bola esse Componente o exemplo deu certinho sem precisar registrar a DLL com Regasm

Só estou com uma dúvida quando assino vários arquivos e mando pro WebService no A3
Da esse erro

raised exception class ESOAPHTTPException with message 'Erro no suporte a canais seguros - URL:https://webservices.producaorestrita.esocial.gov.br/servicos/empregador/enviarloteeventos/WsEnviarLoteEventos.svc - SOAPAction:http://www.esocial.gov.br/servicos/empregador/lote/eventos/envio/v1_1_0/ServicoEnviarLoteEventos/EnviarLoteEventos'. 

 

Que e o mesmo erro quando a senha não é informada

 

e Quando fecho a aplicação e envio um arquivo assinado direto não da esse erro e abre aquela janela padrão pedindo a senha do certificado  e como se o o componente salvasse a senha do certificado internamente na memoria do Windows e depois de alguns segundos ele removesse

 

Att,

 

Henrique Campos

Postado
16 minutos atrás, Henrique Manoel de Campos disse:

Pessoal, Bom dia 

Show de bola esse Componente o exemplo deu certinho sem precisar registrar a DLL com Regasm

Só estou com uma dúvida quando assino vários arquivos e mando pro WebService no A3
Da esse erro

raised exception class ESOAPHTTPException with message 'Erro no suporte a canais seguros - URL:https://webservices.producaorestrita.esocial.gov.br/servicos/empregador/enviarloteeventos/WsEnviarLoteEventos.svc - SOAPAction:http://www.esocial.gov.br/servicos/empregador/lote/eventos/envio/v1_1_0/ServicoEnviarLoteEventos/EnviarLoteEventos'. 

 

Que e o mesmo erro quando a senha não é informada

 

e Quando fecho a aplicação e envio um arquivo assinado direto não da esse erro e abre aquela janela padrão pedindo a senha do certificado  e como se o o componente salvasse a senha do certificado internamente na memoria do Windows e depois de alguns segundos ele removesse

 

Att,

 

Henrique Campos

Verifica se as configurações no IE estão dessa forma.

image.png.adcfa99c01286437b561174c076a7f77.png

Postado

Arce, Boa tarde mesma com essa configurações voltou a dar o erro 

raised exception class ESOAPHTTPException with message 'Erro no suporte a canais seguros - URL:https://webservices.producaorestrita.esocial.gov.br/servicos/empregador/enviarloteeventos/WsEnviarLoteEventos.svc - SOAPAction:http://www.esocial.gov.br/servicos/empregador/lote/eventos/envio/v1_1_0/ServicoEnviarLoteEventos/EnviarLoteEventos'.

 

image.png.ae2d4ab8c063d35f3f0af6284d2d6f6c.png

 

Obrigado

 

Henrique Campos

  • 3 semanas depois ...
  • Este tópico foi criado há 2611 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.

The popup will be closed in 10 segundos...
The popup will be closed in 10 segundos...