博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
openstack barbican重要概念
阅读量:5114 次
发布时间:2019-06-13

本文共 1589 字,大约阅读时间需要 5 分钟。

 
总体架构图 
 

 

 
各个抽象概念的关系图
 
 

 

抽象概念解释

Secrets:
Secrets是需要存储的密钥,可能的形式如:私钥、证书、密码等。
 
ACL:
除了基于角色的权限控制外,ACL可以提供基于用户访问列表的权限控制。即可以指定哪些用户对该密钥有访问权限。
 
 
Containers:
Containers是一个容器,用于存储多个secret引用。当不得不跟踪、访问上百个secret时,container非常有用。
barbican支持3种类型的container:
  • Generic
  • Certificate
  • RSA
 
每种类型的container应该保存什么类型的secret,有明确的限制。
 
Generic Containers:
用于存储任意类型的secret。对于secret的类型和存储数量没有任何限制。
 
Certificate Containers:
用于存储如下类型的secret:
  • certificate (如PEM格式的x509证书)
  • private_key (可选)
  • private_key_passphrase (optional)
  • intermediates (optional) (如PEM格式的PKCS7证书链)
 
RSA Container:
用于存储如下类型的secret:
  • RSA public key
  • RSA private key
  • RSA private key pass phrase

即非对称密钥的公钥、私钥、以及私钥密码。目前只支持RSA算法。用order创建非对称密钥的时候,自动会创建一个该类型的container,并把公钥和私钥放到该container

 
 
 
 
Orders:
order允许用户请求barbican自己产生secret。并且支持异步生成secret。当希望请求生成多个公私钥对时,非常有用。
order支持如下两种类型:
  • symmetric keys 对称密钥
  • asymmetric keys 非对称密钥
 
一个order生成一个对应的secret。
order可以异步生成。
 
 
 
Consumer:
consumer可以把一组用户或服务注册给container,表明这组用户或服务对该container感兴趣。
该设计的初衷是,当一个container被删除时,所有的consumer应该被通知该事件。
 
 
其它:
barbican除了启动api web 服务之外,还会默认启动两个消息队列的server:
service barbican-keystone-listener start/stop
service barbican-worker start/stop
 
启动流程:
/etc/init.d/barbican-keystone-listener -> /usr/bin/barbican-keystone-listener -> barbican.cmd.keystone_listener -> main
 
/etc/init.d/barbican-worker -> /usr/bin/barbican-worker -> barbican.cmd.worker -> main
 
作用:
barbican-keystone-listener:
监听keystone发出的事件,执行相应的操作。目前只有一个功能,即捕获keystone删除project的事件,然后删除对应project下的资源(container、secret等)
 
barbican-worker:
监听order操作的异步事件,执行相应的操作。如创建密钥等。事件源来自order api 
 
 
最重要的放最后:
barbican的加解密插件系统
 

 

 

转载于:https://www.cnblogs.com/tian-jiang-ming/p/8718319.html

你可能感兴趣的文章
Silverlight实用窍门系列:19.Silverlight调用webservice上传多个文件【附带源码实例】...
查看>>
2016.3.31考试心得
查看>>
mmap和MappedByteBuffer
查看>>
Linux的基本操作
查看>>
转-求解最大连续子数组的算法
查看>>
对数器的使用
查看>>
【ASP.NET】演绎GridView基本操作事件
查看>>
ubuntu无法解析主机错误与解决的方法
查看>>
尚学堂Java面试题整理
查看>>
MySQL表的四种分区类型
查看>>
[BZOJ 3489] A simple rmq problem 【可持久化树套树】
查看>>
STM32单片机使用注意事项
查看>>
swing入门教程
查看>>
好莱坞十大导演排名及其代表作,你看过多少?
查看>>
Loj #139
查看>>
hihocoder1187 Divisors
查看>>
Azure 托管镜像和非托管镜像对比
查看>>
js window.open 参数设置
查看>>
032. asp.netWeb用户控件之一初识用户控件并为其自定义属性
查看>>
Ubuntu下安装MySQL及简单操作
查看>>