笑男手札:超越站点的权限管理,UserPolicy

SharePoint2013在MySite增加了一个叫做SkyDrive Pro新功能,笑男还没来得及研究一下,已经有客户遇到问题了:

在SkyDrive Pro的页面上有一条通知:

"Welcome to your SkyDrive Pro, the place to store, sync, and share your work. Documents are private until shared. Learn more here.Dismiss"

SP2013SkyDrive.jpg

这就是说,你在SkyDrive Pro中新创建的文件夹默认的都是没有共享给其他人的,这就是说,如果你没有Share给其他人,那么他就应该是对其他人隐藏不可见的。

现在问题出现了,客户确认在没有分享给任何人的情况下,她的SkyDrive Pro私有文件夹还是可以被别人看到。而且,她也可以看到其他客户SkyDrive Pro里面的私有文件夹。

首先要做的,当然是去Site Permisson里面,利用Permission Check去检查一下权限,很奇怪的是,并没有什么内容可以显示出权限的异常。难道是SkyDrive Pro的权限,默认可以把私有文件夹显示给别人?这不就是微软大哥自摆乌龙?

SharePoint的权限可以这样追下去(括号内,纯属个人杜撰,仅供理解):

  1. Site collection administrator,网站集管理员(网站集级别权限);
  2. Site Onwer,网站所有人以及相应的member,visitor之类的(网站级别权限);
  3. List/Library的独立权限(网站内容级别权限);
  4. Folder/Item的独立权限(内容级别权限);

对于这个SkyDrive Pro的私有文件夹,我查了以上的四个级别的所有权限,没有发现什么异常。

以上四个级别的权限是用户甚至是超级用户所能控制的所有权限,但是什么问题都没有发现,那么就只剩下唯一的一个地方了:Web Application的权限!!!

故事讲到这里,有点意外了。因为很少会有人在Web Application级别做权限的变更操作,当然,也只有Farm administrator才可以做到。

检查之后,愕然发现,有人在MySite的Web Application的User Policy里面加了一条“Everyone Full Read”(下图打勾得一项):

 UserPermission.jpg

好吧,找到凶手了,难怪MySite的私有文件夹可以被别人随便看,因为在Web Application级别就被定义为“所有人都有读”的权限了。

经过一圈的询问后,原来是客户自己加的,不过这个权限把SkyDrive Pro的一个特性给OverRide了。

嗯,原来在日常客户可以编辑的四级权限之上,Web Application级别的权限也是需要考虑到的,尽管很少可能会在这一层出现问题。

Reference:

http://blogs.msdn.com/b/sharepoint_chs/archive/2012/11/27/skydrive-pro-5.aspx

原文地址:https://www.cnblogs.com/Dengxuan05/p/4079870.html