文章目录
一、keystone对象模型
二、使用token的好处
1、token缓存在客户端比账号密码缓存在客户端更安全
2、使用token访问api比使用账号密码访问api更加方便
Token的实现模式
1、UUID Token,每次验证需要访问keystone服务端
客户端发送账号和密码,keystone进行验证返回UUID Token,客户端请求其他服务时将请求内容和uuid拼接在一起,服务端收到请求后剥离uuid去keystone进行验证,验证成功后响应客户端的请求,反之返回请求错误。
2、PKI Token 验证,在客户端即可完成 发放公钥 私钥解密
客户端发送账号和密码,keystone进行认证,成功后发送公钥,之后对其他服务的请求拼接上公钥,其他服务使用私钥验证。
3、RBAC
三、policy.json权限实验
实验:
以glance的镜像是否公用为例,默认只有admin可以设置镜像为public,现在实验创建一个普通用户,然后修改policy.json文件使得普通用户可以修改镜像为public。
1、 普通用户创建公有image错误
2、修改policy.json权限
- 先备份一下
cp policy.json policy.json.bak
vim policy.json
-
去掉role:admin,修改前
-
修改后
-
重启服务
openstack-service restart glance
- 创建成功