Consumir Web Service com Certificado

04/02/2010

0

Senhores,

Estou desenvolvendo uma aplicação que consome o Webservices Consulta cadastro da Nfe.

Na chamada do objeto ja instanciado, me retorna o seguinte erro: A solicitação HTTP está proibida com o esquema de autenticação de cliente 'Anonymous'.

Mas ja estou passando o certificado na chamada do Methodo. em Debug consigo ver o certificado e todas as suas propriedades, data de validade e numero de serie.

alguem sabe oque pode estar ocorrendo?

uso o segundo overload do do methodo SetCertificate, pois o primeiro me retorna o erro abaixo:

Cad.ClientCredentials.ClientCertificate.SetCertificate(


"EMPRESA", StoreLocation.CurrentUser, StoreName.My);

Não é possível encontrar o certificado X.509 usando os seguintes critérios de pesquisa: StoreName 'My', StoreLocation 'CurrentUser', FindType 'FindBySubjectDistinguishedName', FindValue 'EMPRESA'.

Uso o Framework 3.5

string CadCabMsg = "<?xml version=\"1.0\" encoding=\"UTF-8\"?><cabecMsg xmlns=\"http://www.portalfiscal.inf.br/nfe\" versao=\"1.02\"><versaoDados>1.01</versaoDados></cabecMsg>";

string CadMsg = "<?xml version=\"1.0\" encoding=\"UTF-8\"?><ConsCad xmlns=\"http://www.portalfiscal.inf.br/nfe\" versao=\"1.02\"><infCons><xServ>CONS-CAD</xServ><UF>SP</UF><IE>645252690113</IE><CNPJ>48539407008879</CNPJ></infCons></ConsCad>";


ConsultaCadastro.

CadConsultaCadastroSoapClient Cad = new CadConsulta.ConsultaCadastro.CadConsultaCadastroSoapClient();

Cad.ClientCredentials.ClientCertificate.SetCertificate(
StoreLocation.CurrentUser, StoreName.My, X509FindType.FindBySubjectName, "EMPRESA");

 
string retorno = Cad.consultaCadastro(CadCabMsg, CadMsg); //Erro nessa chamada


A solicitação HTTP está proibida com o esquema de autenticação de cliente 'Anonymous'.


se alguem puder me dar uma ajuda ficaria agradecido.


Fabiano Góes

Fabiano Góes

Responder

Posts

15/02/2010

Eleuterio Gonzalez

Estava com este problema em uma aplicação minha e coloquei esta linha e resolveu . abraços
cWSNfeTeste.ClientCertificates.Add(meuCertificado);   cretorno = cWSNfeTeste.nfeStatusServicoNF(nfeCabec, nfedados);
Responder

22/11/2012

Fábio Freitas

Olá, tudo bem?
Estou com um problema parecido com este, minha aplicação web precisa acessar o certificado instalado na máquina do usuário e assinar o XML, vocês já precisaram fazer algo parecido?

Desde já agradeço
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar