首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ASP.NET MVC3允许基于AD组的intranet站点访问

问ASP.NET MVC3允许基于AD组的intranet站点访问
EN

Stack Overflow用户
提问于 2012-08-14 19:28:25
回答 3查看 3.3K关注 0票数 2

是否有一种方法可以允许基于AD组的站点范围访问我的intranet站点,而不必在每个控制器上使用[Authorize]属性?

我正在使用Windows身份验证。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-08-14 19:32:38

您可以将AuthorizeAttribute添加到全局filters集合中,如here所述。

代码语言:javascript
复制
public static void RegisterGlobalFilters(GlobalFilterCollection filters) {
    filters.Add(new AuthorizeAttribute());
    filters.Add(new HandleErrorAttribute());
}

使用Web.config authorization元素通常不是一个好主意,因为这个restricts file-based access。但是,当您保护整个站点时,使用Web.config文件也同样有效。

票数 2
EN

Stack Overflow用户

发布于 2012-08-14 19:34:02

在webconfig中使用

代码语言:javascript
复制
 <system.web>
    <authentication mode="Windows">
    </authentication>
    <authorization>
        <allow users="groupname"/>
        <deny users="*"/>
    </authorization>
 </system.web>
票数 3
EN

Stack Overflow用户

发布于 2012-08-14 19:36:38

IIS 7和IIS 8

打开IIS管理器并导航到您的网站。

  1. 在功能视图中,双击Authentication.
  2. On
  3. 身份验证页面,选择Windows身份验证。如果不能使用Windows身份验证,则需要确保服务器上安装了Windows身份验证。

在Windows上启用Windows身份验证的:

a)在“控制面板”中打开“程序和功能”。

b)选择“打开或关闭Windows功能”。

c)导航到“Internet信息服务”>“万维网服务”>“安全”,并确保选中了Windows身份验证节点。

在Windows Server上启用Windows身份验证的:

a)在服务器管理器中,选择Web服务器(IIS),然后单击添加角色服务

b)导航到“Web服务器”>“安全”,并确保选中了Windows身份验证节点。

最终

在操作窗格中,单击启用以使用Windows authentication.

  • On

  • 页面,选择匿名以使用操作窗格,单击禁用以禁用匿名身份验证

IIS Express

IIS在Visual Studio中右键单击项目,然后在解决方案资源管理器中选择对项目使用

  1. 以选择项目。
  2. 如果属性窗格未打开,请将其打开(F4)。在项目的属性窗格中选择
  3. :

a)设置“匿名认证”为“禁用”。

b)将"Windows身份验证“设置为”已启用“。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11951307

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档