如何禁止掉SharePoint页面个性化?(续)

简介:
之前的文章里面,写了一个方法,来禁止掉SharePoint页面的个性化。但当时就有人问了,如果我只想管理员能够个性化页面,而非管理员不能做这个操作,又应该如何做呢?下面就是方法。注意:这个方法是基于SharePoint如何显示其“网站操作”菜单的原理,也就是说,这个方法是基于其原理的“倒推论”,我没有对这个方法进行过完整的验证测试...:(

首先,WSS 3.0的Master Page是使用了下面两个方法之一来显示页面右上方的那个“网站操作”菜单的。

1、直接在master page上使用“Microsoft.SharePoint.WebControls.SiteActions”控件,比如default.master就是这样:

 


2、或者,在manster page上使用“Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\CONTROLTEMPLATES\PublishingActionMenu.ascx”这个用户控件(当然了,这个用户控件里面其实也是使用“Microsoft.SharePoint.WebControls.SiteActions”来的)。比如BlueBand.master:

 


所以,我下面说的这个步骤,就要根据你是使用的哪个master page,来决定是直接修改master page文件,还是修改那个用户控件。我下面的例子是用的default.master,也就是第一种情况。

那个SiteActions控件的用法是一个控件嵌套,类似于:

<SiteActions>
  <CustomTemplate>
    <FeatureMenuTemplate>
      <MenuItemTemplate />     <--- 每个“MenuItemTemplate”表示网站操作菜单上的一个项目
    </FeatureMenuTemplate>
  </CustomTemplate>
</SiteActions>

找到表示“编辑页面”的那个“<MenuItemTemplate>”节点,加上两个属性“PermissionsString”和“PermissionMode”("PermissionsString"的值表示必须具备此权限的用户才能使用这个菜单项,“FullMask”表示所有权限,“ManageWeb”表示管理当前网站):

 


嗯,还没有完。打开“Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\LAYOUTS\EditingMenu\SiteAction.xml”文件,找到id是“wsaEditPage”的“ConsoleNode”节点,增加一个“UserRights”的属性。(为什么还要做这一步呢?简单的说,是因为对于启用了Publishing功能的网站,SharePoint会用Microsoft.SharePoint.Publishing.WebControls.PublishingSiteActionsMenuCustomizer控件来读取这个xml文件,然后动态的去更改“网站操作”菜单。)

 


OK,完成。理论上说,这个方法可以用更“优雅”的coding的方式来解决,然后再封装成一个solution package,但是...有时候快速解决问题让人更省心,不是吗?另外,我相信你可以从这篇blog里面学到除了禁止页面个性化之外的更多内容... :)




本文转自 kaneb0y 51CTO博客,原文链接:http://blog.51cto.com/kaneboy/280803,如需转载请自行联系原作者
目录
相关文章
|
11月前
|
JSON 安全 数据安全/隐私保护
WebOffice 网页版在线 Office 的 Word 文档权限控制,限制编辑,只读、修订模式、禁止复制等
在一些在线 Office 文档中,有很多重要的文件需要保密控制,比如:报价单、客户资料等数据,只能给公司成员查看,但是不能编辑,并且不能拷贝,防止重要资料外泄。可以通过猿大师办公助手的在线 Office 的文档编辑权限来解决这些问题!
239 1
|
6月前
|
安全
猿大师办公助手网页在线安全浏览 Office Word 文档,只读打开 / 禁止编辑 / 禁止复制 / 禁止另存 / 禁止打印 / 禁止截屏
在企业 OA 系统或者在线协作办公场景中,有一些合同公文或者客户数据等重要文档需要我们在线共享给其他人,但是我们只希望其他人只能预览阅读文档,不能随便编辑修改文档,也禁止复制共享 Word 文档的内容到其他文档或者编辑器,不能将共享文件另存为本地文件夹,并且禁止用户打印该 Word 文档,那么该如何实现呢?
189 0
织梦dedecms会员发布文章内容自动过滤外部链接的方法
织梦会员中心发布文章自动过滤外部外部链接,保留本站站内链接。这个织梦默认后台本身带有这样的功能的,只是会员模块里没有而已。
|
JavaScript 小程序
微信小程序伪装页面(定时改变页面内容)
微信小程序伪装页面(定时改变页面内容)
318 0
|
SQL 监控 安全
微信打开网站被提示已停止访问该网页该如何解决
今天早晨发现我们公司网站只要在微信和qq中打开,分别被微信提示:已停止访问该网页,该网站链接以及在qq上被提示危险网站,千万别访问,首先先看下微信中打开网址被微信拦截并提示的图:
1513 0
微信打开网站被提示已停止访问该网页该如何解决
|
Web App开发
Chrome 浏览器降级后浏览网站不保留用户数据问题原因及解决方法
Chrome 浏览器降级后浏览网站不保留用户数据问题原因及解决方法
236 0
Chrome 浏览器降级后浏览网站不保留用户数据问题原因及解决方法
DEDE在后台设置启用多站点绝对网址RSS出错解决办法
DEDE在后台设置启用多站点绝对网址RSS出错解决办法 - 发表于:DEDE技术吧 - Dede教程 今天偶然发现,栏目下的rss.xml路径全部重复,原来以前开启了启用多站点绝对网址就出现这种情况了,下面我们讲述解决方法: 我们打开 include/arc.
829 0
智能顾问、博客编辑等多页面标准功能触发Adblock Plus规则
一次在编辑博客的时候,提交前的滑块验证无法通过,总是提示:网络不给力,请点击刷新,或提交反馈 (00)。然而提交反馈之后根本没有人理,这服务态度也是让人呵呵了。 相关截图: 智能顾问,你每发送一条信息,就会ABP那里的数字在增加;滑块验证也是一样。
1371 0
|
JavaScript
微信浏览器禁止页面下拉查看网址(不影响页面内部scroll)
此类事件是手机touchmove默认事件行为,可以通过js代码隐藏事件: $(‘body’).on(‘touchmove’, function (event) {event.
4992 0
下一篇
无影云桌面