Jump to content
cjulio

Utilizar Webservices da AT

Recommended Posts

desconfiado

Eu gostava que alguém me dissese onde foram buscar  "DGITA Issuing CA2" e "DGITA Root CA",

Toda a gente fala nesses certificados mas ninguem diz de onde os tiraram.

 

Share this post


Link to post
Share on other sites
pacpintob
27 minutos atrás, George De Luca disse:

Boas!

Todos com o mesmo problema de comunicação ainda. :(

Saque o ficheiro compactado contendo os certificados pelo link a seguir:

https://www.evernote.com/l/APA7nr2u729EWJmsnGqvQAjZtbq-6zlbBks/

Eu irei deixar este link até amanhã dia 23-07-2019.

George

Obrigado! Por acaso não tens o ficheiro .cer? estou com problemas a converter o crt em cer...

Muito obrigado pela ajuda!

Share this post


Link to post
Share on other sites
Sergio.

DGITA_Issuing_CA2.pem, portaldasfinancasgovpt.pam ou .cer são certificados que validam a comunicação entre a AT e o utilizador, só depois de ser aceite a comunicação é que é feito o processo da guia de transporte.

O problema está em autenticar a comunicação com o servidor da AT.

Share this post


Link to post
Share on other sites
jncevcosta

Bem eu ainda não consegui colocar a comunicar. No meu caso estou a usar a versão de testes dos webservices.

Não alterei o código, a única coisa que fiz foi ir ao site das finanças e descarregar os certificados mais actuais e corri os seguintes comandos:

 

				* Extrair TestesWebServices.pfx para .pem (Chave + Certificado)
                *
                *       - Extrair a chave privada para PEM  ( Password: TESTEwebservice )
                *
                *       Código :
                *               openssl pkcs12 -in TestesWebServices.pfx -nocerts -out pfxKey.pem
                *
                *
                *
                *       -Extrair o certificado
                *
                * 		Código :
                *               openssl pkcs12 -in TestesWebServices.pfx -clcerts -nokeys -out pfxcert.pem

 

E tenho o seguinte código para o curl

curl_setopt($curl, CURLOPT_FRESH_CONNECT, true);
curl_setopt($curl, CURLOPT_HTTPHEADER, array(
    'Content-Type:text/xml;Charset=UTF-8',
    'Accept: text/xml',
    'Cache-Control: no-cache',
    'SoapAction=' . $SoapAction
));
curl_setopt($curl, CURLOPT_URL, trim($Action));
curl_setopt($curl, CURLOPT_VERBOSE, false); // para ver o que se passa...
curl_setopt($curl, CURLOPT_AUTOREFERER, true);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $xxxml);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($curl, CURLOPT_SSLCERT, $cert_pem); // o certificado em formato PEM (.pem)
curl_setopt($curl, CURLOPT_SSLCERTTYPE, 'PEM');
curl_setopt($curl, CURLOPT_SSLCERTPASSWD, $pass_cert);
curl_setopt($curl, CURLOPT_SSLKEY, $key_pem);
curl_setopt($curl, CURLOPT_SSLKEYPASSWD, $pass_cert);
curl_setopt($curl, CURLOPT_SSLKEYTYPE, 'PEM');
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);

 

Agora tenho este erro:

unable to set private key file: '/home/dcweb/faturacao/node/at/certificados/desenvolvimento/pfxKey.pem

 

Alguém que tenha passado pelo mesmo que me possa ajudar ?

Share this post


Link to post
Share on other sites
Nuno Bagulho Marques
2 minutos atrás, desconfiado disse:

Eu gostava que alguém me dissese onde foram buscar  "DGITA Issuing CA2" e "DGITA Root CA",

Toda a gente fala nesses certificados mas ninguem diz de onde os tiraram.

 

Bom dia

Se não me engano, foi o colega Sergio. que os disponibilizou, num post aqui do forum. Trata-se de um conjunto de ficheiros disponibilizados pela AT, no início desta "cegada" em 2013, ou 2017, salvo erro

Share this post


