como configurar o WCF credenciais quando Telerik RadGrid consome o serviço WCF?

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

  •  19-09-2019
  •  | 
  •  

Pergunta

Eu tenho um serviço WCF que requer credenciais do cliente para que eu possa definir esta via código como este:

wcf.ClientCredentials.UserName.UserName = "user"; wcf.ClientCredentials.UserName.Password = "password";

Eu segui este tutorial sobre como criar um RadGrid telerik para consumir o serviço WCF: http://blogs.telerik.com/blogs/posts/ 09-02-14 / openaccess_wcf_and_a_radgrid_oh_my.aspx

Mas ele não tem qualquer informação sobre como configurar as credenciais. Se alguém puder ajudar eu realmente aprecio isso !!!

Foi útil?

Solução

OK se você precisa obter dados de outro servidor, parece que você precisa para criar sua própria classe do lado do servidor como um ObjectDataSource no servidor para ser o cliente para o seu serviço WCF, porque as restrições de domínio cruzado do navegador impedir a RadGrid de fazer pedidos do lado do cliente para ambos os servidores.

Seu ObjectDataSource faz o trabalho de fazer as solicitações do WCF.

Eis os docs Telerik RadGrid de como usar um ObjectDataSource: http: //demos.telerik. com / aspnet-ajax / controles / examples / integração / aspajaxgridapplication / defaultcs.aspx? product = grade

... e aqui está docs da Microsoft no ObjectDataSource: http://msdn.microsoft.com/ en-us / library / system.web.ui.webcontrols.objectdatasource.aspx

Outras dicas

Você deseja definir as credenciais no lado do cliente, ou seja. com Javascript, é que Campo certo? Se isso é certo, eu não sei se existe ou deve haver uma maneira de definir as credenciais, porque seria inseguro para incluí-los no código do lado do cliente.

Uma vez que o serviço web tem que estar no mesmo domínio que a sua página web (por causa das restrições de domínio cruzado) se você poderia usar as sessões normais do ASP.NET, o usuário já estaria autenticado porque já está autenticado sua aplicação ASP.NET.

Esta postagem no blog detalhes como ativar o "Modo de Compatibilidade ASP.NET" para WCF, que dá o seu acesso aos serviços WCF para o estado da sessão e outras coisas ASP.NET: http://blogs.msdn.com/wenlong/archive/ 2006/01/23 / 516041.aspx

Você definir isso no arquivo de configuração do seu aplicativo WCF:

<system.serviceModel>
    <serviceHostingEnvironment aspNetCompatibilityEnabled="true"/>
</system.serviceModel>
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top