SQL INTEGRATE SECURITY EM WEB SERVICE

 Tópico anterior Próximo tópico Novo tópico

SQL INTEGRATE SECURITY EM WEB SERVICE

ASP.NET

 Compartilhe  Compartilhe  Compartilhe
#478479 - 17/12/2017 11:06:33

ICHIHARA
SAO PAULO
Cadast. em:Dezembro/2003


    
Desenvolvi um web service que esta em um servidor "A" e este consulta em uma base SQL Server "B" utilizo uma string de conexao Integrate security=true. Estou com o seguinte problema:

Desenvolvi um app cliente que acessa este web service porém esta ocorrendo erro ao tentar conectar no servidor SQL, ele informa que nao foi possivel conectar utilizando o usuario "null".

O estranho é que se eu faço o teste abrindo o app cliente direto na maquina "A" o mesmo funciona perfeitamente. Abaixo o código do meu app cliente:

BasicHttpBinding basicHttpBinding = new BasicHttpBinding();
basicHttpBinding.Security.Mode = BasicHttpSecurityMode.TransportCredentialOnly;
basicHttpBinding.Security.Transport.ClientCredentialType = HttpClientCredentialType.Ntlm;
EndpointAddress endpoint = new EndpointAddress("http://server:81/GravaSolicitacao.asmx");
GS.GravaSolicitacaoSoapClient client = new GS.GravaSolicitacaoSoapClient(basicHttpBinding, endpoint);
client.ClientCredentials.Windows.AllowedImpersonationLevel = System.Security.Principal.TokenImpersonationLevel.Impersonation;
client.ChannelFactory.Credentials.Windows.ClientCredential = System.Net.CredentialCache.DefaultNetworkCredentials;
var Gravar = client.GravaSolic(cpf, filial, dg).ToString();
basicHttpBinding = null;
client = null;
return Gravar;

Alguem sabe me dizer oque pode estar ocorrendo, seria alguma configuracao do IIS?

Obrigado!

Grato desde ja!
Cientista Ichihara

#478527 - 19/12/2017 10:33:15

ICHIHARA
SAO PAULO
Cadast. em:Dezembro/2003


Complementando:

Fiz mais um teste e funcionou mas não é da maneira que preciso.

Coloquei no web.config do web service o usuario e senha do impersonate:



<identity impersonate="true" userName="teste" password="asxsaa" />



Quando especifico a o usuario e senha funciona mas quando deixo somente

<identity impertonate ="true" />

nao funciona...

Fiz uma alteração no webservice para retornar o usuario que esta executando o servico.

quando deixo o intenty impersonate = true ele traz exatamente o usuario que chamou o servico mas nao consegue conectar no sql server (o usuario tem permissao no sql).



Quando deixo intentity impersonate=false ele traz o usuario que esta executando o iis(foi o que eu entendi)

Grato desde ja!
Cientista Ichihara

#478744 - 28/12/2017 11:21:41

ICHIHARA
SAO PAULO
Cadast. em:Dezembro/2003




Grato desde ja!
Cientista Ichihara

 Tópico anterior Próximo tópico Novo tópico


Tópico encerrado, respostas não sao permitidas
Encerrado por ICHIHARA em 19/08/2018 20:50:49