This sample project demonstrates how to encrypt sensitive data such as PCI and PII collected through Amazon Connect and an Amazon Lex conversational bot. Included in this CDK-based project are:
- Automated deployment of AWS Lambda functions, AWS Key Management Service encryption keys and a sample Amazon Lex bot
- A sample Amazon Connect contact flow that leverages the Lex input bot an Lambda functions to encrypt a credit card number and zip code.
- An AWS account with system administrator and programmatic access
- AWS CLI
- Git
- Node & NPM - See supported AWS Lambda runtimes
- TypeScript
- Cloud Development Kit (CDK) 2.0 or higher
- Clone the project source files from the GitHub repository
- From the command line,
cd
to the project's root directory - Run
npm install
- Run
npm run build
to transpile TypeScript to JavaScript and packages code and its dependencies before deploying to AWS - Run
cdk deploy CoreStack
- Create an Amazon Connect instance if one is not already available
- From the AWS Amazon Connect console, select the target Connect instance and click on the Contact Flows option
- Associate the secure_LexInput bot to the Connect instance
- Log into the Amazon Connect Administrative Console and create a new contact flow called Secure_Lex_Input by importing this file
- Save and publish the contact flow
- Associate a DID to the newly published contact flow
- Make a test call entering a fake 16-digit credit card number and zip code when prompted
- Once call is completed, validate through the CloudWatch logs that both values were encrypted
See CONTRIBUTING for more information.
This library is licensed under the MIT-0 License. See the LICENSE file.