首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 开源 FAQ 第二书店 博文视点 程序员
频道: 研发 数据库 中间件 信息化 视频 .NET Java 游戏 移动 服务: 人才 外包 培训
    图书品种:235680
       
热门搜索: ASP.NET Ajax Spring Hibernate Java

13.3  WebPart和授权

默认情况下,所有用户都可以浏览有WebPart的页面,但是要定制一个页面,用户必须经过认证。因此,要改变WebPartManager的DisplayMode,这只能在用户登录后才有可能完成;否则就会出现一个错误。可以采用多种方法避免这一点,如在改变DisplayMode前先使用User.Identity.IsAuthenticated。

对WebPart定制的授权与其他授权的做法是一样的,也是通过修改web.config来完成。例如,考虑代码清单13-5,其中显示了webPart元素,以及personalization和authorization子元素。authorization部分有标准的allow和deny元素,允许选择users和roles来确定当前的授权。指定users和roles时,还需要指定verbs,可以是enterSharedScope或modifyState,或二者兼有。设置为enterSharedScope时,指示一个用户或角色是否可以进入共享作用域(也就是说,个性化信息是否在用户间共享),设置为modifyState时则指示用户或角色是否可以修改个性化信息。在代码清单13-5中,只允许Admin角色的用户修改页面的个性化状态,所有其他用户都没有这个权限。

代码清单13-5  配置WebPart授权

<webParts>

  <personalization>

    <authorization>

      <allow roles="Admin" verbs="modifyState" />

      <deny users="*" verbs="modifyState" />

    </authorization>

  </personalization>

</webParts>

这可以与授权过滤器(Authorization Filter)和定制代码结合使用,指示对于当前用户某个WebPart 是否合法。这个内容将在13.6.2节中更详细地讨论。

查看所有评论(0)条】

最近评论



正在载入评论列表...
热点评论