1.6 配置角色
角色是分配给一个租户中的用户的权限。在这里配置两个角色,一个用于管理云环境的admin角色和另一个用于分配给使用云环境的普通用户的Member角色。
准备工作
在开始之前,必须确认已经登录到已经安装了OpenStack身份认证服务的OpenStack控制节点上,或者有一个已经连接到安装了OpenStack身份认证服务的服务器上的Ubuntu客户端。
登录到使用Vagrant创建的OpenStack控制节点,执行以下命令:
vagrant ssh controller
如果keystone客户端工具尚未安装,可以通过如下命令在Ubuntu客户端上安装以便管理OpenStack身份认证服务:
sudo apt-get update
sudo apt-get -y install python-keystoneclient
确保已经设置了正确的环境变量,能访问到OpenStack环境。
export ENDPOINT=172.16.0.200
export SERVICE_TOKEN=ADMIN
export SERVICE_ENDPOINT=http://${ENDPOINT}:35357/v2.0
操作步骤
要在我们的OpenStack环境中创建必需的角色,需要执行如下步骤。
1.创建admin角色。
# admin role
keystone role-create --name admin
输出如图1-3所示。
2.用同样的命令来创建Member角色,只是把name选项指定为Member。
# Member role
keystone role-create --name Member
工作原理
通过keystone客户端创建一个角色很容易实现,只需要在运行keystone时指定role-create选项,语法如下所示:
keystone role-create --name role_name
role_name的属性值不是任意的。admin角色已经在/etc/keystone/policy.json配置文件中被设置为具有管理员权限。
{
"admin_required": [["role:admin"], ["is_admin:1"]]
}
并且,当配置OpenStack Dashboard(即Horizon)的时候,它会把Member角色配置成通过控制面板接口创建用户的默认角色。
创建角色时,keystone会返回一个与角色相对应的ID,可以通过这个ID来把角色关联到某个用户。如果想查看环境中所有角色和它们所对应ID的列表,可以执行如下命令:
keystone role-list
时间: 2024-11-05 19:31:30