1. Home
  2. Training Library
  3. Amazon Web Services
  4. Courses
  5. Manage Your Own Encryption Keys Using AWS CloudHSM

Access Control

The course is part of these learning paths

Security - Specialty Certification Preparation for AWS
AWS Security, Identity & Compliance
AWS Access & Key Management Security
more_horizSee 1 more
Start course

HSM stands for Hardware Security Module, but what is a hardware security module? It’s a physical tamper-resistant hardware appliance that is used to protect and safeguard cryptographic material and encryption keys.

The AWS CloudHSM service provides HSMs that are validated to Federal Information Processing Standards (FIPS) 140-2 Level 3, which is often required if you are going to be using your CloudHSM for document signing or if you intend to operate a public certificate authority for SSL certificates.

Learning Objectives

The objectives of this course are to explain:

  • What AWS CloudHSM is and does
  • The architecture of CloudHSM and its implementation
  • Access Control of your HSM Cluster
  • How to use CloudHSM as a custom key store in KMS, the Key Management Service
  • Monitoring and Logging

Intended Audience

This course is intended for anyone who is:

  • Responsible for protecting data stored within AWS
  • Looking to utilize a managed service to help perform cryptographic operations
  • Preparing for an AWS certification that requires you to have knowledge of securing data


To get the most out of this course, you should have a basic awareness of the fundamentals of AWS and some of its core services, such as VPC architecture. Some basic cryptography knowledge would also be beneficial, but not essential.



Hello and welcome to this lecture where I want to highlight how you can access AWS CloudHSM.  

More often than not in AWS, access to resources can be controlled by IAM controls, however, CloudHSM is slightly different.  Instead of using IAM users, the service has its own users and security held on the HSMs themselves utilizing a role-based access control method.  Do bear in mind, however, you will still need permissions from within IAM to use the CloudHSM service.   As you might expect, there are different types of users with different levels of controls as to what actions they can perform on the module.  So let’s take a look.  

The types of users available on the HSM are as follows:

  • Precrypto Office (PRECO).
  • Crypto Office (CO).
  • Crypto User (CU).
  • Appliance User (AU).

After you have created your HSM cluster, the first HSM you connect to will be provisioned with the Precrypto Office (PRECO) user with a default username and password.  This is a temporary user with temporary credentials of read-only access to the cluster.  Using the PRECO user you must activate your cluster. As a part of the activation process of your cluster you will need to change the PRECO password, and by doing so your PRECO user will then become the Crypto Office (CO) user.  

The Crypto Office (CO) user contains a more advanced permission set than that of the PRECO user.  The CO has the ability to carry out user management tasks, such as the creation and deletion of users, in addition to changing users' passwords.  It can also perform some administrative level operations as well, including:

  • The ability to zeroise data on the HSM, which will delete certificated, keys and any other data on the HSM.
  • Obtain HSM details such as the different HSM IP address in the cluster, the models, and serial numbers.
  • View and determine the synchronization status across your cluster.

A Crypto User (CU) is used predominantly to perform the cryptographic operations and key management functions with your CloudHSM cluster, these include: 

  • Create, delete, import/export, and share cryptographic keys.
  • Perform encryption and decryption, plus signing and verifying.

Also, much like the CO, CUs are also able to zeroise data and basic cluster information such as IP address and serial number and retrieve cluster synchronization status.

The Appliance User (AU) performs cloning and synchronization across your cluster and it exists on all HSMs.  The CloudHSM calls upon the AU to ensure the synchronization of your HSMs within your cluster is maintained.  

Here is a summary of the different user types used on the HSMs. (Image source: https://docs.aws.amazon.com/cloudhsm/latest/userguide/manage-hsm-users.html#user-permissions-table)

The hardware security modules are designed with physical tamper detection and response processes.  This means that if the HSM detected any kind of physical breach or tampering of the device, it would begin key deletion across the hardware. 

In addition to this, the HSMs are also designed with protection against brute force login attacks.  This means that if you were to incorrectly enter the wrong passwords for a Crypto User, then that HSM would lock out that user, and would have to be unlocked by a Crypto Officer.

About the Author
Stuart Scott
AWS Content Director
Learning Paths

Stuart has been working within the IT industry for two decades covering a huge range of topic areas and technologies, from data center and network infrastructure design, to cloud architecture and implementation.

To date, Stuart has created 90+ courses relating to Cloud reaching over 140,000 students, mostly within the AWS category and with a heavy focus on security and compliance.

Stuart is a member of the AWS Community Builders Program for his contributions towards AWS.

He is AWS certified and accredited in addition to being a published author covering topics across the AWS landscape.

In January 2016 Stuart was awarded ‘Expert of the Year Award 2015’ from Experts Exchange for his knowledge share within cloud services to the community.

Stuart enjoys writing about cloud technologies and you will find many of his articles within our blog pages.