Encrypt Data With AWS KMS
Encrypt Data With AWS KMS
org
Encrypt Data
With AWS KMS
Praneeth Bhandwalkar
Praneeth Bhandwalkar
NextWork Student NextWork.org
Project reflection
This project took me approximately 80 mins of time.
AWS KMS is a secure vault for your encryption keys, used to protect the data in
your AWS resources. Key management systems are important because they
help you manage all your encryption keys.
Encrypting Data
My encryption key will safeguard data in DynamoDB, which is a fully managed,
serverless NoSQL database service offered by AWS. It supports both key-value
and document data models.
Data Visibility
Rather than controlling who has access to the key, KMS manages user
permission by only those with the right permissions can use it to do specific
actions like encryption or decryption.
Despite encrypting my DynamoDB table, I could still see the table's items
because as a user have permission to use the encryption key in KMS.
DynamoDB uses transparent data encryption, which means DynamoDB
retrieves the encrypted data to decrypt it.
Praneeth Bhandwalkar
NextWork Student NextWork.org
Denying Access
I configured a new IAM user to access the full DynamoDB. The permission
policies I granted this user are Access full DynamoDB but not to the KMS key.
After accessing the DynamoDB table as the test user, I encountered an error
You don't have permission to kms:Decrypt because the user isnʼt allowed to
decrypt the data. This confirmed how KMS works - a KMS key can be
accessible to many users.
Praneeth Bhandwalkar
NextWork Student NextWork.org
Using the test user, I retried to see the key and I observed that I could use the
key which confirmed that due to the key policy as administrator access, I can
use the keys.
Everyone
should be in a
job they love.
Check out nextwork.org for
more projects