码迷,mamicode.com
首页 > 其他好文 > 详细

keystone服务

时间:2015-07-07 07:09:06      阅读:1188      评论:0      收藏:0      [点我收藏+]

标签:keystone

keystone的概念:

keystone是openstack的组件之一,用于为openstack家族中的其他组件成员统一的认证服务,包括:身份认证、令牌的发放与校验、服务列表、用户权限定义等。


基本概念:


User:用户 -身份认证,一个用户可以关联到多个租户

Tenant(租户)-相当于用户组的概念,一个租户可以包括多个用户

role(角色)-关联到“用户-租户对”的元数据。可以关联到多个“用户-租户对”

Token(令牌)-用于验证用户或者“用户-租户对"的请求是否合法。

service(服务)-服务类型和名称。

Endpoint(端点)-某个服务的URL。


keystone在openstack的地位:

技术分享


用户-角色-服务交互图


技术分享


keystone的架构图:


技术分享

token:用于生成和管理Token。

Catalog:用来存储和管理service和endpoint。

identity:用来管理租户、用户、角色和验证。

policy:用来管理访问权限。(不是很理解)


keystone的验证流程:

技术分享


创建虚拟机的过程:技术分享


keystone的工作流程:


技术分享


解释:

1.alice向keystone发送用户名和密码,验证通过后,keystone会返回一个临时的令牌,和一个service的catalog。

2.alice提供这个临时的token,用keystone请求她所属的所有的租户列表。

3.alice从租户列表中选出tenant,再次向keystone发送请求,验证通过后返回该租户的Service Catalog和Token。

4.alice向nova-api发送创建vm请求,nova向keystone验证,Token是否合法?这个租户-用户是否有权向nova请求服务?

5.keystone返回验证信息,a:租户-用户alice有权访问nova服务;b:这个toaken合法;c:这个token属于租户-用户alice

6.nova根据自己的规则,判断用户是否具有创建虚拟机的权限。若有,就开启虚机,并将状态返回给用户alice。

本文出自 “gaogaozi” 博客,请务必保留此出处http://hangtiangazi.blog.51cto.com/8584103/1671484

keystone服务

标签:keystone

原文地址:http://hangtiangazi.blog.51cto.com/8584103/1671484

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!