三分钟带你入门了解openstack的keystone项目
文章目录
前言
一:Keystone项目
1.1:什么是keystone?有什么作用?
- Keystone是openstack中的一个辅助项目,类似于LDAP服务,对用户、租户、角色和服务进行授权,并且支持多种认证机制
1.2:Keystone的体系结构是怎样的?
- 体系结构有两个主要部件:验证和服务目录
1.2.1:验证
-
提供了一个基于令牌的验证服务
-
用户(user)
-
使用服务的用户,可以是人、服务或者系统,只要是使用了openstack服务的对象都可以成为用户。当用户对openstack进行访问时,keystone会对其进行验证
-
项目(project)
租户:可以理解为一个人、项目或组织拥有的资源的合集,一个租户中可以拥有多个用户,这些用户可以根据权限的划分访问租户中的资源
项目:是各个服务中心的一些可以被访问的资源集合,用来分组或隔离资源或者身份对象,不同服务中心涉及的资源也不一样
-
角色(role)
- 角色,是一组用户可以访问的资源权限的集合
-
令牌(token)
- 指的是一串比特值或者字符串,用来作文访问资源的令牌。Token中含有可访问资源的范围和有效时间
1.2.2:服务目录
-
服务(service)
- Openstack service,即openstack中运行的组件服务,如Nova,glance等
- 用户使用云中的资源是通过访问服务的形式实现的
- 创建一个服务就会创建一个endpoint,service决定每个role能做什么事情,service通过各自的policy.json文件对role进行访问控制
-
端点(endpoint)
是一个可以通过网络来访问和定位某个openstack service的地址,通常是一个URL。
Endpoint使用对象分为三类:
- 1、admin URL:给admin用户使用,被常规的访问中分离
- 2、Internal URL:openstack内部服务使用来跟别的服务通信,只能被局域网访问
- 3、Public URL:其他用户可以访问的地址,可以被全局访问
- 4、User通过endpoint访问资源和执行操作
-
所谓端点,是指用于访问某个服务的网络地址或URL。如果需要访问一个服务,则必须知道该服务的端点。在 keystone中包含一个端点模板,这个模板提供了所有已存在的服务的端点信息。一个端点模板包含一个URL列表,列表中的每个URL都对应一个服务实例的访问地址,并且具有 public、 private和 admin这三种权限。其中 public类型的端点可以被全局访问, private类型的端点只能被 OpenStack内部服务访问, admin类型的端点只能被管理员访问。
1.3:Keystone的认证流程图是怎样的?
1.4:Keystone对接dashboard具体体现在哪里?
-
Dashboard界面的身份管理图形界面—管理员账户(项目管理、用户管理、角色管理、组管理)
d具体体现在哪里? -
Dashboard界面的身份管理图形界面—管理员账户(项目管理、用户管理、角色管理、组管理)
-
Dashboard界面的身份管理命令终端—管理员账户(项目管理、用户管理、角色管理、组管理)