19-AWS Key Management Service(KMS)

Hello大家好,欢迎来到《AWS解决方案架构师认证 Professional(SAP)中文视频培训课程》,我们今天的课程内容为AWS Key Management Service。







Aliplayer Online Settings


AWS KMS是一项托管服务,使用KMS可轻松创建和控制加密数据所用的加密密钥。该服务提供可用性高的密钥生成、存储、管理和审计解决方案。

我们开始今天的课程内容。

AWS KMS它是一项托管服务,用于创建和管理加密密钥,在 AWS KMS 中创建的客户主密钥均受硬件安全模块 (HSM) 保护。

KMS服务的特点和优势

KMS服务有以下特点和优势:

  • 完全托管,具有可扩展性、持久性和高可用性;
  • KMS提供了单一控制点,集中式管理密钥,可以随时创建新密钥,以及对密钥的生命周期和权限进行集中控制;
  • KMS与AWS服务集成,可简化密钥使用以加密AWS工作负载中的数据,AWS KMS 可与大部分其他 AWS 服务无缝集成,因此在这些服务中加密数据甚至仅需要勾选“加密”复选框即可完成加密。
  • 成本低廉,使用KMS服务不需要事先承诺用量,也没有预付费用。

KMS实操演示内容

接下来的内容我们来演示下如何使用KMS服务,大致分成三个部分:

  1. 首先创建一个CMK。CMK也就是客户主密钥,是主密钥的逻辑表示,它包含元数据如密钥ID、创建日期、描述和密钥状态,CMK还包括用于加密和解密数据的密钥材料。
  2. 然后定义密钥管理员及密钥用户。可以在创建CMK时定义,或者创建后在添加。
  3. 完成前面两步后,密钥用户使用 密钥ID 来加密和解密数据。

KMS实操演示内容-创建客户主密钥

首先,我们先进入KMS管理控制台,看下左边的内容:

AWS托管密钥,是指由AWS KMS集成的AWS服务代表您在您的账户中创建、管理和使用的CMK。举个例子大家就理解了:在创建EBS卷时,如果选择了加密此卷而在主密钥选择了默认,则AWS服务就会在这里创建一个AWS托管密钥CMK,可以看到我这里就有一个AWS托管CMK,就是创建卷选择加密后自动由AWS服务创建的。

在很多场景下,我们需要对密钥进行更多的管理和控制,以及使用密钥加密自己的数据等等,在这种情况下就无法使用AWS托管密钥了,需要在客户管理的密钥这里,创建密钥。

客户管理的密钥,是指在您的AWS账户中创建、拥有和管理的CMK,在这里的CMK您可以完全控制。

我们要在这里创建一个CMK,点击“创建密钥”。

密钥类型可以选择对称和非对称,我们选择对称,使用单个加密密钥加密和解密。

然后看下高级选项,可以选择密钥的来源:KMS、外部、以及自定义密钥库,也就是说,可以将您的外部对称的256位密钥导入KMS。

我们选择KMS,然后下一步,创建别名和描述,我们输入别名,iloveawscntest,标签我们暂不设置,下一步。

定义密钥管理权限,在这一步我们需要配置一个密钥管理员, 密钥管理员拥有对密钥的控制权限。

在这里已经列出了我的所有IAM用户和角色,可以看到有一个IAM用户zhangsan,我们选择他将其配置为密钥管理员,然后下一步。

然后定义密钥使用权限,我们先不配置,一会在配置。

下面“其他AWS账户”,可以指定使用此密钥的其他AWS账户,密钥是支持跨账户使用的,我们不配置,点击下一步。

审核和编辑密钥策略, 我们看下目前密钥策略的内容。

principal委托人内容为根用户,拥有所有的KMS操作权限。

在往下看,可以看到我们之前步骤定义的密钥管理员zhangsan用户允许的KMS操作,点击完成。

好的,CMK就已经创建完成了,这里列出了CMK的别名和密钥ID。别名是一个显示名称,使用它来表示CMK。在拥有多个CMK时,通过别名可以让我们更容易辨别CMK。

点击密钥ID,我们看下可以查看到哪些具体信息以及配置。

  • 可以在“密钥策略”这里点击“切换到策略视图”,查看和编辑策略信息。
  • 密钥管理员部分,可以看到我们已经添加的zhangsan用户做为密钥管理员,也可以通过“添加”按钮添加更多的密钥管理员。
  • 密钥用户,是指哪些IAM用户和角色使用此密钥用于加密操作。我们之前没有添加密钥用户,现在创建个用户然后添加到密钥用户:

KMS实操演示内容-添加密钥用户

进入到IAM-用户,创建一个kms-test用户,访问类型选择“编程访问”,然下一步直到完成创建用户。

然后回到KMS,刷新一下,然后点击“添加”,添加密钥用户,选择刚刚创建的KMS-TEST用户,可以看到我们已经完成了添加密钥用户。

添加了kms-test用户为密钥用户后,这个用户就可以通过他的访问密钥ID和私有访问密钥来加密或者解密他自己的数据。

最后要补充一点,不论是您创建的CMK,还是其他AWS服务创建的CMK,都无法从KMS服务中导出,这样是为了确保CMK的安全,也就避免了您自己遗失了密钥从而造成安全隐患;

如果您有数据需要加密,是通过KMS使用这个密钥ID来加密、解密您的数据。AWS KMS 服务创建的密钥永远不会在创建密钥的 AWS 区域以外传输,并且只能在创建密钥的区域内使用,(这个非常非常重要)这个知识点要掌握,考试会涉及到。

好的,以上就是我们今天的课程内容,我们今天介绍了AWS Key Management Service(KMS)服务,并且演示创建了CMK,以及配置密钥管理员、密钥用户等内容。

希望此系列教程能为您通过 AWS解决方案架构师认证 Professional 认证考试带来帮助,如您有任何疑问,请联系我们:

  • AWS爱好者的网址是www.iloveaws.cn。
  • 可以通过扫码加入【AWS爱好者】微信公众号,查看原创的AWS知识点相关文章
  • 加入【AWS爱好者】微信群,和其他同学一起备考,以及探讨交流AWS相关知识
  • 加入【AWS知识星球】持续学习。

我们今天的视频课程就到这里,感谢大家的观看,我们下一课程再见。

2020年5月12日

0 responses on "19-AWS Key Management Service(KMS)"

Leave a Message

error: Content is protected !!