Autenticação customizada de WCF – Parte III
Olá pessoal,
Esta é a última parte da série de autenticação customizada com WCF e hoje iremos ver como o cliente fornece as informações das credenciais para o serviço.
O primeiro passo é começar com uma aplicação que contém um proxy gerado para o serviço, em seguida configurá-la para utilizar autenticação do tipo UserName e também para validar o serviço através de um certificado, conforme abaixo:
1: <configuration>
2: <system.serviceModel>
3: <bindings>
4: <wsHttpBinding>
5: <binding ...>
6: <security mode="Message">
7: <message clientCredentialType="UserName"/>
8: </security>
9: </binding>
10: </wsHttpBinding>
11: </bindings>
12: ...
13: <behaviors>
14: <endpointBehaviors>
15: <behavior name="ClientCertificateBehaviour">
16: <clientCredentials>
17: <serviceCertificate>
18: <authentication
19: certificateValidationMode="PeerOrChainTrust"/>
20: </serviceCertificate>
21: </clientCredentials>
22: </behavior>
23: </endpointBehaviors>
24: </behaviors>
25: </system.serviceModel>
26: </configuration>
Em seguida, é necessário que a aplicação informe ao serviço a credencial utilizada na autenticação:
1: CalculatorServiceReference.CalculatorClient proxy = new CalculatorServiceReference.CalculatorClient();
2:
3: proxy.ClientCredentials.UserName.UserName = "administrator";
4: proxy.ClientCredentials.UserName.Password = "P@ssw0rd";
5:
6: double n = proxy.Add(1, 2);
O download do código fonte gerado na série pode ser realizado aqui
Posts da série: