在ASP.NET Web安装项目中,我可以在IIS中禁用匿名访问吗?

时间:2008-11-18 10:57:48

标签: .net iis installer

我有一个非常简单的ASP.NET Web应用程序和一个Web安装项目,它将项目输出和内容文件部署到IIS中的虚拟目录。

我想要的是MSI自动禁用IIS中该虚拟文件夹的匿名访问。

我怀疑它可以通过在自定义动作DLL中编写一些代码来完成,这是可以接受的,但有没有办法在Web设置项目的设置中执行此操作?

3 个答案:

答案 0 :(得分:5)

我相信您知道您可以禁止未通过web.config

进行身份验证的用户
<system.web>
<authentication mode="Windows"/>
<authorization>
  <deny users="?"/> 
</authorization>
</system.web>

我会这么做。

答案 1 :(得分:4)

Taken from technet

  

匿名访问的属性是   很遗憾没有通过   Web设置项目。为此原因,   你必须:

     
      
  1. 编写自定义安装程序以启用或禁用匿名访问。

  2.   
  3. 将必要的参数从设置向导传递给安装程序   运行时间。

  4.   

答案 2 :(得分:0)

<configuration>
    <system.web>
        <compilation debug="true" targetFramework="4.0" />
      <authentication mode="Forms">
        <forms loginUrl="SignIn.aspx" defaultUrl="Welcome.aspx"  protection="All">
          <credentials passwordFormat="Clear">
            <user name="lee" password="lee12345"/>
            <user name="add" password="add12345"/>
          </credentials>
        </forms>
      </authentication>

        <authorization>
          <deny users="?" />     //deny acces to anonymous users
        </authorization>
    </system.web>

</configuration>