New Custom Key Stores in KMS – Backed by CloudHSM

Another new announcement was made by AWS here at re:Invent, this time in the popular security category. AWS has announced new custom key stores backed by CloudHSM. Here’s some background and a summary of what this means.

The Key Management Service (KMS) stores and generates encryption keys that can be used by other AWS services and applications to encrypt your data.  A main component of KMS is the Customer Master Key (CMK), and there are there are 2 types of CMKs. One which is managed and created by customers of AWS and two, those that are managed and created by AWS themselves.  CMKs are stored in KMS using its own key store to securely maintain and store the CMKs which never leave the perimeter of the service.

CMKs that are created and generated by AWS customers allow for greater flexibility, such as key rotation, governing access, and key policy configuration, along with being able to both enable and disable the key when it is no longer required.

This new feature applies to customer managed CMKs only.  Instead of using KMS to store your CMKs, you can now generate a custom key store, which is effectively a cluster of hardware security modules (HSMs) managed by the AWS CloudHSM service.  

When creating your customer managed CMK you will now see an option to use a custom key store, where the keys will reside on HSMs outside of KMS.  

AWS custom key store CloudHSM

When selecting this option for your CMK you will be storing your key in a CloudHSM cluster.  These CMKs will then never leave your HSM cluster since KMS will be authorized to access the keys.  When the CMK is required, KMS will receive the request relating to the key held in your HSM and will communicate with your custom key store.  However, it’s important to note that all operations relating to the CMK are performed inside of the HSM and NOT KMS.

You may be thinking, this is a great feature but why would you want to do this in the first place?

In the world of security, your data may need to comply with a huge range of governance controls and compliance, and some of these may require you to store your key material in a dedicated HSM, rather than in a service like KMS.  By using a custom key store, you can still use the features and benefits of KMS and its interactions with other services and apps, while adhering to the requirements of having to store your key material in a dedicated HSM cluster.  Being able to control and manage your keys independently of KMS provides you with greater management of the keys.

With this additional control comes greater responsibility. KMS is no longer maintaining the availability of your keys, so you need to manage your cluster and high availability of that cluster.  Although you must have a minimum of two HSMs in your cluster for a custom key store, you should understand how CloudHSM can provide increased HA across multiple AZs before adopting custom key stores.

Having your CMKs stored outside of KMS prevents them from automatically being rotated by KMS.  Also, it’s not possible to import your own key material into a custom key store or migrate existing CMKs from the KMS key store to your custom key store.  All other aspects of using CMKs remains the same, so you don’t have to alter any other configurations. Any requests relating to the CMK still go through KMS, and you still use the same KMS APIs as you normally would.  It’s simply the location of the key store that’s different.

As expected, this new feature is fully supported by AWS CloudTrail as AWS CloudHSM logs all API activity. Additionally, CloudHSM maintains its own logs covering user and key management access, which are also sent to CloudWatch for further analysis if required.

From a cost perspective, there are no additional KMS charges, but you will be charged for the use of the CloudHSM cluster, depending on how many HSMs you have.  More information on CloudHSM pricing can be found here: https://aws.amazon.com/cloudhsm/pricing/

In summary, this is a great new feature that allows you to be more in control of your customer generated CMKs that will enable you to meet specific compliance while utilizing all the benefits from KMS.

For more information on KMS, check out Cloud Academy’s KMS course here.

 

Avatar

Written by

Stuart Scott

Stuart is the AWS content lead at Cloud Academy where he has created over 40 courses reaching tens of thousands of students. His content focuses heavily on cloud security and compliance, specifically on how to implement and configure AWS services to protect, monitor and secure customer data and their AWS environment.


Related Posts

Patrick Navarro
Patrick Navarro
— January 22, 2020

Top 5 AWS Salary Report Findings

At the speed the cloud tech space is developing, it can be hard to keep track of everything that’s happening within the AWS ecosystem. Advances in technology prompt smarter functionality and innovative new products, which in turn give rise to new job roles that have a ripple effect on t...

Read more
  • AWS
  • salary
Alisha Reyes
Alisha Reyes
— January 6, 2020

New on Cloud Academy: Red Hat, Agile, OWASP Labs, Amazon SageMaker Lab, Linux Command Line Lab, SQL, Git Labs, Scrum Master, Azure Architects Lab, and Much More

Happy New Year! We hope you're ready to kick your training in overdrive in 2020 because we have a ton of new content for you. Not only do we have a bunch of new courses, hands-on labs, and lab challenges on AWS, Azure, and Google Cloud, but we also have three new courses on Red Hat, th...

Read more
  • agile
  • AWS
  • Azure
  • Google Cloud Platform
  • Linux
  • OWASP
  • programming
  • red hat
  • scrum
