第 8 章 配置 RBAC 策略
在 OpenShift (RHOSO)环境中的 Red Hat OpenStack Services 中,管理员可以使用网络服务(neutron)中的基于角色的访问控制(RBAC)策略来控制哪些项目被授予网络的权限,以及访问 QoS 策略、安全组、地址范围、子网池和地址组等其他资源。
网络服务 RBAC 与 Identity 服务(keystone)在 RHOSO 中使用的安全基于角色的访问控制(SRBAC)分开。
8.1. 创建 RBAC 策略 复制链接链接已复制到粘贴板!
本例流程演示了如何使用网络服务(neutron)基于角色的访问控制(RBAC)策略,在 OpenShift (RHOSO)环境中的 Red Hat OpenStack Services 中授予共享网络的访问权限。
先决条件
-
管理员已为您创建一个项目,并为您提供了一个
clouds.yaml文件来访问云。 python-openstackclient软件包驻留在您的工作站上。$ dnf list installed python-openstackclient
流程
确认为您的云设置了系统
OS_CLOUD变量:$ echo $OS_CLOUD my_cloud如果需要,重置变量:
$ export OS_CLOUD=my_other_cloud作为替代方案,您可以在每次运行
openstack命令时添加--os-cloud <cloud_name> 选项指定云名称。查看可用网络列表:
$ openstack network list+--------------------------------------+-------------+-------------------------------------------------------+ | id | name | subnets | +--------------------------------------+-------------+-------------------------------------------------------+ | fa9bb72f-b81a-4572-9c7f-7237e5fcabd3 | web-servers | 20512ffe-ad56-4bb4-b064-2cb18fecc923 192.168.200.0/24 | | bcc16b34-e33e-445b-9fde-dd491817a48a | private | 7fe4a05a-4b81-4a59-8c47-82c965b0e050 10.0.0.0/24 | | 9b2f4feb-fee8-43da-bb99-032e4aaf3f85 | public | 2318dc3b-cff0-43fc-9489-7d4cf48aaab9 172.24.4.224/28 | +--------------------------------------+-------------+-------------------------------------------------------+查看项目列表:
$ openstack project list+----------------------------------+----------+ | ID | Name | +----------------------------------+----------+ | 4b0b98f8c6c040f38ba4f7146e8680f5 | auditors | | 519e6344f82e4c079c8e2eabb690023b | services | | 80bf5732752a41128e612fe615c886c6 | demo | | 98a2f53c20ce4d50a40dac4a38016c69 | admin | +----------------------------------+----------+为
web-servers网络创建一个 RBAC 条目,以授予对auditors项目的访问权限(4b0b98f8c6c040f38ba4f7146e8680f5):$ openstack network rbac create --type network --target-project 4b0b98f8c6c040f38ba4f7146e8680f5 --action access_as_shared web-servers输出示例
+----------------+--------------------------------------+ | Field | Value | +----------------+--------------------------------------+ | action | access_as_shared | | id | 314004d0-2261-4d5e-bda7-0181fcf40709 | | object_id | fa9bb72f-b81a-4572-9c7f-7237e5fcabd3 | | object_type | network | | target_project | 4b0b98f8c6c040f38ba4f7146e8680f5 | | project_id | 98a2f53c20ce4d50a40dac4a38016c69 | +----------------+--------------------------------------+因此,auditor 项目中的 用户可以 将实例连接到
web-servers网络。