2019独角兽企业重金招聘Python工程师标准>>>

  • 验证

    • 概念

      • 租户(tenant)

        • openstack的组织方式
        • 一个租户=一个nova的project-id
      • 用户(user)
        • 代表个体,openstack用user的形式授权
        • 一个user=一个证书(credentials)
          • 一个证书可分配给1~N个租户
          • 验证后,每个tenant会分配有一个特定令牌
      • 证书(credentials)
        • 唯一标识一个keystone user的密码/其他信息
      • 令牌(token)
        • 任意比特的文本
        • 两种类型
          • scoped:代表某个tenant验证过的user
          • unscoped:仅代表一个user
        • 有效期有限,随时可被撤回
      • 角色(role)
        • 某个tenant的权限集合
  • 服务目录

    • 服务(service)

      • nova,glance,swift等
    • 端点(endpoint)
      • 一个uri
    • 模板(template)
      • 端点的集合
  • credential的处理和存储方式

    • openstack的做法应该是 1.给每个公司分配一个userId,对应有一个证书 2.给每个用户建立多个项目,称为租户 3.证书可以分配给租户,但使用时的,是通过证书生成的令牌 4.令牌有期限,可撤换(类似oauth协议)
    • 存储证书方式:
      • keystone存储证书的方式,有多种选择, 从内置的sql 到 ldap - kvs - 内存型方式 - 最简单的backend,只需支持主键查询 - sql - 内置的是sqlite - 用SQLAlchemy持久存储 - pam - 使用OS提供的pam机制,以完成 - 授权 - user-tenant的一对一关系 - 需root权限 - ldap - 内置的是一个ldap的桩实现(FakeLdap)

backends/ --> sql.py --> Identity.authenticate(self, user_id, tenant_id, password): user_ref = self._get_user(user_id) 通过user_id获取user的信息 --> Identity._check_password(self, password, user_ref): return utils.check_password(password, user_ref.get('password')) 调用统一的password校验方法 --> utils.check_password (password, hashed): (common/utils.py) password_utf8 = password转为utf编码 return passlib.hash.sha512_crypt.verify(password_utf8, hashed) 调用独立的第三方库passlib中的方法

keystone backends/ --> 使用sql的处理方式 --> Identity.authenticate(self, user_id, tenant_id, password): 通过user_id获取user的信息 --> Identity._check_password(self, password, user_ref): 调用统一的password校验方法 --> utils.check_password (password, hashed): 调用独立的第三方库passlib中的方法,从中可以看出,password传入的是明文,存储的是sha512加密后的结果 passlib.hash.sha512_crypt.verify(password_utf8, hashed)

转载于:https://my.oschina.net/kakablue/blog/128285

openstack-keystone简记相关推荐

  1. OpenStack Keystone v3 API新特性

    OpenStack Keystone v3 API新特性 原连接 http://blog.chinaunix.net/uid-21335514-id-3497996.html keystone的v3 ...

  2. OpenStack Keystone架构

    一. Keystone简介 1. OpenStack Keystone简介 2. Keystone安装与部署 2.1 包安装Keystone 2.2 源码安装源码安装 3 配置运行Keystone 3 ...

  3. openstack keystone 用户管理

    openstack的keystone模块有用户管理和服务管理这两大块内容.这篇文章,先分析下用户管理. 一.概念理解 在讲用户管理,一定要先理解这三个概念: 用户(user):现实生活中的你.我,他. ...

  4. Openstack keystone、dashboard、swift组件启用SSL

    Openstack keystone.dashboard.swift(Mitaka版本.Ubuntu系统)启用SSL 1.Keystone启用SSL 修改endpoint 修改admin-openrc ...

  5. OpenStack Keystone架构一:Keystone基础

    一 什么是keystone keystone是OpenStack的身份服务,暂且可以理解为一个'与权限有关'的组件. 二 为何要有keystone Keystone项目的主要目的是为访问opensta ...

  6. [openstack][keystone]架构分析

    首先介绍一下keystone的整体代码框架,就是: Paste + PasteDeploy + Routes + WebOb 文章整体以ubuntu14.04操作系统为平台,如果为CentOS或其他系 ...

  7. openstack keystone整体架构与功能

    keystone是一个重要的模块,必须得理解. 1. keystone的基本功能 keystone作为openstack的Identity Service,提供了用户信息管理和完成各个模块认证服务. ...

  8. OpenStack — Keystone

    文章目录 Keystone 基础概念 Authentication Credentials Endpoint Domain Group Project Region Role Service Toke ...

  9. OpenStack 的部署T版(二)——Keystone组件

    目录 一.OpenStack安装Keystore组件 Keystone认证流程 1.OpenStack组件安装的顺序 2.创建数据库实例和数据库用户 3.安装.配置keystone.数据库.Apach ...

  10. 【OpenStack】【Keystone】安装与配置详解

    文章目录 参考文档 openstack-keystone包 keystone的配置文件 keystone.conf文件 在mysql中创建keystone数据库,给keystone账户设置权限 初始化 ...

最新文章

  1. 命令测试post_性能测试脚本编写之三
  2. echarts 去掉网格线
  3. Linux新手入门:Unable to locate package错误解决办法
  4. 计算机免修考试题库,计算机免修考试内容和样卷.doc
  5. 将字符串中的指定字符全局替换
  6. java里dir是什么意思_关于文件系统:为什么user.dir系统属性在Java中工作?
  7. linux 多个秘钥,linux管理多个ssh公钥密钥
  8. bzoj1179 Atm
  9. 风控小白入门 | 关于评分模型验证的7大问题回答
  10. 6.gloox 之 MessageHandler
  11. Atitit.java 虚拟机的构成 与指令分类 与 指令集合 以及字节码查看工具javjap
  12. 地震数据插值之深度学习方法
  13. 几何学在计算机中应用,分形几何在计算机图形学中的应用
  14. 7-4 华氏度转摄氏度 (5分) java
  15. 酷睿i3 10105参数 i3 10105功耗 i310105怎么样
  16. vmware虚拟机centos7扩容
  17. 儒略日(CSP S2 第一题)
  18. C# 编译 与 CLR
  19. java加减法验证码_Java,Springboot 实现算法验证码加减法图形验证码,Kaptcha 实现加减法验证码...
  20. 电视剧《天道》里的商业思维

热门文章

  1. CLOUD信用管理设置
  2. WPF中制作立体效果的文字或LOGO图形
  3. 关于redis连接池
  4. DOMJavaScript示例练习
  5. 数据库之SqlDataAdapter
  6. C# string.Format格式化时间或货币
  7. vb添加GIF动态图片
  8. C#、.Net经典面试题集锦(一)
  9. 边缘计算比云计算强在哪里?终于有人讲明白了
  10. 结婚生娃和去核电站参观,哪个更安全?