openstack部署

无论您是遵循内部信息安全策略,还是要满足GDPR,ANSSI,PCI DSS,HIPAA或NIST等法规要求,您都可能在寻找保护数据和软件的隐私和完整性的方法。 该解决方案可以在加密中找到。 OpenStack提供了部署隐私和完整性解决方案所需的所有要素,但是运营商必须安全地部署它们。 这需要密钥管理解决方案 (KMS)来管理和保护加密密钥。

Barbican是OpenStack服务,允许操作员和用户安全地管理和存储机密。 它由一个OpenStack API组成,该API提供了Keystone身份验证 , oslo.policy和配额以及存储密码的后端。 但是机密仅与部署在Barbican后面的存储后端一样安全。 本文将讨论Barbican部署选项,并探讨每种选项如何影响云的安全性。

用户个人资料,威胁和要求

在评估关键管理选项时,需要考虑许多因素。 根据使用情况,不同的标准将具有不同的权重。

其次,KMS应该能够面对压力或失败。 应该考虑密钥存储的可用性,耐用性和可伸缩性。 理想情况下,在硬件,软件或连接故障时,关键材料仍然可用。

最后,还有一些商业因素需要考虑,包括总价,易用性以及与现有基础架构的兼容性。

考虑到所有这些因素,让我们比较一下不同的Barbican部署选项。

建筑

部署的首要考虑因素是Barbican的体系结构。 与其他OpenStack服务一样,Barbican由API服务器,数据库和可通过可配置插件访问的后端组成。 一个重要的设计目标是最小特权原则 。 密钥管理管理员应具有与存储或计算管理员不同的访问权限。 将加密和签名的数据与软件与加密密钥分开可以实现此目标,并提高云的安全性。 虽然通常做法是将API服务放在同一位置,并在OpenStack服务之间共享一个公共数据库,但最佳做法是将Barbican与使用它的服务分开。

安全存储选项

秘密商店插件允许Barbican与后端进行交互以存储,生成和检索秘密。 主要有两种类型。

第一个允许Barbican与Hashicorp Vault或Dogtag Key Recovery Authority等外部KMS交互以存储机密。 对于Barbican而言,外部KMS本质上是一个安全的黑匣子。 Barbican使用KMS的API与KMS进行交互,并提供凭据,并将额外的信息(例如参考ID)存储在Barbican数据库中,以便以后可以访问机密。

这些插件提供逻辑和特权分离,因为秘密存储在完全独立的应用程序中,通常存储在专用网络上的独立服务器上。 此外,由于您可以限制评估目标(TOE),因此整个系统可以更轻松地证明符合Common Criteria等标准。

加密插件是秘密存储插件的第二种类型。 他们加密秘密并将其直接存储在Barbican数据库中。 它们可以提供性能优势,因为它们不需要Barbican访问外部KMS。 只要数据库管理员无权访问加密密钥,加密插件即可提供特权分离。

让我们更详细地看一些可用的插件。

4个加密插件

简单的加密插件

简单加密是最简单的插件,并且是在上游部门使用devstack测试的插件。 它也是默认的开箱即用的秘密存储插件。 所有机密均通过存储在Barbican配置文件中的AES-256位密钥(密钥加密密钥(KEK))进行加密。

该插件不仅最简单,而且性能最高。 另一方面,它具有明显的缺点。 首先,由于单个密钥用于所有加密,因此如果该KEK遭到破坏,则数据库中所有租户的所有机密都将受到威胁。 此外,如果不重新加密所有现有机密信息就不可能旋转此密钥。

PKCS#11插件+ HSM

PKCS#11是功能最丰富的插件之一。 它与硬件安全模块(HSM)(例如来自Yubikey,Thales,Safenet或ATOS的硬件)进行PKCS#11对话。

简单的加密插件使用单个密钥,而PKCS#11使用多个密钥。 HSM存储两个主密钥:主加密密钥(MKEK)和主HMAC签名密钥。 然后,HSM使用这些密钥对单个租户密钥加密密钥(pKEK)进行加密和签名。 pKEK用于加密每个租户的机密。 最后,这些加密值存储在Barbican数据库中。

这比简单的加密技术具有更好的安全性。 首先,不同的租户使用不同的pKEK加密他们的秘密,因此一个租户的pKEK的妥协不会影响其他租户。 此外,密钥旋转比简单的加密要简单得多。 旋转MKEK时,仅pKEK(而不是每个秘密)需要重新加密。

其次,所有密码操作都发生在密码设备的内存中,因为pKEK全部由MKEK加密,而MKEK从未从HSM中提取。 物理HSM提供审核,防篡改和防篡改,并具有足够随机的熵源来生成密钥。 他们通常还限制密码算法和密钥以满足通用标准,FIPS 140-2或其他标准。

但是它们可能很昂贵,可能需要调整以获得最佳性能。 如果您可以通过较低的性能或安全保证来解决问题,则Yubikey或基于软件的HSM可能是较便宜的选择。

PKCS#11 +软件HSM

基于软件的HSM (最初来自DNSSEC小组的一个项目)是使用PKCS#11进行通信的加密设备的软件实现。 与基于硬件的HSM一样,它使用多键方法。 这包括一个主密钥和一个密钥加密密钥,该密钥由主密钥解密。 加密密钥和其他工件存储在文件系统中的文件中。

将PKCS#11插件与软件HSM一起使用不会提供硬件HSM的审核,篡改保护和安全认证。 但是,它确实比简单的加密技术有了显着的改进,因为它允许更轻松的密钥旋转和每个项目的KEK。

OpenStack Stein周期(目前正在开发)中有计划在此配置的上游连续集成(CI)中包括测试门。

新交所

英特尔SGX是一项新的处理器技术,允许应用程序在内存中创建称为安全区的安全区域。 这些安全区为应用程序提供了受信任的执行环境,其中安全区内的任何代码和数据的机密性和完整性在CPU程序包边界之内得到保护。

英特尔提议创建一个Barbican加密插件,该插件可以在该安全边界内执行秘密加密操作,并将加密的秘密存储在Barbican数据库中。

这种安全功能和相对较低的成本将使该插件成为有吸引力的解决方案。 但是,尚未向开源Barbican项目提出Barbican插件的代码和Barbican API的更改。

3个外部KMS插件

知识管理系统

KMIP插件与PKCS#11插件一样,使用HSM来帮助保护机密。 区别在于KMIP插件的加密机密直接存储在HSM中。 这提供了更强的安全性,同时可能降低性能和可伸缩性并增加成本。

Hashicorp保险库

Vault是由Hashicorp赞助的开源秘密管理工具。 在过去的几年中,由于其易于开发的设置和灵活的配置,它变得很流行。 存在多个身份验证插件(尽管不是针对Keystone令牌的),以及多个存储后端。

Barbican保险库插件是在OpenStack Rocky周期(2018年8月)中引入的,并在Barbican上游登机口进行了例行测试。 它允许Barbican将其秘密存储在Vault中。 保险柜主密钥用于加密机密信息,密钥旋转很容易。

但是,该插件尚未完全投入生产使用。 最大的缺陷是使用Vault根用户进行身份验证(这不是建议的安全做法),并且所有机密未分类存储在顶层。 斯坦因致力于解决这些缺陷。

狗牌

Dogtag密钥恢复授权机构(KRA)是FreeIPA的一个组件,用于存储机密,其主密钥位于NSS数据库或HSM中。 巴比肯人将机密直接存储在Dogtag KRA中。 Dogtag提供FIPS和其他认证,对于已经拥有FreeIPA部署的部署者而言,它是一个不错的选择。

选择正确的秘密存储的提示

选择Barbican背后的秘密存储是一个重要决定,它将影响秘密管理系统的安全性,性能,可伸缩性和成本。 有许多因素需要考虑,这些因素将取决于您的需求。

有法规要求或现有HSM的用户将倾向于使用KMIP或PKCS#11插件。 预算紧张的用户将密切关注仅软件选项。 那些对性能有较高需求的人会使用加密插件。

幸运的是,Barbican支持多个插件,如果以后需要更改,这些插件将很有用。 它还可以允许具有不同要求的不同机密存储在不同的插件中。


阿德·李(Ade Lee)和戴夫·麦考万(Dave McCowan)将出席“您的秘密安全吗? 在11月13日至15日在柏林举行的OpenStack峰会上 。

翻译自: https://opensource.com/article/18/10/are-your-secrets-secure

openstack部署

