Pergunta

Eu tenho um aplicativo WPF de trabalho já existente em que eu implementei minha própria autenticação personalizada para um serviço de back-end WCF. Quando eu aceder a este serviço de WPF, configurar o ServiceProxy da seguinte forma:

proxy.ClientCredentials.UserName.UserName = "test";
proxy.ClientCredentials.UserName.Password = "pass";

e porque eu estou usando HTTPS o uid / pwd é segura.

No Silverlight 2 não há .ClientCredentials objeto no proxy. A única opção que eu encontrei é para adicionar dois parâmetros de cadeia para o método expostos todos os WCF para Uid / Pwd. Isso soa como loucura para mim, deve haver uma maneira melhor, não?

Foi útil?

Solução

Infelizmente Silverlight 2 suporta apenas basicHttpBinding que significa que ele não suporta ClientCredentials.

As 2 opções que você tem são: 1. Como você mencionou passar o nome de usuário e senha com cada solicitação. 2. usando a autenticação asp.net e ativar o modo de compatibilidade asp.net em seus serviços.

- NB TransportSecurityWithMessageCredentials menciono abaixo não parecem fazer o corte para SL3 tão somente opções são o 2 acima tanto para SL2 e SL3

Silverlight 3 melhora sobre esta história com TransportSecurityWithMessageCredentials e você pode descobrir mais sobre isso no blog Silverlight Team Services Web (ligação Would a ele, mas, aparentemente, como eu sou um novo usuário Eu não sou allowed0

HTH

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