如何在没有访问服务器configuration的情况下模拟htaccess与IIS身份validation?

我需要把一个网站上的Windows服务器上的IIS,我想使用基本的身份validation,就像我会用Apache,与.htaccess / .htpasswd

我在这里和那里读到,我可以通过IIS的pipe理标签,但我不是pipe理员,我只有ftp访问。 这似乎是一个'web.config'文件,我可以做到这一点。

有没有办法在configuration文件中设置这样的东西?

我不习惯使用IIS …

这取决于。 通常情况下,这不是像Apache那样委派的方式。 但是,如果您正在寻求密码保护您的网站,并且正在使用ASP.NET,则可以使用身份validation和授权元素来执行此操作。 这是在web.config中设置的。 要研究并加快速度,请执行“身份validation授权asp.net”的Google / Bingsearch。

另外,如果您使用的是IIS7,那么您可以在<system.webServer>进行设置,这将应用于所有文件types。

如果您需要将authenticationtypes从Windows更改为基本authentication,那么这又会有所不同,并且需要服务器pipe理员或控制面板来帮助解决这个问题,但是我怀疑这只是您需要的密码保护。

这里有一个例子可能是你需要的:

假设您使用的是asp.net,并且想要密码保护您的站点,请在站点的根目录中创build一个名为web.config的文件,并在其中放置以下内容:

 <configuration> <system.web> <authentication mode="Windows"> <authorization> <allow users="?" /> </authorization> </system.web> </configuration> 

不pipeScott的方法是否工作,无论该应用程序是否是ASP.NET? IIS将寻找一个web.config来覆盖它的默认值,它可能不会考虑你之前服务的是什么types的内容。 代码中没有什么是实现该web.config所需的 – 它只是告诉IIS你想在authentication/授权级别完成什么。