-
Notifications
You must be signed in to change notification settings - Fork 482
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Problema já conhecido: could not create ssl/tls secure channel. #519
Comments
@robertorp leia as duas insues, elas tratam do mesmo assunto mas essa esta bem "mais rica em informações" e mata todas as possibilidades anteriores além de agora eu ter certeza que o recurso certificado ter sido liberado e saber também que mudando o SecurityProtocol o problema é sanado. |
Olá! |
@marciojmuller |
Fiz mais alguns testes e nada ainda de sanar o problema. Vem acontecendo com frequencia, como eu disse mudando o SecurityProtocol funciona nem precisa sair do sistema, so mudar pra um, transmitir, mudar pra outro e transmitir. E é justamente isso que me deixa de cabelo em pé. |
Possível solução para o problema. |
@robertorp a solução do colega ja havia sido implementada por mim como te mostrei no código no dia 08/09. Eu acredito que consegui sanar o problema, mas de outra forma, eu basicamente troco o protocolo de segurança e tento novamente quando recebo o erro acima, |
…ilbioteca com certificado A3, ocorria o erro "A solicitação foi anulada: Não foi possível criar um canal seguro para SSL/TLS". Atualmente era possível resolver o erro mudando o procolo SSL por meio de ServicePointManager.SecurityProtocol. Mesmo assim a aplicação poderia parar de funcionar depois de algum tempo. A correção foi testada pelo colaborador Marcus Vinícios que estava enfrentando esse problema e dispunha de um certificado A3 para testes. O problema havia sido relatado nas issues abaixo: - #565; - #519; - #428;
…ilbioteca com certificado A3, ocorria o erro "A solicitação foi anulada: Não foi possível criar um canal seguro para SSL/TLS". Atualmente era possível resolver o erro mudando o procolo SSL por meio de ServicePointManager.SecurityProtocol. Mesmo assim a aplicação poderia parar de funcionar depois de algum tempo. A correção foi testada pelo colaborador Marcus Vinícios que estava enfrentando esse problema e dispunha de um certificado A3 para testes. O problema havia sido relatado nas issues abaixo: - #565; - #519; - #428; Fonte: https://stackoverflow.com/questions/2859790/the-request-was-aborted-could-not-create-ssl-tls-secure-channel
… ServicePointManager.Expect100Continue parece que esta nada tem haver com o certificado. Em vez disso ela torna mais eficiente o tráfego de informações uma vez que permite que o cliente envie apenas o cabeçalho para o servidor para ver se este irá aceitar a requisição, antes de mandar todo o conteúdo Como a área de cabeçalho foi eliminada para o layout 4.0 da NFe, parece não fazer sentido ligar essa propriedade no momento e nem condicioná-la ao uso de certificados A3. A decisão de não atribuir valor "true" à propriedade ServicePointManager.Expect100Continue poderá ser revertida posteriormente caso se comprove uma relação direta dessa propriedade com os problemas relatados nas issues: - #565; - #519; - #428.
Bom dia a todos,
Meus dois ultimos PRs (https://github.com/adeniltonbs/Zeus.Net.NFe.NFCe/pull/511 e https://github.com/adeniltonbs/Zeus.Net.NFe.NFCe/pull/518) foram no sentido de resolver o velho problema que tinhamos (existem mais relatos de outros usuarios aqui) de que na segunda/terceira transmissão de algum DFe o erro "could not create ssl/tls secure channel."
Vamos usar o CTe como exemplo aqui que tenho um caso de uso interessante.
Bem eu usava uma classe STATIC tipo "MeuSistemaCTe" que fazia todo o serviço, convertia meu objeto cte no objeto Zeus, transmitia, consultava, cancelava, etc. Mudei isto pra uma classe "instanciavel" e eu chama o objeto, ou seja, nao ficava mais preso sempre em memoria por ser static.
Isto somado aos meus PRs reduziram o problema, entretanto hoje ocorreu o mesmo problema em um cliente.
Este cliente teve toda a paciência do mundo pra deixar eu "brincar" com a maquina e o certificado dele (tipo A3), fiz o erro aparecer apos tentar emitir um cte com um erro claro (um cfop invalido), corrigir e tentar enviar o mesmo cte.
Sem fechar o sistema, mudei o "ServicePointManager.SecurityProtocol" de SSL3 para TLS12 e funcionou.
Tentei enviar outro CTe ainda com o sistema aberto em TLS12 (nao mudei as configs) e erro aconteceu de novo, mude para TLS e funcionou.
Alguém pode me dar uma luz sobre isto?
SO: Windows 7 64bits SP1
.Net instalado: 4.6.2
Linguagem: C# 6
.Net usado pelo sistema: 4.6.1
Tipo de projeto: winforms, mas uso ClassLibrary para a comunicação com o componente.
Certificado: A3 em cartão.
The text was updated successfully, but these errors were encountered: