Overview
CipherTrust Cloud Key Manager (CCKM, also referred to as CCKM Embedded) centralizes the management of key life cycle for various cloud services providers. The CCKM complies with data security mandates in cloud storage environments while retaining the custodianship of the encryption keys. Enterprises can back up keys on-premise, destroy keys when no longer needed, and manage the entire life cycle of the cloud keys.
The following diagram shows the high level CCKM overview:

CCKM Components
The CCKM solution comprises the following components:
- CCKM GUI on the CipherTrust Manager for administrators and users 
- At least one of the supported clouds 
- A supported trusted key source 
- A supported Internet browser 
The product is delivered as a licensed component of the CipherTrust Manager appliance that can be installed on any one of the supported deployment methods.
Supported Clouds
- Amazon Web Services (AWS) - AWS China 
- AWS GovCloud 
 
- Azure Cloud - Azure China Cloud 
- Azure US Government 
 
- Google Cloud 
- Oracle Cloud 
- Salesforce - Salesforce Sandbox
 
- SAP Data Custodian 
Note
- AWS China cloud does not support uploading 256-bit keys. It supports 128-bit keys only. CCKM automatically uploads 128-bit keys to the AWS China cloud through the GUI. Other AWS clouds support upload of 256-bit keys. 
- AWS China cloud does not support creation of native asymmetric keys. 
- Azure China cloud has not been tested from CipherTrust Manager 2.9.0 release onward. 
Supported Cloud Services
- AWS Customer Managed CMKs 
- AWS Custom Key Stores - AWS CloudHSM Key Stores 
- External Key Stores (XKS) 
 
- Azure Cloud BYOK 
- Azure Key Vault Managed HSM 
- Azure Stack (Azure Active Directory, Azure AD) 
- Azure Stack (Active Directory Federation Services, AD FS) 
- Google Workspace Client Side Encryption (CSE) 
- Google Cloud CustomerManaged Encryption Keys (CMEK) 
- Google Cloud External Key Manager (EKM) 
- Google Ubiquitous Data Encryption (EKM+UDE) 
- Oracle Cloud Infrastructure (OCI) (BYOK) 
- OCI External Key Management Service (EKMS) 
- Salesforce Bring Your Own Key (BYOK) 
- Salesforce Cache-Only Key Service 
- SAP Data Custodian Key Management Service (BYOK) 
Supported Key Sources
CCKM uses the following as the trusted key sources for the encryption keys employed within the supported clouds:
- CipherTrust Manager 
- External CipherTrust Manager 
- Azure Dedicated HSM 
- Luna Network HSM (referred to as Luna HSM in this document): This release supports: - Luna Network HSM Software and Firmware versions v7.3.x and higher. 
- PED and Password-based HSM configurations. 
- Import of RSA-4096 keys from Luna HSM Software and Firmware versions 7.4.x and higher. 
- Symmetric and asymmetric keys with Luna HSM. 
 - Note - CCKM doesn't support FM-enabled Luna HSM as a key source. 
- Data Security Manager (DSM): This release supports DSM v6.4 Cumulative Patch 3 and higher. 
The CipherTrust Manager supports all clouds that CCKM supports. The CipherTrust Manager stores its own keys and the backup keys from the supported clouds.
Note
On the CipherTrust Manager, CCKM cannot manage source keys created on the CCKM Appliance v1.x.
Supported Deployment Methods
The CCKM is delivered as part of the CipherTrust Manager appliance. So, CCKM can be automatically deployed with the deployment of the CipherTrust Manager in the following supported environments:
- Amazon Web Services 
- Google Cloud Platform 
- Microsoft Azure 
- Oracle Cloud 
- Private Clouds - Oracle VMware vSphere, Microsoft Hyper-V, and OpenStack 
- Physical Appliances 
Refer to the CipherTrust Manager Deployment Guide for the complete list of supported environments and deployment instructions.
Supported Internet Browsers
The CCKM supports the following Internet browsers:
- Chrome 51.0.2704 (64-bit) or later 
- Firefox 45.0 or later 
- Microsoft Edge 91.0.864.37 or later 
CCKM Functionality
The CCKM provides following functionalities for the supported cloud services:
- Life cycle management of keys, key versions, and attributes: - View Keys 
- Update Keys 
- Upload Keys 
- Rotate Keys 
- Delete Keys 
 
- Disaster recovery of keys: - Backup Keys 
- Restore Keys 
 
