1

我创建了一个自定义列表,其中包含与之相关的工作流程。工作流将项目通过不同级别的批准。

我的工作流程场景就像说发起人添加了一个项目,该项目将提交给经理批准。当经理批准后,当前列表中的几列将得到更新。经经理批准后,将转发给部门负责人。同样,当部门负责人采取行动时,列表的列值也会更新。对于所有这些用户,我已经设置了贡献权限。但问题是发起者启动的项目不应该被其他用户使用为每个项目显示的下拉菜单编辑或删除。只有项目的所有者和经理应该有权使用下拉菜单对其进行编辑。当我尝试通过高级设置更改项目的编辑访问权限时->项目级别权限-编辑访问权限设置为“仅限他们自己”

有人可以建议我解决这个问题吗?

4

2 回答 2

2

欢迎来到不完美的 Sharepoint 项目级别权限世界……

使用 Sharepoint 2007 标准的东西不会走得太远,因为您需要的是带有模拟的工作流 - 为什么需要它?

您希望根据工作流所处的状态设置项目级别权限。您只能在有权这样做时更改权限 - 工作流以启动工作流的用户身份运行,因此您的用户需要有权更改权限-> 你不希望每个用户都拥有它。所以有一种叫做“模拟”的东西(它是 Sharepoint 2010 的一项活动)。您只能使用带有 SHarepoint 2007 的自定义活动来实现模拟。

一旦您的工作流程在提升的帐户下运行,您可以轻松更改当前项目的权限,即授予某人贡献权限并收回其他人的读取权限。

这里有一篇关于如何为工作流和 Sharepoint 2007 实施项目级权限的好文章:
用于在 SharePoint Designer 2007 中实施项目级安全性的自定义活动工作流(抱歉涉及编码)

如果您真的不想编码,Codeplex 上有一些有用的项目:
有用的 Sharepoint Designer 自定义工作流活动(特别是“授予项目权限”活动)

于 2010-10-26T08:24:05.123 回答
1

请注意,项目级权限和大型列表不能很好地混合。它可能会导致列表中的一些性能问题。

请仔细查看

http://technet.microsoft.com/en-us/library/cc262787.aspx

在下面

安全范围

每个列表 1,000 个

类型:阈值

为列表设置的唯一安全范围的最大数量不应超过 1,000。

范围是安全对象及其任何未定义单独安全边界的子对象的安全边界。范围包含访问控制列表 (ACL),但与 NTFS ACL 不同,范围可以包括特定于 SharePoint Server 的安全主体。范围的 ACL 成员可以包括 Windows 用户、Windows 用户以外的用户帐户(例如基于表单的帐户)、Active Directory 组或 SharePoint 组。

于 2010-11-18T10:33:06.770 回答