6

根据标题,我正在尝试启用 Windows 身份验证在本地开发:

  • Windows 8(专业版)
  • VS2012
  • IISExpress
  • ASP.Net MVC4 项目
  • Orchard CMS 是项目(但我认为这无关紧要)

通过项目属性,我将 Windows 身份验证设置为启用,匿名身份验证设置为禁用。

在我设置的 web.config 中:

<authentication mode="Windows" />

但是,在运行该站点时,我会不断提示我输入凭据。输入 Windows 8 或本地帐户凭据似乎没有任何区别,我已将这些帐户设置为对文件夹具有完全权限。

任何建议都感激不尽!

更新 1: 按照 Darin Dimitrov 的建议,我创建了一个空白 MVC 项目并选择了 Intranet 模板。在将匿名授权设置为禁用并启用 Windows 身份验证后,此测试项目完全按预期工作(输入凭据时提示提供对站点的访问)。我将相同的授权配置应用于我的 Orchard 项目 web.config:

<authentication mode="Windows" />
<authorization>
  <deny users="?" />
</authorization>

但仍然不高兴,我按预期提示输入凭据,但我输入的任何内容似乎都没有授权用户。我已经粘贴了下面的两个 web.config,以防其他人指出我遗漏了什么?

4

1 回答 1

11

确保您已在 Web 服务器的属性中启用 Windows 身份验证并禁用匿名身份验证:

在此处输入图像描述

还要确保您已阅读使用 Intranet 模板创建新的 MVC 应用程序时为您生成的文本文件:

为了使用 Intranet 模板,您需要启用 Windows 身份验证并禁用匿名身份验证。

IIS 7 和 IIS 8

  1. 打开 IIS 管理器并导航到您的网站。
  2. 在功能视图中,双击身份验证。
  3. 在身份验证页面上,选择 Windows 身份验证。如果 Windows 身份验证不是一个选项,您需要确保在服务器上安装了 Windows 身份验证。

    要在 Windows 上启用 Windows 身份验证:

    a) 在控制面板中打开“程序和功能”。

    b) 选择“打开或关闭 Windows 功能”。

    c) 导航到 Internet 信息服务 > 万维网服务 > 安全并确保选中 Windows 身份验证节点。

    要在 Windows Server 上启用 Windows 身份验证:

    a) 在服务器管理器中,选择 Web 服务器 (IIS) 并单击添加角色服务

    b) 导航到 Web 服务器 > 安全并确保选中 Windows 身份验证节点。

  4. 在“操作”窗格中,单击启用以使用 Windows 身份验证。

  5. 在身份验证页面上,选择匿名身份验证。
  6. 在“操作”窗格中,单击禁用以禁用匿名身份验证。

IIS 快递

  1. 在解决方案资源管理器中单击您的项目以选择该项目。
  2. 如果“属性”窗格未打开,请将其打开 (F4)。
  3. 在项目的“属性”窗格中:
    a) 将“匿名身份验证”设置为“禁用”。
    b) 将“Windows 身份验证”设置为“启用”。
于 2013-02-19T09:32:18.300 回答