Meu serviço WCF está gerando um erro ao executar por meio de um serviço do Windows

StackOverflow https://stackoverflow.com/questions/8891021

  •  29-10-2019
  •  | 
  •  

Pergunta

Criei um serviço WCF, no qual estou lendo o msn se feeds e novos feeds por meio de HttpWebRequest e HttpWebResponse usando codificação C #. Quando executo o serviço no meu PC local está funcionando bem e recebendo os feeds corretamente, não apenas no meu sistema, em quase todos os nossos sistemas de rede também. Estou usando o CredentialCache.DefaultNetworkCredentials atribuindo como as credenciais de rede padrão as credenciais de proxy HttpWebRequest e também fornecendo HttpWebRequest.DefaultWebProxy para o proxy de HttpWebRequest. Tudo está funcionando bem no meu pc. E quando eu instalo o serviço em nosso pc servidor para os serviços do Windows e inicio o serviço, toda vez que está lançando um erro inesperado como segue

System.Net.WebException: The remote server returned an error: (403) Forbidden.
   at System.Net.HttpWebRequest.GetResponse()

Não consigo corrigir esse bug em meu aplicativo de servidor. Ao copiar o uri que estou solicitando no meu serviço, para um navegador está obtendo os feeds no pc do servidor. Mas por que está lançando uma exceção ao executar através de um serviço do Windows (services.msc)? Espero que alguém possa me ajudar a resolver este problema.

EDITAR:

Na verdade, antes de tentar fornecer o nome de usuário e senha do proxy para credenciais do proxy e também especificar o endereço do proxy por meio de entradas de configuração, na época estava funcionando bem. Mas nosso plano é remover o fardo de fornecer o endereço IP do proxy, nome de usuário e senha todas as vezes. Portanto, planejamos dar isso por meio de credenciais de rede padrão que são salvas no sistema para ignorar o proxy com as etapas fornecidas acima.

Foi útil?

Solução

Você tem um servidor proxy configurado em sua empresa que requer autenticação?

Tente executar o serviço usando sua identidade em vez das integradas (serviço de rede, sistema local) e veja se isso ajuda.

EDITAR:

Acho que pode depender de como o proxy está configurado, mas para usar as configurações de proxy padrão, você pode precisar que o serviço seja executado em uma conta de domínio com essas propriedades definidas corretamente.É uma boa prática usar uma conta de serviço dedicada em vez da sua, é claro.

Além disso, você pode querer dar uma olhada como configurar o proxy no arquivo de configuração em vez de codificá-lo.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top