在Sharepoint的“我的网站”功能中,有一个“成员资格”Web部件,显示用户所属的分发列表。
这是我们不愿意再展示的几个小组,例如一些仅用于管理目的。
有没有办法控制显示哪些组;理想情况下,这将使用另一个AD组并设置仅显示该组的成员。
答案 0 :(得分:2)
最佳解决方案是为Active Directory中的通讯组列表设置拒绝访问权限;请按照以下步骤操作:
1)打开Active Directory用户&计算机作为管理员(任何有权创建组和修改通讯组列表安全设置的用户)。
2)转到“查看”菜单,确保“高级功能”旁边有一个复选框。
在Active Directory中创建一个新的安全组(称之为HideFromSharePoint
或其他)并将SharePoint Content Access帐户(在我的情况下为DOMAIN\sa_spcontent
)添加到该组(必须与步骤4中使用的帐户匹配)
3)对于您不希望在SharePoint中显示的所有通讯组列表,请执行以下操作:
3a)打开通讯组列表,然后选择“安全”选项卡(必须选中“高级功能”才能显示此选项卡)。
3b)点击“添加”,然后输入您在步骤3中创建的安全组的名称(HideFromSharePoint
);单击“检查名称”,然后单击“确定”。
3c)根据HideFromSharePoint
的权限;选中Read旁边的Deny框(默认情况下设置为Allow),然后在提示符处再次单击Ok和Ok。
您刚刚拒绝了HideFromSharePoint
组的任何成员对分发列表的读取权限。
4)转到SharePoint管理中心; SharedServices1;用户配置文件和属性;配置配置文件导入,在“指定帐户”下,输入您在步骤3中添加到HideFromSharePoint
- 组的帐户的凭据。(出于某种原因,如果您将其保留为使用默认内容访问帐户,SharePoint将使用其他一些帐户访问Active Directory,从而允许访问通讯组列表。您可以尝试将其他SharePoint服务帐户添加到HideFromSharePoint
组,但我认为明确指定帐户更安全,以便您知道哪个帐户正在访问AD并确保将Active Directory的“导入连接”设置为“使用默认帐户”(从而“继承”用于配置文件导入的帐户)。
5)转到SharePoint管理中心; SharedServices1;用户配置文件和属性,然后单击开始完全导入。 (您无法进行增量导入,因为组成员资格方面的用户没有任何变化;只是已更改的访问权限。)完成导入后(单击“刷新”直到“导入时间:”表示“已启动”)完全导入于2009年11月25日##:## AM - 于2009年11月25日结束导入##:## AM“)
分发名单现在不再显示在会员资格下。
有几点需要注意:
Authenticated Users
”默认具有对目录中每个对象的读访问权,并且显式允许访问权限在组织单位级别设置拒绝访问权限(例如)。HideFromSharePoint
- 组并为SharePoint Content Access帐户设置拒绝访问权限目录的步骤,但Active Directory管理最佳做法是在配置安全权限时使用组。 (然后,您可以向该组添加其他成员,并允许那些被拒绝读取访问权限。)HideFromSharePoint
- 组,因为这可能会破坏您的通讯组列表。例如;如果Exchange无法读取群组邮件将无法正常工作。只要您添加SharePoint内容访问帐户,就可以安全使用。答案 1 :(得分:1)
我很确定如果没有部署的自定义Web部件而不是官方部件,这将无法实现。 Exchange解决方案不起作用的原因是因为它的方式错误(从组到成员而不是成员到组)。
要部署它,您可以查看功能装订......您还需要更新现有网站。
这不是一个简单的答案。我不相信有一个简单的答案。
答案 2 :(得分:0)
我假设您的“成员资格”Web部件在内部使用SharePoint人员选择器功能。
如果是这种情况,那么以下stsadm命令应该可以帮助您按照自己的方式调整AD查找范围:
stsadm -o setsiteuseraccountdirectorypath -path< OU的名称> -url< URL名称>
答案 3 :(得分:0)
您可以尝试在“Exchange高级”选项卡上编辑“通讯组列表”,选中“从Exchange地址列表中隐藏组”复选框。
我没有对此进行测试,但理论上它会阻止分发列表显示组列表。
答案 4 :(得分:0)
轻松修复:在显示目标的页面上添加JavaScript,然后通过应用CSS样式隐藏特定项目。
答案 5 :(得分:0)
我没有确切的答案,但这是我如何思考这个问题。也许你已经回答了其中的一些问题,但它可能有助于再次通过它们。我会按以下顺序查看问题:
stsadm
或实际管理网站)从SharePoint中排除AD中的某些用户或组?这些问题从最广泛的范围开始,最容易实现到最难实现的最窄范围。显然,你想要实现一个最容易实现的解决方案,但也许你会发现自己在列表中更远。
在最后两个示例中,解决方案可能看起来相当复杂,但您可以编写引用要排除的站点的XML文件的代码。这样,如果您的分发列表列表发生更改,您所要做的就是编辑XML文件而不是编辑源代码(javascript或webpart)。
如果没有一个简单的解决方案,你必须做出痛苦的选择:1)让问题保持不变;或2)实施一个为你的解决方案增加依赖性的黑客。
答案 6 :(得分:0)
我认为未启用安全性的通讯组不会显示在SharePoint中。您是否检查过AD以查看这些组是否已启用安全性?这可能只是出于权限目的,所以我可能错了。
在看到任何更改之前,您可能需要进行配置文件导入。
答案 7 :(得分:0)
您可以完全关闭分发列表,这就是我们在公司所做的事情。这可以通过转到SSP中的配置文件服务策略并禁用“通讯组列表”功能来完成。
现在,如果您想选择分发列表,那就不那么简单,但希望这会对某人有所帮助。