允许以只读方式共享安全组

https://bugs.launchpad.net/neutron/+bug/1875516

允许以只读方式共享安全组。

问题描述

当前,安全组可以通过 RBAC 系统共享,但唯一的有效操作是 access_as_shared,它允许目标租户在安全组上创建/删除(仅限)新规则。这对于应该以近乎相等的方式共享组的用例来说是有效的。

然而,某些用户/服务可能希望安全组可见,但只能只读。一个典型的例子是,允许 ProjectB 将由 ProjectA 拥有的安全组作为其自身安全组上的远程信任组添加。

对此的直接需求可以在现有的 Octavia 补丁 [1] 中找到。Octavia 希望将其为每个负载均衡器创建的安全组与负载均衡器的所有者共享,以便他们可以仅为特定的负载均衡器打开对其后端成员的访问权限。

提议的变更

为安全组 RBAC 添加新的操作类型:access_as_readonly。此操作将允许目标租户使用 show/list 查看共享的安全组,但不能为其创建/删除新规则或以任何方式更改它。

文档影响

Neutron 文档中关于共享安全组的部分需要修改,以添加操作类型 access_as_readonly

实现

负责人

  • Adam Harwell

工作项

  • 添加新的操作类型 access_as_readonly

  • config-rbac.rst 中的文档更新 [2],如 [3] 中所示

  • 在 RbacSharedSecurityGroupTest 类中创建额外的 tempest 测试 [4]

参考资料