如何在没有登录的情况下针对ASP.NET Core应用程序中的Active Directory组进行身份验证?

时间:2019-03-23 10:29:19

标签: c# asp.net core

我当前正在构建一个Intranet应用程序,现在正试图将其锁定为特定Active Directory组的成员,如果用户不是该组的成员,则会返回错误页面。

我正在将ASP.NET Core与Razor Pages配合使用,到目前为止,我发现的信息似乎是零散的。正在使用的AD是在内部而不是在Azure上使用的。

谢谢。

1 个答案:

答案 0 :(得分:1)

基本上,您可以使用IIS或Http.sys-> https://docs.microsoft.com/en-us/aspnet/core/security/authentication/windowsauth?view=aspnetcore-2.2&tabs=visual-studio

在使用IIS的情况下,如果您想授予整个应用程序的单个AD组访问权限,则只需启用Windows身份验证并将以下内容添加到web.config中:

  <authorization>        
        <deny users="?"/>        
        <allow roles="YourDomain\YourAdGroup" />
        <deny users="*" />
  </authorization>

如果您希望针对不同的控制器操作使用不同的组,请查看此帖子ASP.NET Core Authorize AD Groups through web.config

干杯。