openstack部署_OpenStack Barbican部署选项如何保护您的云相关推荐

  1. OpenStack Yoga 三节点部署指南

    头盘 版本选择 本指南部分图片来自 OpenStack 官方 OpenStack 本指南以CentOS作为底层系统,OpenStack同样支持多种Linux系统,具体系统要求参考:https://do ...

  2. Exchange 2013部署系列之(十)信息权限保护RMS和Exchange 2013的整合

    Exchange 2013部署系列之(十)信息权限保护RMS和Exchange 2013的整合 在 Exchange 2013 中,可使用 IRM 功能对邮件和附件应用持久保护.IRM 使用 Acti ...

  3. OpenStack安装Placement组件部署(四)

    OpenStack安装Placement组件部署 一.Placement组件介绍 二.OpenStack-Placement组件部署(ct(192.168.28.11)) 1.创建数据库实例和数据库用 ...

  4. Ubuntu-12.04 OpenStack (Folsom)安装和部署手册

    Ubuntu-12.04 OpenStack的安装和部署手册 Table 2.1.  OpenStack version names Release name Release date OpenSta ...

  5. SpringCloud 应用在 Kubernetes 上的最佳实践 — 部署篇(工具部署)

    作者 | 孤弋  阿里云高级技术专家,负责 EDAS 的开发和用户体验优化工作. 导读:上一篇文章<SpringCloud 应用在 Kubernetes 上的最佳实践 - 部署篇(开发部署)&g ...

  6. ThinkPHP 学习笔记 ( 一 ) 项目部署:应用部署方式与模块分组部署方式

    /*** ThinkPHP version 3.1.3*/ ThinkPHP ( 官方网站:http://www.thinkphp.cn/ ) 目前最新版本是 3.2.2,它要求 PHP 的版本高于 ...

  7. IPS与IDS部署场景(直路部署,单臂部署,旁路部署,阻断)

    NIP介绍 NIP简介: NIP是华为的IPS设备. NIP出厂时固定接口板和扩展接口卡上的业务接口都划分为固定接口对,每对接口对之间相互独立并隔离.您可以将每对接口对视作一台虚拟IPS设备或IDS设 ...

  8. openstack 教程_OpenStack的新提示,技巧和教程

    openstack 教程 如果您今天从事系统管理工作,则需要了解OpenStack . 无论您是希望在组织中利用云技术的老练IT专业人员,还是刚开始您的职业生涯并希望为自己带来一些经验的人,我们都会在 ...

  9. 蓝/绿部署 VS 金丝雀部署

    在云端或数据中心部署新版本的最佳方式 在生产环境中更新和配置应用程序通常是件令人望而生畏的事.面对如此多的可用选项,应如何选择最适合你的用例的部署策略? 部署策略用于升级或配置正在运行的应用程序.在下 ...

最新文章

  1. python写出表白_用Python写一个简单的表白-Go语言中文社区
  2. 不要重复发明轮子:C++重用的5重境界
  3. OpenCV运行自定义OCR模型
  4. PHP(三)——PHP基础知识
  5. python opencv旋转_Python opencv实现与rotatedrect类似的矩形旋转,pythonopencv,RotatedRect
  6. 由一条编译报错信息,引出两个Go编译的重要知识
  7. linux下tomcat ssl证书,Tomcat部署ssl证书(Linux)
  8. window常用命令(持续更新)
  9. html5+php调用android手机图片,HTML5拍照上传图片Phonegap封装HTML5调用Android相机拍照上传到PHP端...
  10. 数据库篇之[bsp_advertpositions]数据表-BrnShop1.9升级至2.1升级说明(非官方版本)...
  11. java设置日历_java – 设置日历实例的时间
  12. 《中国人工智能学会通讯》——第12章 12.1 新世纪知识工程—— 在哪里跨越
  13. html与css游戏开发工具,分享15个最佳的HTML/CSS设计和开发框架
  14. linux经典书籍推荐
  15. 快检员计算机知识,计算机检验员(初/中/高级/技师/高技)
  16. Unity Editor 编辑器扩展 五 EditorGUI
  17. LaTeX 设置图片caption左对齐
  18. 语音识别-基础(一):简介【语音转文本】
  19. python英文分句_英文分句
  20. 如何检验计算机主板的好坏,怎么判断笔记本主板、CPU硬件好坏? 查看电脑配置的教程...

热门文章

  1. 人生四问,想通后面朝大海春暖花开
  2. APK 签名 v1 v2 步骤
  3. 《每日一题》NO.9:不懂这个概念一定过不了面试第一关
  4. #define 中 \ 的作用
  5. go proxy 设置
  6. Consider defining a bean of type ‘com.xxx.webservice.MeetService‘ in your configuration.
  7. Git | 如何解决冲突 (BranchName|MERGING)
  8. 共享停车位小程序,微信小程序停车场车位,微信小程序停车场系统毕设作品
  9. 转:有时候低估自己,反而会让你变得更好
  10. vue3 生成二维码