你可以在web.config上修改设置,这样IIS的访问验证设置为"允许匿名访问",也可以获取访问者的域登陆信息了,系统会以WEb.config的设置为主,而不管IIS的设置

解决方案 »

  1.   

    Web 应用程序的访问权限
    通过 Windows 集成安全性进行访问
    如果您的 Web 应用程序运行在 Intranet 环境中(即所有用户都运行 Windows 并在同一防火墙之后),则应用程序可以使用 Windows 集成安全性访问资源。在此策略中,所有用户一登录到 Windows 就对他们进行身份验证。身份验证进程将生成一个包含该用户信息的标记。(标记不包含用户的凭据,仅包含指示已对该用户进行身份验证的代码。)在请求本地资源时,Web 应用程序可以使用此标记。例如,已登录的用户在 Internet Explorer 中请求 Web 窗体页。请求将被传递到 Internet 信息服务 (IIS),然后传递到 ASP.NET,ASP.NET 可以使用用户的身份验证标记请求访问服务器计算机上的文件。Windows 集成安全性通常是 Web 访问权限的最安全选项。如果在您的应用程序中是可行的,则应该将应用程序配置为使用此选项。相关参考:
    ms-help://MS.MSDNQTR.2003FEB.2052/vbcon/html/vbconAccessPermissionsForWebApplications.htmms-help://MS.MSDNQTR.2003FEB.2052/vsent7/html/vxconASPNETAuthentication.htm
      

  2.   

    把IIS设置为不能匿名访问。用System.Web.HttpContext.Current.User.Identity.Name可以获取域帐号信息。