Keystone的安全认证

一、Keystone的服务器端架构

  1. Keystone的服务器端提供了一些Restful API
  2. 同时提供了一些针对这些Restful API的过滤器

二、客户端发送HTTP请求流程

  1. 客户端创建一个Keystone Client对象,其实就是一个HTTP Client对象
  2. 直接请求服务器端的Restful API

三、Keystone提供的几种用户认证形式

  1. admin_token方式认证
    这种认证定义在admin_token_auth过滤器中。
  2. 用户名密码方式认证
    (1)本地认证
    (2)Token认证
    服务器端和客户端都会缓存用户的token
    (3)外部认证
    提供了两种token格式,UUID和PKI。

四、访问Openstack服务的流程

访问其他服务(如Cinder、Nova)的流程大致如下

  1. 创建Keystone Client对象。通过Keystone Client对象向Keystone服务器发送认证请求,申请用户Token。在用户Token中,可以提取Token ID和服务目录。
  2. 创建需要访问的Openstack组件的相应Client对象(如果需要访问Glance服务,则创建Glance Client对象)。根据Token中的服务目录,设置Client对象的endpoint等信息
  3. 当Client对象向Openstack服务发送HTTP请求时,OpenStack服务会通过auth_token过滤器向Keystone服务器发送认证请求。如果认证成功,OpenStack再调用相应的方法处理用户请求。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、Keystone的起源 早期用户、消息、API调用的认证鉴权都放到Nova模块中 后来因为有各种各样的模块加入...
    K1024阅读 893评论 0 0
  • 第一章 OpenStack基础 OpenStack管理的资源及提供的服务OpenStack做为一个操作系统,...
    sgt_tiger阅读 13,048评论 4 72
  • 本文目录:一、单体应用 VS 微服务二、微服务常见安全认证方案三、JWT介绍四、OAuth 2.0 介绍五、思考总...
    挨踢的懒猫阅读 18,011评论 5 29
  • 转载本文需注明出处:微信公众号EAWorld,违者必究。 本文目录: 一、单体应用 VS 微服务 二、微服务常见安...
    72a1f772fe47阅读 8,583评论 3 25
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,890评论 18 139