Erro 403.7 Forbbiden - NF-e ... urgente!

olá pessoal, blz?

bom, primeiramente desculpe-me pelo tópico repetido…é que não achei nada que pudesse me ajudar, e como bastante coisa ja era antiga, resolvi refazer aki…

vou explicar detalhadamente meu erro:

Temos um sistema de transmissão de NFe desenvolvido em Genexus com o processo de transmissão e assinatura em java. Este aplicativo está em operação e funcionando normalmente em alguns clientes. Porém, recentemente deparamos com um problema que há dias estou procurando e não encontro nada que me ajude…já estou de mãos atadas…

Instalamos o aplicativo em um cliente que possui um e-CNPJ da CertiSign (A3), e nesse cliente, quanto tento, por exemplo, consultar serviço, dá o erro “403.7 - Forbidden: Client certificate required”. Quando tento acessar o WS via browser funciona normalmente e pelo aplicativo de transmissão desenvolvido pela receita tb funciona normalmente. Já tentei incluir os certificados de nfe disponibilizados pela CertiSign e nao resolveu, ja tentei jogar os certificados contidos no e-CNPJ no meu keystore e tb não resolveu.
Preciso de ajuda. Espero que alguem possa me auxiliar nesse problema, pois já nao sei mais o que fazer…to tentando de tudo quanto é coisa e não adianta…

resumindo: erro 403.7 que acontece somente com certificado e-CNPJ CertSign (A3) ao consumir um WS.

Obrigado. Aguardo resposta…

Um cliente que recebe um código de status 403 Forbidden tentou acessar um recurso que não pode ser acessado, apesar do recurso existir no servidor.
Os erros 4xx indicam que o problema esta no lado cliente, enquanto que os 5xx indicam erros no lado servidor.
Verifique se existe proxy … se o certificado esta sendo enviado normalmente durante a comunicação com o servidor.
A falta de informar o proxy costuma originar este problema.

[quote=minerinho]olá pessoal, blz?

bom, primeiramente desculpe-me pelo tópico repetido…é que não achei nada que pudesse me ajudar, e como bastante coisa ja era antiga, resolvi refazer aki…

vou explicar detalhadamente meu erro:

Temos um sistema de transmissão de NFe desenvolvido em Genexus com o processo de transmissão e assinatura em java. Este aplicativo está em operação e funcionando normalmente em alguns clientes. Porém, recentemente deparamos com um problema que há dias estou procurando e não encontro nada que me ajude…já estou de mãos atadas…

Instalamos o aplicativo em um cliente que possui um e-CNPJ da CertiSign (A3), e nesse cliente, quanto tento, por exemplo, consultar serviço, dá o erro “403.7 - Forbidden: Client certificate required”. Quando tento acessar o WS via browser funciona normalmente e pelo aplicativo de transmissão desenvolvido pela receita tb funciona normalmente. Já tentei incluir os certificados de nfe disponibilizados pela CertiSign e nao resolveu, ja tentei jogar os certificados contidos no e-CNPJ no meu keystore e tb não resolveu.
Preciso de ajuda. Espero que alguem possa me auxiliar nesse problema, pois já nao sei mais o que fazer…to tentando de tudo quanto é coisa e não adianta…

resumindo: erro 403.7 que acontece somente com certificado e-CNPJ CertSign (A3) ao consumir um WS.

Obrigado. Aguardo resposta…[/quote]

Olá,

Se você consegue abrir uma URL de um WS protegido (digamos, consulta do status do serviço) da Sefaz de jurisdição do cliente com seu certificado A3, mas ao tentar fazê-lo via aplicação recebe o erro, significa que o problema pode estar relacionado ao KeyStore. Além disso já vi situações onde a Sefaz incluiu uma cadeia de certificação nova que não existia no certificado em seu servidor, resultando em problema semelhante. Apreciaria ouvir se você conseguiu fixar este problema ou ele ainda persiste.

tenho o mesmo problema com SC em homologação

qual o estado que vc está tentando acessar??

[edit]

em produção funciona normalmente e eu homologação funciona de vez em nunca, acho que apenas em lua cheia

valeu pessoal pela atenção…

então, quanto ao proxy, vou checar se existe proxy lá no cliente…caso exista, preciso configurar isso no meu codigo java? confesso que sou meio leigo nessa parte…hehehe…

quanto a resposta do realjn, eu consigo sim acessar a url…e se for no keystore o problema, não é estranho que esse mesmo keystore funcione para outros certificados de outras empresas? se o sefaz tivesse incluido novas cadeias, não teria que dar erro para todos? agora, aproveitando, eu tenho uma dúvida, no keystore, eu apenas coloco os certificados ICP-Brasil, certo? não preciso colocar os certificados contidos no cartão nao, né?

Bom, obrigado pela ajuda, espero que continuem me apoiando…
e quando eu conseguir resolver, com certeza vou postar detalhadamente o resultado aki, acho q tem muita gente que está com o mesmo problema que eu e não conseguiu resposta…é sempre bom ajudar…hehehe…

valeu

olá zoren…blz?

então, meu cliente fica no estado de SP…e é em produção que não acessa…mas tb tem outros clientes em SP que consegue fazer todo o processo normalmente, mas com A3 que nao é da certisign…

você está pegando o arquivo correto do cartão??

bom, creio q sim…eu leio o cartão diretamente na leitora…
todos os outros cartões funcionam corretamente, exceto esse cliente…

ele está autorizado a emitir nfe??

alguns tem q fazer um registro pra fazer o envio pra sefaz, vc consegue utilizar o programa da receita com ele??

sim…ele consegue usar o programa da receita, inclusive está utilizando ele até eu conseguir resolver esse problema…
ta feia a coisa viu… :?
ja tentei de tudo…

Com relação aos certificados que deve ter no keystore, além do ICP-Brasil, você deve colocar os da AC e também das intermediárias se houver.

é…ja coloquei esse certificados no keystore…
aparentemente tudo ok…

mas o erro persiste… :?

[quote=minerinho]valeu pessoal pela atenção…

quanto a resposta do realjn, eu consigo sim acessar a url…e se for no keystore o problema, não é estranho que esse mesmo keystore funcione para outros certificados de outras empresas? se o sefaz tivesse incluido novas cadeias, não teria que dar erro para todos? agora, aproveitando, eu tenho uma dúvida, no keystore, eu apenas coloco os certificados ICP-Brasil, certo? não preciso colocar os certificados contidos no cartão nao, né?

valeu[/quote]

Ok… é possível sim que o problema do keystore não se manisfeste com os certificados de outros clientes, especialmente se o problema for relacionado a algum caminho de certificação presente nos demais certificados mas ausente (por alguma razão) no certificado atual do seu cliente. A propósito, existe algo que gostaria que você pudesse esclarecer melhor: seu sistema funcionava exatamente com esta configuração e certificado e parou de uma hora para outra ? houve troca de tipo de certificado (A1 para A3 ou vice-versa) ou re-emissão de certificado ? na Sefaz de minha jurisdição (BA) é necesário informar via suporte que a empresa está atualizando o certificado caso contrário acontece todo tipo de problema ao consultar o WS de status do serviço.

Meu sistema é feito em Java e só tive que atualizar o keystore uma única vez quando a Sefaz BA incluiu novas cadeias de certificação. A mudança de keystore foi necessária apenas para o clientes que usavam certificado A3. Para usuários com certificado A1, bastou importar as novas cadeias no IE (onde uma cópia do certificado já estava instalada) depois exportar o certificado com opção “incluir todas as cadeias de certificação” ativada, e depois instalá-lo no sistema.

Evidentemente, cada sistema possui arquitetura distinta e as soluções nem sempre são as mesmas, mas vai que talvez você possa lembrar-se de algo aí que possa ajudá-lo.