Link to post
Share on other sites
Sergio.
3 minutos atrás, desconfiado disse:

Eu gostava que alguém me dissese onde foram buscar  "DGITA Issuing CA2" e "DGITA Root CA",

Toda a gente fala nesses certificados mas ninguem diz de onde os tiraram.

 

Essa informação está umas paginas a trás, mas não é mais do que aquilo que está em portaldasfinancasgovpt.* enviado pelas finanças nos últimos dias.

Share this post


Link to post
Share on other sites
FernandoPereira
4 minutos atrás, pacpintob disse:

Obrigado! Por acaso não tens o ficheiro .cer? estou com problemas a converter o crt em cer...

Muito obrigado pela ajuda!

Boas,

Pois o cer da chave pública também me dava jeito.

Conseguiste?

Share this post


Link to post
Share on other sites
laboss

Viva já tentei o seguinte, tentei adicionar o DGITA_Issuing_CA2.pem e o portaldasfinancasgovpt.pem ao .cer enviado para nos, e gerar um novo PFX com o comando

openssl.exe pkcs12 -export -inkey XXXX.key -in XXXX.pem -out NOVO.pfx

Mas o erro não sai, também tentei adicionar o DGITA_Issuing_CA2.pem e o portaldasfinancasgovpt.pem no client certificates do meu request.mas sem sucesso, da sempre erro, se adicionar os CA a minha store de certificados funciona, mas não queria estar a fazer isto em todos os clientes. Estou a usar .net para efectuar o pedido e antigamente apenas fazia 

                cert.Import(CaminhoPFX, SenhaCertificado, X509KeyStorageFlags.DefaultKeySet)
                request.ClientCertificates.Add(cert)

Alguém consegue dar uma luz? Consigo meter os CA direito no meu HttpWebRequest? 

Share this post


Link to post
Share on other sites
ccorreia
23 minutos atrás, Sergio. disse:

estão lá os 3 😉

Estão onde?

No email enviado pela AT da semana passada?

Share this post


Link to post
Share on other sites
FernandoPereira
2 minutos atrás, FernandoPereira disse:

Boas,

Pois o cer da chave pública também me dava jeito.

Conseguiste?

Eu consigo converter o ficheiro crt em cer, mas depois falta-me a cifra das finanças, para associar ao cer.

Alguém sabe como obtenho isso?

Share this post


Link to post
Share on other sites
George De Luca
10 minutos atrás, pacpintob disse:

Obrigado! Por acaso não tens o ficheiro .cer? estou com problemas a converter o crt em cer...

Muito obrigado pela ajuda!

Se está a se referir a chave pública (chavepublicaat.cer), meti no mesmo link.

https://www.evernote.com/l/APA7nr2u729EWJmsnGqvQAjZtbq-6zlbBks/

 

George

Edited by George De Luca
  • Vote 1

Grato pela atenção,

George De Luca

www.deluca.eti.br

Share this post


Link to post
Share on other sites
Nuno Silva
9 minutes ago, Jose Guerreiro said:

Boas..

Finalmente consegui colocar a funcionar, mas apenas em sistema local.

Fiz o seguinte:

o certificado "portaldasfinancasgovpt.crt" coloquei no certificado "local computer" > Trusted Root Certification Authorities

Os certificados "DGITA Issuing CA2" e "DGITA Root CA" coloquei no certificados "current user" > Trusted Root Certification Authorities

 

Agora falta colocar a funcionar no website :(

Obrigado a todos

É isso mesmo.

Por código tens de incluir o da Dgita no pfx de autenticação e os outros no truststore.

Share this post


Link to post
Share on other sites
paulofvoliveira
38 minutes ago, abrito said:

Eu consegui por a funcionar apenas instalando o *.portaldasfinancas.gov.pt que enviaram e os "DIGITA Issuing CA2" e "DIGITA Root CA" no windows.

apenas isso

não alterei nada no software

"DIGITA Issuing CA2" e "DIGITA Root CA"

Onde estão estes certificados?

Estranhamente tenho duas máquinas onde não foi feito nenhuma instalação de certificados e continuam a comunicar!!!

Share this post


Link to post
Share on other sites
Ghonwolf

Digam-me sinceramente.
Adianta estar a fazer alterações aos nossos SW's ou aguardamos que os Fonsecas resolvam o problema do lado deles?

Share this post


Link to post
Share on other sites
Nuno Bagulho Marques
1 minuto atrás, Ghonwolf disse:

Digam-me sinceramente.
Adianta estar a fazer alterações aos nossos SW's ou aguardamos que os Fonsecas resolvam o problema do lado deles?

olá

Partilho a tua dúvida. Mas é quase meio-dia e nada. Isto é inacreditável!

Share this post


Link to post
Share on other sites
desconfiado

O certificado que a ASI enviou no ficheiro "portaldasfinancasgovpt" não tem "DIGITA Issuing CA2" e "DIGITA Root CA" apenas tem "USERTrust RSA Certification Authority" e "Sectigo RSA Organization Validation Secure Server CA". Ainda gostava de saber onde foram desencantar os DGITA.

Share this post


Link to post
Share on other sites
oalves

Estou a utilizar em site PHP e nem resposta da AT recebo no webservice.

Já experimentei como muitos dizem em cima, para colocar os 2 .pem dentro do nosso .pem, mas mesmo assim, não recebo qualquer tipo de resposta (resposta em branco).

Reparei também que no site da AT https://faturas.portaldasfinancas.gov.pt/testarLigacaoWebService.action ao testar a ligação, dá erro.

Será indicação que o problema é deles?

Share this post


Link to post
Share on other sites
Castanha

Bom dia a todos ..... já consegui comunicar com sucesso .... não vou saber responder o porquê .... mas instalei conforme aqui referiram o certificado que enviaram por email no meu servidor... mas o erro persisitiu ... agora de um momento para o outro começou a funcionar.

Share this post


Link to post
Share on other sites
PC1

Bom dia. 

Como funcionou do meu lado (aplicação .Net sobre IIS que comunica guias):

- Apenas reinstalei todos os certificados. Provavelmente coloquei em stores que não seria necessário.

- Os certificados que reinstalei são: DGITA Issuing CA1, DGITA Issuing CA2, DGITA Root CA, *.portaldasfinancas.gov.pt, e o certificado privado (PFX).

- Instalei da seguinte forma: click no certificado e deixar o Windows escolher a store mais indicada; posteriormente instalei na Trusted Root Cert. Auth e depois na Trusted Peple.

- Repeti o passo anterior para todos os certificados, tudo para o current user.

- Até este momento não tinha funcionado, mas depois forcei a aplicação .Net, a ligar por TLS1.2.

E funcionou. Não foi preciso mexer nos certificados.

Edited by PC1
erro

Share this post


Link to post
Share on other sites
Nuno Bagulho Marques
Agora, Castanha disse:

Bom dia a todos ..... já consegui comunicar com sucesso .... não vou saber responder o porquê .... mas instalei conforme aqui referiram o certificado que enviaram por email no meu servidor... mas o erro persisitiu ... agora de um momento para o outro começou a funcionar.

Será uma cache? que ainda armazena o certificado antigo?

Share this post


Link to post
Share on other sites
Sergio.
3 minutos atrás, paulofvoliveira disse:

"DIGITA Issuing CA2" e "DIGITA Root CA"

Onde estão estes certificados?

Estranhamente tenho duas máquinas onde não foi feito nenhuma instalação de certificados e continuam a comunicar!!!

Vamos por partes.

Na nossa ultima renovação de certificado vinha o ficheiro PublicChainCA2.p7b que continha:

m21d6dd.png

Não é mais do que as autorizações para comunicar com o site.

Autorizações essas que foram actualizadas com o termino do *.portaldasfinancasgovpt.pt

Neste dia 18/7 a ASI - Certificados digitais enviou-nos o ficheiro portaldasfinancas.zip

Com 2 ficheiros, portaldasfinancasgovpt.pem e o portaldasfinancasgovpt.crt que contém:

QG3aEAb.png

*.portaldasfinancas.gov.pt substituiu o que terminou e os 2 de cima substituem o Issuig CA2 e root CA

Espero ter esclarecido melhor.

 

Share this post


Link to post
Share on other sites
Nuno Silva
7 minutes ago, desconfiado said:

O certificado que a ASI enviou no ficheiro "portaldasfinancasgovpt" não tem "DIGITA Issuing CA2" e "DIGITA Root CA" apenas tem "USERTrust RSA Certification Authority" e "Sectigo RSA Organization Validation Secure Server CA". Ainda gostava de saber onde foram desencantar os DGITA.

;) Olha para o que recebeste quando pediste o certificado de autenticação, não tens lá um .p7b?

 

Basicamente agora temos de fazer as coisas como deveriam ser feitas desde início, ter o caminho de certificação completo no pfx.

Edited by Nuno Silva
  • Vote 1

Share this post


Link to post
Share on other sites
jncevcosta
7 minutos atrás, Nuno Bagulho Marques disse:

olá

Partilho a tua dúvida. Mas é quase meio-dia e nada. Isto é inacreditável!

Quando a malta aqui do escritório se passava quando a AT mudava os certificados eu questionava-me se realmente era assim tão mau.

Agora que trabalho com eles parecem autenticos amadores. Como é que a AT efectua estas alterações sem garantir que realmente o necessário é só alterar os certificados? 

Porque é que não disponibilizam um tutorial a explicar como se extraem as coisas ?

Ainda estou só a trabalhar com os ws de testes e mesmo pegando no certificado deles correndo os comandos que tinha corrido anteriormente deixou de funcionar como disse anteriormente e nem sequer consigo perceber onde está o problema. 

O problema disto tudo é que depois a culpa é sempre do programador.

Share this post


Link to post
Share on other sites
rolando_rocha
Em 20/07/2019 às 13:55, Sergio. disse:

Boa Tarde,

 

Finalmente resolvi o assunto.

Só lamento a falta de suporte/informação por parte da AT

A verdade seja dita que o ficheiro PublicChainCA2.p7b já era enviado juntamente com o pedido de novo certificado, mas também é verdade que nunca o usei até hoje.

Eu trabalho em ambiente Linux e tive que converter para formato PEM (DGITA_Issuing_CA2.pem), Aqui estão as 2 versões

No Curl simplesmente adicionei :

--cacert DGITA_Issuing_CA2.pem

Passou a funcionar.

Obrigado @Sergio.. Resolveu.

Deixem-me deixar aqui alguma ajuda e corrijam-me se estou errado. Aquando da renovação do nosso certificado enquanto produtores de software é enviado no .ZIP o PublicChainCA2.p7b (no interior DGITA_Issuing_CA2.pemque até agora não era utilizado e funcionava. A partir de sexta-feira parece que fizeram com que este novo certificado fosse necessário. O certificado pode ser obtido a partir do Link acima do @Sergio.

Quanto aos certificados que foram enviados na sexta-feira (portaldasfinancasgovpt) são apenas a quem faz ligação via SSL. Eu cá faço por TLS e não preciso desse certificado.

Um abraço a todos e parabéns a este Fórum.

Edited by rolando_rocha
  • Vote 1

Share this post


Link to post
Share on other sites
jncevcosta
Agora, rolando_rocha disse:

Obrigado @Sergio.. Resolveu.

Deixem-me deixar aqui alguma ajuda e corrijam-me se estou errado. Aquando da renovação do nosso certificado enquanto produtores de software é enviado no .ZIP o PublicChainCA2.p7b (no interior DGITA_Issuing_CA2.pemque até agora não era utilizado e funcionava. A partir de sexta-feira parece que fizeram com que este novo certificado fosse necessário. O certificado pode ser obtido a partir do Link acima do @Sergio.

Quanto aos certificados que foram enviados na sexta-feira são apenas a quem faz ligação via SSL. Eu cá faço por TLS e não preciso desse certificado.

Um abraço a todos e parabéns a este Fórum.

Mas esse DGITA também é preciso para os ws de teste?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.