Asp.net mvc IIS中的Windows身份验证-禁止本地用户使用MVC4应用程序
我们正在为MVC4应用程序使用IIS 7-8。访问受IIS内置Windows身份验证的保护。本地用户(添加到服务器上)和在AD中注册的用户可以登录。如何将本地用户排除在登录之外?我的建议是基于广告组构建身份验证 您可以创建一个或多个广告组,并将用户添加到该组中。然后,您可以仅将对web应用程序的访问限制为这些组 然后在MVC中,您可以对操作、控制器使用Asp.net mvc IIS中的Windows身份验证-禁止本地用户使用MVC4应用程序,asp.net-mvc,iis,active-directory,windows-authentication,Asp.net Mvc,Iis,Active Directory,Windows Authentication,我们正在为MVC4应用程序使用IIS 7-8。访问受IIS内置Windows身份验证的保护。本地用户(添加到服务器上)和在AD中注册的用户可以登录。如何将本地用户排除在登录之外?我的建议是基于广告组构建身份验证 您可以创建一个或多个广告组,并将用户添加到该组中。然后,您可以仅将对web应用程序的访问限制为这些组 然后在MVC中,您可以对操作、控制器使用Authorize属性,或者将其设置为全局过滤器 基本用法 [Authorize(Roles=@"MyCompanyDomain\\company
Authorize
属性,或者将其设置为全局过滤器
基本用法
[Authorize(Roles=@"MyCompanyDomain\\company-group-name-here")]
我通过MVC4 C代码找到了一个解决方案: 在我的控制器中,调用该方法并传递标识:
if(IsLocalUser(HttpContext.User.Identity as WindowsIdentity))
{
// block and refer to error site.
}
谢谢你的回答。这里的问题是:解决方案应该接受没有固定定义的任何域。
if(IsLocalUser(HttpContext.User.Identity as WindowsIdentity))
{
// block and refer to error site.
}