então cara, o sistema nao funcionou nesse cliente…
é um cliente novo, onde estavamos implantando o sistema…
o mesmo sistema com as mesmas configurações funciona em todos os outros clientes, que por coicidencia ou nao, não possuem certificado CertiSign…
Não sei se tem relação ou não mas esse cliente que não funciona é o unico que tem certificado A3 da CertiSign…
essa foi a única diferença que encontrei entre eles…pode ser q nao tenha nada a ver…

no caso do keystore, temos um cliente tb no estado de SP que usa o mesmo keystore (esse q nao funciona é de SP)…

teoricamente então, ambos utilizam os mesmos certificados no keystore…caso seja diferente, eu teria que adicionar no keystore algum certificado especifico da AC, certo? se sim, eu baixei no site da CertiSign alguns certificados próprios pra NFe (o cartao do cliente q nao funciona é e-CNPJ)…dpois de baixado, tentei importar para o cartao e nao resolveu, tentei tb importar para o keystore e tb nao resolveu…
ja to sem palpite…ta complicado isso…

[quote=minerinho]então cara, o sistema nao funcionou nesse cliente…
é um cliente novo, onde estavamos implantando o sistema…
o mesmo sistema com as mesmas configurações funciona em todos os outros clientes, que por coicidencia ou nao, não possuem certificado CertiSign…
Não sei se tem relação ou não mas esse cliente que não funciona é o unico que tem certificado A3 da CertiSign…
essa foi a única diferença que encontrei entre eles…pode ser q nao tenha nada a ver…

no caso do keystore, temos um cliente tb no estado de SP que usa o mesmo keystore (esse q nao funciona é de SP)…

teoricamente então, ambos utilizam os mesmos certificados no keystore…caso seja diferente, eu teria que adicionar no keystore algum certificado especifico da AC, certo? se sim, eu baixei no site da CertiSign alguns certificados próprios pra NFe (o cartao do cliente q nao funciona é e-CNPJ)…dpois de baixado, tentei importar para o cartao e nao resolveu, tentei tb importar para o keystore e tb nao resolveu…
ja to sem palpite…ta complicado isso…

[/quote]

Certo… Suponho que seu certificado A3 possua mídia do tipo SMARTCARD e que seu sistema já funcione com certificado A3 em outros clientes… Algo que tenho observado com os certificados A3 CertiSign é que nem sempre os drivers que acompanham a mídia (no CD) são os mais atualizados. Por isso é uma boa idéia baixá-los através do site e instalá-los. Em nosso caso, preciso também informar ao JAVA o caminho para a DLL do driver através de um arquivo de configuração. Algo do tipo:

name=SafeSign
library=c:\windows\system32\aetpkss1.dll

Sem isto é como se o certificado não existisse para o sistema. Já as mídias do tipo TOKEN tem se mostrado um pouco mais complicadas (pelo menos em nossa experiência) devido à falta de padronização para este tipo de driver - o que nos criou uma série de problemas.

Em tempo: Considerando os certificados A3 com mídia SMARTCARD, observamos que não importa qual a AC que emitiu o certificado. Possuimos clientes que rodam com CertiSign, SERPRO, SERASA, etc… e nunca foi necessário fazer qualquer alteração específica de sistema em função da AC. A única diferença óbvia é que cada certificado possui seu próprio driver - que deve ser instalado para que o sistema o reconheça devidamente.

Peço desculpas se não consegui ajudar o suficiente…

valeu pela ajuda realjn…
vou tentar fazer o q vc falou sobre o driver…
tb utilizo o arquivo de configuração, vou dar uma conferida nele tb…
qualquer coisa posto aki…

valeu

pior q nao deu certo viu…:s

reinstalei o aplicativo para a versão 3.0, q atualizou o gerenciador, bem como suas bibliotecas e a dll aetpkss1 para a versão nova, mas não deu certo…continua dando o erro…tb conferi o arquivo com o caminho dessa dll e está tudo ok…ta complicado esse problema viu…o pior q o cliente ta pressionando…

