帮助:如何在ASP.NET Development Server上启用Windows身份validation?

我希望你们中的任何人都知道如何解决我们遇到的这个问题。

我们正在尝试通过网络托管WCF服务。 我们设置web.config以使服务需要Windows身份validation。 我们遇到的问题如下:

当我们在常规IIS中托管我们的服务时,该服务运行正常,并且“Windows身份validation”模式没有问题。 但是,当我们尝试从我们的开发人员框中运行它时,我们会收到以下错误:“此服务的安全设置需要Windows身份validation,但不支持承载此服务的IIS应用程序。”

我们的开发人员盒子不是通过常规IIS托管服务,而是通过Visual Studio的APS.NET开发服务器托管服务。 我们尝试进入Web项目属性并说要启用NTLM身份validation,但仍然没有修复它。 有谁知道如何修理它? VS ASP.NET开发服务器甚至支持Windows身份validation吗? 使用Windows身份validation托管服务的唯一选择是使用IIS而忘记ASP.NET Development Server吗?

谢谢查克

要配置IIS Express安全设置:

  1. 在任务栏(系统托盘)中查找IIS express符号。
  2. 右键单击并选择“所有应用程序”。
  3. 单击要更改的站点的名称(尽管我认为更改是站点范围)
  4. 单击下面配置部分中的路径(它将打开applicationhost.config文件)
  5. 搜索身份validation部分并进行更改

可以在此处找到示例更改:

http://toadcode.blogspot.ca/2011/08/security-config-in-iis-express.html

ASP.Net开发服务器非常有限。 它仅为来自运行它的同一台机器的请求提供服务,并且不会提供超出其应用程序范围的文件。 它基于Cassini服务器。 Cassini不支持WCF Web服务。 ASP.Net Development Server的文档说它确实支持NTLM。 如果您只是从本地计算机浏览到某个页面,它应该可以正常工作,除非该页面引用了不可用的资源。

有关详细信息,请访问http://msdn.microsoft.com/en-us/library/58wxa9w5.aspx 。

我将在您的本地开发计算机上安装和配置IIS,并优先使用内置的Web服务器。 要使用本地IIS进行调试,请在项目属性的Web选项卡上选择“用户本地IIS Web服务器”。 使用IIS而不是内置的Web服务器也意味着您可以使用与在生产服务器上配置的方式完全相同的方式配置应用程序,这将减少移动到生产环境时的潜在意外情况。

我的授权问题的解决方案是进入F4项目属性并设置以下内容:

Anonymous Authentication: Disabled Windows Authentication: Enabled 

显然,这些属性直接更新IIS applicationHost.config。

http://provenstyle.com/blog/2015/10/02/Visual-Studio-2015-Windows-Authentication-And-IIS-Express/