是否有一种方法可以在SharePoint 2010中的顶部导航栏中的链接可见,只有仅选定的用户/组?我正在运行基础版本,所以我有限的选择。 此版本不提供SharePoint Server发布基础结构功能。

也许安全修剪是一个选项?

任何帮助都得到了赞赏。

提前感谢

steve.c

有帮助吗?

解决方案

正如您所说的那样,您拥有的内容不可用。开箱即用的唯一真实选项是您提到的安全修剪。重要的是要注意,导航中有两种链接将显示出来。存在显示的对象,例如添加的子站点或页面(当它被配置为显示这些对象时),然后添加了添加的手动链接。添加的任何手动链接不是修剪的安全性,实际上SharePoint不评估URL以验证它是否是非SharePoint系统中的SharePoint项目或其他内容。

其他替代方法是创建自己的导航提供程序和数据源。这将允许您从包括SharePoint列表或XML文件的任何地方提取数据,然后您可以使用额外的福利来控制您希望其与其安全性修剪的关系,目标是组成员资格等。

其他提示

迈克绝对是正确的。一个替代方案导航可能是依靠自己的导航。我已成功使用的东西是由列表和Web部件驱动的这个Mega-Menu。在这里 https://www.nothingbutsharepoint.com/sites/eusp/pages/sharepoint-2010-and-mega-drop-down-menu-navigation.aspx

除了添加一个人/组列并将人员放在该列中,否则您需要做什么,同时通过类似于“列x包含[ME]”的东西过滤已经使用[ME]的DataView。

偶然发现了这个古老的问题,我想提供这个智慧的这个潮汐:

如果以编程方式添加导航节点(如用PowerShell或C#),它们将被修剪安全。然而,通过UI手动添加的导航不是。

这是一篇文章,展示了如何使用powershell添加节点: sharepoint 2010:安全修剪导航

基本代码看起来像:

using (SPSite site = new SPSite("http://theurl/tothesite"))
{
    SPNavigationNodeCollection nodes = site.RootWeb.Navigation.TopNavigationBar;
    nodes.AddAsLast(new SPNavigationNode("Title", "/siterelative/url"));
}
.

或powershell:

$web = Get-SPWeb "http://theurl/totheweb"
$nav = $web.Navigation.TopNavigationBar
$newLink = New-Object Microsoft.SharePoint.Navigation.SPNavigationNode -ArgumentList @("Title", "/siterelative/url")
$nav.AddAsLast($newLink)
$web.Dispose()
.

希望这有助于某人在路上。

手动添加的相对URL是修剪的安全性。

许可以下: CC-BY-SA归因
scroll top