繁体   English   中英

ASP.NET MVC 2和FormsAuthentication的Web服务身份验证

[英]Web-service authentication from ASP.NET MVC 2 and FormsAuthentication

我正在使用ASP.NET MVC2,它从Web服务请求方法(我在Web服务中的所有DAO位置)。 对于使用基本身份验证的Web服务。 对于从asp.net到web-service的身份验证,我使用FormsAuthentication。 为此我写了一个来自MembershipProvider的WebServiceMembershipProvider继承。 在方法ValidateUser中,我连接到Web服务,如果验证成功 - 在cookie中保存票证使用FormsAuthentication.SetAuthCookie。

我的问题:验证后我必须存储用户名和密码:Cookies,会话还是其他? 我需要存储用户名和密码才能在Credentials中调用方法之前将其发送到Web服务,例如:

MyServiceSoapClient client = new MyServiceSoapClient();
client.ClientCredentials.UserName.UserName = this.username;
client.ClientCredentials.UserName.Password = this.password;
List<Product> products = client.GetProductList();

如果我正确理解了这个问题,那么你有一个web-app,它在调用之后调用一个需要用户名和密码的web服务,这也是一个函数调用。

在您的WebService类(WebServiceMembershipProvider)中,您从MembershipProvider继承并调用MembershipProvider.ValidateUser

如果您正在讨论存储更多信息,那么只需在FormsAuthentication.SetAuthCookie中存储,那么这就是您可能正在寻找的答案。

另外,这里有很多用于在Webservices中使用Forms Authentication的示例代码,可能对您有所帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM