ASP.Net Webforms应用程序和ASP.Net webservice之间的身份验证问题
问题描述:
我有一个使用Forms身份验证的ASP.Net webforms应用程序。它需要对使用Windows身份验证(+模拟)的web服务进行身份验证。ASP.Net Webforms应用程序和ASP.Net webservice之间的身份验证问题
我试过(除其他事项外)通过提供凭据:
service.Credentials = new NetworkCredential(myUserName, thePassword, theDomain)
的问题是,我得到401从WebService不管我怎么努力。
答
问题是运行Web服务的应用程序池不允许模拟的身份。
答
我正在做这个完全一样的(通过它的声音),这里是我构造证书的方式。
var service = new MyService();
var netCredential = new NetworkCredential("user", "pwd", "domain");
var credentialCache = new CredentialCache
{
{new Uri(service.Url), "Basic", netCredential}
};
service.Credentials = credentialCache;
您在IIS中为webforms应用程序和webservice激活了哪些身份验证方法?你正在运行哪个IIS版本? – jgauffin 2011-03-04 11:34:52
Web服务托管在IIS7上,Authentication = Basic和Impersonation = true。 Web应用程序在另一个也是IIS7的服务器上运行,并且需要Windows身份验证。 – 2011-03-04 14:30:38