alguem tem mais alguma idea? ja testei tudo q eu pensei…

Obrigado…

help me, please!!! :frowning:

E ai galera, conseguiram resolver o problema acima?

Estou com o mesmo problema, para acessar o WebService da receita…
https://hom.nfe.fazenda.gov.br/nfetransito/nfetransito.asmx

Via IE eu acesso normalmente, mas via aplicacao eu nao consigo.

Abaixo esta a minha Key que estou usando:

keytool -list -keystore testecerto.jks

teste9, Tue Dec 29 10:37:34 BRST 2009, trustedCertEntry,
Certificate fingerprint (MD5): 9B:D8:FA:A3:2D:5D:77:DC:F2:BC:9D:92:4D:77:89:E8
teste8, Fri Dec 11 11:21:58 BRST 2009, trustedCertEntry,
Certificate fingerprint (MD5): 5A:53:E1:76:BD:98:E4:9D:86:70:0F:F3:8E:0B:AF:5D
teste7, Fri Dec 11 11:21:49 BRST 2009, trustedCertEntry,
Certificate fingerprint (MD5): CC:10:47:4D:F8:4E:14:80:B3:EC:E7:4C:C7:37:90:48
teste6, Fri Dec 11 11:21:38 BRST 2009, trustedCertEntry,
Certificate fingerprint (MD5): 5C:96:48:B4:BE:8A:54:A0:58:30:EC:E5:26:6D:1D:A9
teste10, Tue Dec 29 10:37:47 BRST 2009, trustedCertEntry,
Certificate fingerprint (MD5): DA:17:DB:EF:5B:12:CA:2C:42:5A:03:DB:77:CE:33:5C
teste5, Fri Dec 11 11:21:22 BRST 2009, trustedCertEntry,
Certificate fingerprint (MD5): 44:81:23:9F:79:AE:11:AA:AE:E6:8D:35:23:6D:D9:31
teste4, Fri Dec 11 11:21:10 BRST 2009, trustedCertEntry,
Certificate fingerprint (MD5): 06:9F:A1:32:E9:4C:A5:82:82:A6:1B:5B:62:D6:0E:84
teste3, Fri Dec 11 11:20:56 BRST 2009, trustedCertEntry,
Certificate fingerprint (MD5): 62:F1:A5:CF:8C:B8:6F:67:27:9F:4A:ED:F2:CD:D4:65
teste2, Fri Dec 11 11:20:43 BRST 2009, trustedCertEntry,
Certificate fingerprint (MD5): 90:54:CE:0A:35:DA:33:B9:1F:6D:ED:D6:4F:39:C1:5D
mykey, Fri Dec 11 11:18:01 BRST 2009, trustedCertEntry,
Certificate fingerprint (MD5): 93:F1:AD:34:0B:2B:E7:A8:54:60:E2:73:8C:A4:94:31

Eu gero o cliente pelo Eclipse e ai ele cria la todas as classes e eu o chamo da seguinte maneira:


 System.setProperty("javax.net.ssl.trustStoreType", "JKS");
 System.setProperty("javax.net.ssl.trustStore", "c:/certs.keystore");
 System.setProperty("javax.net.ssl.trustStorePassword", "teste123");
  
  NfeTransitoLocator s = new NfeTransitoLocator();
  NfeTransitoSoap t;
  try {
  	   t = s.getNfeTransitoSoap();
	   String retorno=  t.consultarRegistrosPassagem("31091000506346000166550010002633910000638287")  ;  
	   System.out.println(retorno);	
	} catch (ServiceException e) {
		e.printStackTrace();
	   }

Mas obtenho o seguinte erro:

;HTTP Error 403.7 - Forbidden: SSL client certificate is required.<br>Internet Information Services (IIS)</h2>

Alguem pode me dar uma ajuda, please?

Abs

Alguem tem alguma ideia? Ainda estou com esse problema…

Abs