- Hybrid key management: - On-premise keys storage 
- Management of both keys originating from trusted key sources and cloud-provider-sourced keys 
- Key synchronization 
 
- Compliance management: - On-premise key storage with up to FIPS 140-2 Level 3 certification (CipherTrust Manager K570 with K7 card, Luna Network HSM, DSM) 
- Key storage in public or private clouds, inaccessible to cloud services with FIPS 140-2 Level 1 (Luna Network HSM, DSM) 
 
- Key visibility reporting: - Key Activity Report: Inspect individual key histories by operations, for example, when they were refreshed, rotated, edited, or deleted. Also, use this report to compare key activities between CCKM and a cloud service. 
- Key Aging Report: Track keys by their expiration dates. Audit a range of dates, from past material deletions to future scheduled deletions, within a cloud service. 
- Service/Usage Report: Monitor key usage by tracking services and applications consuming the keys. View when and where a service requests the use of each key. 
 - Note - Reporting is not supported for the Azure Stack cloud. All clouds do not support all types of reports. Refer to related sections of the CCKM documentation for cloud-specific reports. 
User Roles
CCKM has the following users with different responsibilities in administering and using the resources of supported clouds and key sources.
CCKM Admins
There is a System Defined Group named "CCKM Admins". Users within the "CCKM Admins" group are CCKM Administrators. Additionally, the CCKM administrators need the Key Users, Connection Admins, and User Admins permissions to perform key operations on the supported clouds.
A CCKM Administrator is responsible for creating and managing the following resources:
- AWS KMS Accounts, AWS Keys, AWS Custom Key Stores 
- Azure Key Vaults, Azure Subscriptions, and Azure Keys 
- Luna HSM Partitions, Luna Keys 
- DSM Domains, DSM Keys 
- Google Cloud Projects, Key Rings, and Keys 
- Google EKM endpoints 
- Salesforce Organizations, Tenant Secrets 
- SAP Groups, SAP Keys 
- CCKM Schedules 
- CCKM Reports 
CCKM Users
There is a System Defined Group named "CCKM Users". CCKM users registered with the CipherTrust Manager are part of this group. Additionally, the CCKM users need the Key Users permissions to perform key operations on the supported clouds. As well, they need custom key store permissions to manage AWS custom key stores.
Additional ACLs/Permissions
Additional ACLs/permissions can be granted to different CCKM roles on individual cloud resources such as AWS Accounts, Azure Key Vaults, DSM Domains, Google Key Rings, Luna HSM Partitions, Oracle Vaults, Salesforce Organizations, and SAP Groups.
Refer to the CCKM documentation of the respective clouds.
Proxy Configuration
If you plan to run the CipherTrust Manager appliance behind a proxy, you must configure the proxy, as described in Proxy Configuration.
Note
For CCKM, configure an HTTPS proxy.
For the list of URLs to be whitelisted, refer to URLs to Whitelist for Running CipherTrust Manager Behind Proxy.
Now, you should be able to connect CCKM with the cloud through the proxy.
URLs to Whitelist for Running CipherTrust Manager Behind Proxy
The following URLs must be whitelisted before you run the CipherTrust Manager behind a proxy.
Amazon Web Services
| Service | URL | Purpose | 
|---|---|---|
| CloudWatchLogs | logs.<region-name>.amazonaws.com | Fetch AWS reports. | 
| EC2 | ec2.amazonaws.com | Required to fetch AWS regions. After all the regions are fetched, the service is no longer needed. | 
| EC2 | ec2.us-east-1.amazonaws.com | Required to fetch AWS regions. After all the regions are fetched, the service is no longer needed. | 
| EC2 | ec2.<region-name>.amazonaws.com | Required to fetch AWS regions. This URL is used if aws_sts_regional_endpointsis set toregionalwhen adding an AWS connection. After all the regions are fetched, the service is no longer needed. | 
| IAM | iam.amazonaws.com | Manage access to AWS services and resources securely. | 
| KMS | kms.<region-name>.amazonaws.com | Communicate with AWS KMS for key management. | 
| STS | sts.amazonaws.com | Authenticate AWS users. | 
| STS | sts.<region-name>.amazonaws.com | Authenticate AWS users. This URL is used if aws_sts_regional_endpointsis set toregionalwhen adding an AWS connection. | 
| AWS | aws.amazon.com | Redirects to service URLs. | 
AWS GovCloud
| Service | URL | Purpose | 
|---|---|---|
| CloudWatchLogs | logs.<region-name>.amazonaws.com | Fetch AWS reports. | 
| EC2 | ec2.amazonaws.com | Required to fetch AWS regions. After all the regions are fetched, the service is no longer needed. | 
| EC2 | ec2.us-gov-east-1.amazonaws.com | Required to fetch AWS regions. After all the regions are fetched, the service is no longer needed. | 
| EC2 | ec2.<region-name>.amazonaws.com | Required to fetch AWS regions. This URL is used if aws_sts_regional_endpointsis set toregionalwhen adding an AWS connection. After all the regions are fetched, the service is no longer needed. | 
| IAM | iam.amazonaws.com | Manage access to AWS services and resources securely. | 
| KMS | kms.<region-name>.amazonaws.com | Communicate with AWS KMS for key management. | 
| STS | sts.us-gov-east-1.amazonaws.com | Authenticate AWS users. | 
| STS | sts.<region-name>.amazonaws.com | Authenticate AWS users. This URL is used if aws_sts_regional_endpointsis set toregionalwhen adding an AWS connection. | 
AWS China Cloud
| Service | URL | Purpose | 
|---|---|---|
| CloudWatchLogs | logs.<region-name>.amazonaws.com.cn | Fetch AWS reports. | 
| EC2 | ec2.amazonaws.com.cn | Required to fetch AWS regions. After all the regions are fetched, the service is no longer needed. | 
| EC2 | ec2.cn-north-1.amazonaws.com.cn | Required to fetch AWS regions. After all the regions are fetched, the service is no longer needed. | 
| EC2 | ec2.<region-name>.amazonaws.com.cn | Required to fetch AWS regions. This URL is used if aws_sts_regional_endpointsis set toregionalwhen adding an AWS connection. After all the regions are fetched, the service is no longer needed. | 
| IAM | iam.amazonaws.com | Manage access to AWS services and resources securely. | 
| KMS | kms.<region-name>.amazonaws.com.cn | Communicate with AWS KMS for key management. | 
| STS | sts.cn-north-1.amazonaws.com.cn | Authenticate AWS users. | 
| STS | sts.<region-name>.amazonaws.com.cn | Authenticate AWS users. This URL is used if aws_sts_regional_endpointsis set toregionalwhen adding an AWS connection. | 
Azure Public Cloud
| URL | Purpose | 
|---|---|
| management.azure.com | Fetch subscriptions and key vaults | 
| login.microsoftonline.com | Authenticate Azure credentials | 
| graph.windows.net | For Azure Stack | 
| vault.azure.net | Manage keys | 
| *.vault.azure.net | Manage keys | 
| api.loganalytics.io | Fetch Azure reports | 
| managedhsm.azure.net | Manage keys | 
| *.managedhsm.azure.net | Manage keys | 
Azure US Gov Cloud
| URL | Purpose | 
|---|---|
| management.core.usgovcloudapi.net | Fetch subscriptions and key vaults | 
| management.usgovcloudapi.net | Fetch subscriptions and key vaults | 
| login.microsoftonline.us | Authenticate Azure credentials | 
| vault.usgovcloudapi.net | Manage keys | 
| *.vault.usgovcloudapi.net | Manage keys | 
| graph.windows.net | For Azure Stack | 
| api.loganalytics.us | Fetch Azure reports | 
Azure China Cloud
| URL | Purpose | 
|---|---|
| management.core.chinacloudapi.cn | Fetch subscriptions and key vaults | 
| management.chinacloudapi.cn | Fetch subscriptions and key vaults | 
| login.chinacloudapi.cn | Authenticate Azure credentials | 
| vault.azure.cn | Manage keys | 
| *.vault.azure.cn | Manage keys | 
| graph.chinacloudapi.cn | For Azure Stack | 
Google Cloud CMEK
| URL | Purpose | 
|---|---|
| https://oauth2.googleapis.com | Authenticate Google cloud service accounts | 
| https://cloudresourcemanager.googleapis.com | Fetch Google cloud projects | 
| https://cloudkms.googleapis.com | Manage Google cloud keys, and fetch Google cloud locations and key rings | 
| https://logging.googleapis.com | Fetch Google cloud reports | 
Google Cloud EKM
| URL | Purpose | 
|---|---|
| https://www.googleapis.com/ | Verify and validate authentication and authorization JWTs | 
| https://compute.googleapis.com | Creates and runs virtual machines on Google Cloud platforms. Required for EKM Ubiquitous Data Encryption (UDE) upstream verification. | 
Google Workspace CSE
| URL | Purpose | 
|---|---|
| https://www.googleapis.com/ | Verify and validate authorization JWTs | 
| https://admin.google.com | • Configure endpoint URLs and Identity Provider (IdP) settings on the Google Admin Console • Cross-Origin Resource Sharing (CORS) URL to allow requests from the Origin URL | 
| https://krahsc.google.com | CORS URL to allow requests from the Origin URL | 
| https://docs.google.com | Encrypt and decrypt Google Docs | 
| https://drive.google.com | Encrypt and decrypt Google Drive | 
| https://meet.google.com | Encrypt and decrypt Google Meet calls | 
| https://calendar.google.com | Encrypt and decrypt Google Calendar events | 
| https://mail.google.com | Encrypt and decrypt Gmail messages | 
| https://client-side-encryption.google.com | CORS URL to allow requests from the Origin URL | 
| Identity Provider URL | Verify and validate the authentication JWTs | 
The following redirect callabck URIs need to be configured on the IdP application (for example, auth0) for authentication.
- https://client-side-encryption.google.com/callback 
- https://client-side-encryption.google.com/oidc/cse/callback 
- https://client-side-encryption.google.com/oidc/drive/callback 
- https://client-side-encryption.google.com/oidc/gmail/callback 
- https://client-side-encryption.google.com/oidc/meet/callback 
- https://client-side-encryption.google.com/oidc/calendar/callback 
- https://client-side-encryption.google.com/oidc/docs/callback 
- https://client-side-encryption.google.com/oidc/sheets/callback 
- https://client-side-encryption.google.com/oidc/slides/callback 
Oracle Cloud
| Service | URL | Purpose | 
|---|---|---|
| Audit | audit.<region>.oraclecloud.com | Fetch OCI audit logs that will be used for OCI report generation. | 
| Identity | identity.<region>.oci.oraclecloud.com | Required to test connection and fetch Oracle compartments and other related resources. | 
| Identity Domain | <identity domain URL> | Required to verify and validate the authorization JWT. | 
| Vault (KMS) | kms.<region>.oraclecloud.com | Communicate with OCI vaults for key management. | 
| Object Storage | objectstorage.<region>.oraclecloud.com | Communicate with OCI buckets for key backup/restore. | 
Salesforce Cloud
| URL | Purpose | 
|---|---|
| login.salesforce.com | Authenticate Salesforce user credentials | 
| test.salesforce.com | Verify SFDC Sandbox users (used to test connection with the Salesforce Sandbox) | 
| <YourInstance>.salesforce.com | Manage keys | 
SAP Data Custodian
| Service | URL | Purpose | 
|---|---|---|
| KMS | <instance-subdomain>.datacustodian.cloud.sap | Communicate with SAP KMS for authorization, audit, cryptography, keys, groups, and backups. | 
Connecting CCKM in Amazon Virtual Private Cloud (VPC)
When AWS KMS is in Amazon VPC:
- IAM is not supported, as it is a global AWS service. Therefore, CCKM users cannot fetch IAM roles and users. 
- CCKM cannot connect with the EC2, KMS, Logs, and STS services using public IP addresses. If their endpoints are not added on AWS, you cannot add AWS connections and AWS keys on the CipherTrust Manager. For successful connection, add the IP addresses of VPC endpoints for these services for your AWS regions to the DNS hosts on the CipherTrust Manager. 
For example, you need to add the IP addresses of VPC endpoints of sts.amazonaws.com, ec2.us-east-1.amazonaws.com, logs.us-east-1.amazonaws.com, and kms.us-east-1.amazonaws.com service URLs to the DNS hosts list.
To add the IP address of a VPC endpoint:
On AWS Console
- Create the VPC endpoint for a service. 
- Copy the DNS name of the service. 
- Ping the DNS name to find out the associated IP address. 
- Copy the IP address. 
On CipherTrust Manager
- Log on to the CipherTrust Manager GUI. 
- In the left pane, click Admin Settings > DNS Hosts. 
- Click Add DNS Host. 
- In the Hostname field, enter the service URL, for example, - sts.amazonaws.com.
- In the IP Address field, paste the copied IP address. 
- Click Save. 
Similarly, add the DNS host entries for all three services, for all your AWS regions.