Alisha Reyes
Alisha Reyes
— December 24, 2019

Cloud Academy’s Blog Digest: Azure Best Practices, 6 Reasons You Should Get AWS Certified, Google Cloud Certification Prep, and more

Happy Holidays from Cloud Academy We hope you have a wonderful holiday season filled with family, friends, and plenty of food. Here at Cloud Academy, we are thankful for our amazing customer like you.  Since this time of year can be stressful, we’re sharing a few of our latest article...

Read more
  • AWS
  • azure best practices
  • blog digest
  • Cloud Academy
  • Google Cloud
Avatar
Guy Hummel
— December 12, 2019

Google Cloud Platform Certification: Preparation and Prerequisites

Google Cloud Platform (GCP) has evolved from being a niche player to a serious competitor to Amazon Web Services and Microsoft Azure. In 2019, research firm Gartner placed Google in the Leaders quadrant in its Magic Quadrant for Cloud Infrastructure as a Service for the second consecuti...

Read more
  • AWS
  • Azure
  • Google Cloud Platform
Alisha Reyes
Alisha Reyes
— December 10, 2019

New Lab Challenges: Push Your Skills to the Next Level

Build hands-on experience using real accounts on AWS, Azure, Google Cloud Platform, and more Meaningful cloud skills require more than book knowledge. Hands-on experience is required to translate knowledge into real-world results. We see this time and time again in studies about how pe...

Read more
  • AWS
  • Azure
  • Google Cloud
  • hands-on
  • labs
Alisha Reyes
Alisha Reyes
— December 5, 2019

New on Cloud Academy: AWS Solution Architect Lab Challenge, Azure Hands-on Labs, Foundation Certificate in Cyber Security, and Much More

Now that Thanksgiving is over and the craziness of Black Friday has died down, it's now time for the busiest season of the year. Whether you're a last-minute shopper or you already have your shopping done, the holidays bring so much more excitement than any other time of year. Since our...

Read more
  • AWS
  • AWS solution architect
  • AZ-203
  • Azure
  • cyber security
  • FCCS
  • Foundation Certificate in Cyber Security
  • Google Cloud Platform
  • Kubernetes
Avatar
Cloud Academy Team
— December 4, 2019

Understanding Enterprise Cloud Migration

What is enterprise cloud migration? Cloud migration is about moving your data, applications, and even infrastructure from your on-premises computers or infrastructure to a virtual pool of on-demand, shared resources that offer compute, storage, and network services at scale. Why d...

Read more
  • AWS
  • Azure
  • Data Migration
Wendy Dessler
Wendy Dessler
— November 27, 2019

6 Reasons Why You Should Get an AWS Certification This Year

In the past decade, the rise of cloud computing has been undeniable. Businesses of all sizes are moving their infrastructure and applications to the cloud. This is partly because the cloud allows businesses and their employees to access important information from just about anywhere. ...

Read more
  • AWS
  • Certifications
  • certified
Avatar
Andrea Colangelo
— November 26, 2019

AWS Regions and Availability Zones: The Simplest Explanation You Will Ever Find Around

The basics of AWS Regions and Availability Zones We’re going to treat this article as a sort of AWS 101 — it’ll be a quick primer on AWS Regions and Availability Zones that will be useful for understanding the basics of how AWS infrastructure is organized. We’ll define each section,...

Read more
  • AWS
Avatar
Dzenan Dzevlan
— November 20, 2019

Application Load Balancer vs. Classic Load Balancer

What is an Elastic Load Balancer? This post covers basics of what an Elastic Load Balancer is, and two of its examples: Application Load Balancers and Classic Load Balancers. For additional information — including a comparison that explains Network Load Balancers — check out our post o...

Read more
  • ALB
  • Application Load Balancer
  • AWS
  • Elastic Load Balancer
  • ELB
Albert Qian
Albert Qian
— November 13, 2019

Advantages and Disadvantages of Microservices Architecture

What are microservices? Let's start our discussion by setting a foundation of what microservices are. Microservices are a way of breaking large software projects into loosely coupled modules, which communicate with each other through simple Application Programming Interfaces (APIs). ...

Read more
  • AWS
  • Docker
  • Kubernetes
  • Microservices
Nisar Ahmad
Nisar Ahmad
— November 12, 2019

Kubernetes Services: AWS vs. Azure vs. Google Cloud

Kubernetes is a popular open-source container orchestration platform that allows us to deploy and manage multi-container applications at scale. Businesses are rapidly adopting this revolutionary technology to modernize their applications. Cloud service providers — such as Amazon Web Ser...

Read more
  • AWS
  • Azure
  • Google Cloud
  • Kubernetes