修改了Trac的票证安全。
项目描述
备注
允许用户只能看到与他们关联的票证。
此插件有三个主要权限: TICKET_VIEW_REPORTER、TICKET_VIEW_CC 和 TICKET_VIEW_OWNER。 TICKET_VIEW_SELF 是这三个权限的别名。
对于每个权限,用户只能看到他们作为权限中提到的人的票证。所以如果一个用户有 TICKET_VIEW_REPORTER,他们只能看到他们报告的票证。对于 TICKET_VIEW_CC,他们只需被包含在CC列表中。
此外,还存在基于组的权限:TICKET_VIEW_REPORTER_GROUP、TICKET_VIEW_CC_GROUP 和 TICKET_VIEW_OWNER_GROUP。这些权限与它们非组对应的权限工作方式类似,不同之处在于如果您与目标用户属于同一组,则您将获得访问权限。例如,如果工单1是由Allan报告的,而Allan和Bob都在company_foo组中,并且Bob有 TICKET_VIEW_REPORTER_GROUP 权限,那么Bob将能够看到工单1,因为他与报告者共享同一个组。每个基于组的权限也是正常权限的别名,因此您无需分别授权。 TICKET_VIEW_GROUP 是所有基于组权限(因此也是所有正常权限)的别名。
这些额外的权限只能拒绝访问,不能允许访问。这意味着用户仍然必须像平常一样获得 TICKET_VIEW 权限。
最后,具有 TRAC_ADMIN 权限的用户不会受到此插件的限制。元用户“匿名”也不能被此插件限制,因为他们的身份尚未被检查。请确保不要授予匿名用户 TICKET_VIEW 权限,否则未经身份验证的用户将能够查看所有工单。
配置
所有配置选项都在 [privatetickets] 部分。
- group_blacklist
忽略 *_GROUP 权限的组。
默认为“anonymous, authenticated”
您还必须在trac.ini中的 permission_policies 设置中添加 PrivateTicketsPolicy。它必须在 DefaultPermissionPolicy 之前。如果您没有其他策略,请参阅下面的示例。
示例
一个示例配置
[privatetickets] group_blacklist = anonymous, authenticated, labusers [components] privatetickets.* = enabled [trac] permission_policies = PrivateTicketsPolicy, DefaultPermissionPolicy, LegacyAttachmentPolicy
项目详情
TracPrivateTickets-2.3.0.tar.gz 的散列
算法 | 散列摘要 | |
---|---|---|
SHA256 | 6ab51573ccafa937b5c9f80c9fa152483d20173823779b6ffc88c0efed7c4a86 |
|
MD5 | 22627578607b9ab6630e39960e63cf5e |
|
BLAKE2b-256 | bfdaaa5552e0869e3b93d09d85fd2f6f3600ebc74563a5fc74a3d9ca3547dbb3 |