授权不适用于IIS中的Windows身份验证

时间:2019-06-05 13:48:08

标签: iis asp.net-web-api authorization windows-authentication

我试图在IIS中做一些事情,尽管这很简单,但是我无法使其正常工作。

我用简单的html + js页面和Web api后端创建了一个网页。 (这意味着我只有一个普通的旧html页面和一个JavaScript文件,并且它使用AJAX调用返回同一台服务器来从后端获取数据。后端是使用C#编写的.NET Framework 4.7和当前版本的ASP.NET不是MVC,不是.NET Core,也不是ASP.NET Core。)

现在,我只想允许本地网络上的某些用户使用此网页,我希望可以在web.config文件中以某种方式进行配置。 IIS在域中的计算机上运行,​​因此我在其web.config中将Web应用程序设置为使用Windows身份验证,并在“授权”部分提供了允许的用户列表(用户帐户与Web服务器位于同一域中) )。我虽然可以防止其他用户访问网络,但是显然所有经过身份验证的用户都可以显示它。因此,似乎Windows身份验证可以正常工作,但是没有执行授权检查,并且允许所有用户。在这种html + js + webapi场景中,可以在web.config中轻松完成此操作吗?

当前,web.config中的相关部分如下所示:

subnetId

Authentication settings

1 个答案:

答案 0 :(得分:1)

尝试:

<system.web>
    <compilation targetFramework="4.7.2" />
    <httpRuntime targetFramework="4.7.2" />
    <authorization>
      <allow users="domain\alloweduser1,domain\alloweduser2" />
      <deny users="*" />
    </authorization>
  </system.web>