1

我正在使用 Cassini 在无法访问 IIS 的机器上运行 ASP.NET 应用程序。我将 Cassini 用于 .NET 3.5。我的网站使用 Windows 身份验证并且在 Cassini 上运行时

User.Identity.Name

返回一个空字符串。我猜这是因为它允许匿名访问我的网站。这记录在这里:

http://support.microsoft.com/?id=306359

该问题的解决方法是:

将Web.config文件中的认证方式改为Windows,如下:

<authentication mode="Windows" />                   
  1. 在 Internet 服务管理器中,右键单击 .aspx 文件或 Web 项目文件夹,然后单击属性。
  2. 如果您单击了 Web 项目文件夹的属性,请单击目录安全选项卡。3. 如果您单击了 .aspx 文件的属性,请单击文件安全选项卡。
  3. 在匿名访问和身份验证控制下,单击编辑。
  4. 在身份验证方法对话框中,清除匿名访问复选框,然后选择基本、摘要或集成(NT 质询/响应)复选框。

Cassini 没有执行此操作的 UI,谁能指出我正确的方向来修改 Cassini 源代码,使其不允许匿名访问?

我正在使用这个网站的版本:http: //blogs.msdn.com/dmitryr/archive/2008/10/03/cassini-for-framework-3-5.aspx

4

2 回答 2

0

在解决方案资源管理器窗格中,选择 Web Project 并点击 F4。(不是右键单击+属性,那是不同的) - 这将显示属性窗格

然后在属性窗格中设置: Windows 身份验证:启用 匿名身份验证:禁用

运行你的项目,Happy Days!

于 2013-01-15T12:05:17.040 回答
0

您应该能够通过简单地选中项目 Web 属性页面上的“ntlm 身份验证”框来完成此操作。

这将向 VS 开发服务器发送一个标志以要求 Windows 身份验证,并结合您的 auth=windows 配置,您应该得到您想要的。

于 2010-07-24T19:48:04.067 回答