maskopy

DNXLabs/maskopy/aws

Terraform Module HCL AWS

Maskopy solution is to Copy and Obfuscate Production Data to Target Environments in AWS. It uses AWS Serverless services, Step functions, Lambda and Fargate.

Install
module "maskopy" {
source = "DNXLabs/maskopy/aws"
version = "0.1.8"
}
plain text: /constructs/tfmod-dnxlabs-maskopy-aws/install.txt
⭐ Source on GitHub 📦 Registry page
README

terraform-aws-maskopy ![Lint Status](https://github.com/DNXLabs/terraform-aws-maskopy/actions) ![LICENSE](https://github.com/DNXLabs/terraform-aws-maskopy/blob/master/LICENSE) Overview: Maskopy solution is to Copy and Obfuscate Production Data to Target Environments in AWS. It uses AWS Serverless services, Step functions, Lambda and Fargate. Features: Simplified Copy and Obfuscation Maskopy copies and provides ability to run obfuscation on production data across AWS accounts. Any sensitive information in the production data is obfuscated in a transient instance. The final obfuscated snapshot is shared in the user-specified environments. Self-Service and End-To-End Automation Maskopy is a self-serviced solution that allows users to get production data without involving multiple teams. It is

Inputs (22)
NameTypeDescriptionDefault
staging_vpc_idstringVPC id for the staging account. required
rds_staging_subnet_group_namestringStaging RDS option group name to deploy the transient database. required
obfuscation_scripts_bucket_namestringBucket to store the obfuscations scripts, they should be uploaded inside `/obfus required
staging_subnet_idslist(string)Subnets inside the staging VPC to deploy the lambdas and ECS tasks. required
staging_rds_default_kms_key_idstringKMS key that maskopy will use for the transient RDS. required
lambda_role_namestringLambda role name."LAMBDA_MASKOPY"
replicate_destination_bucket_namestringName of the bucket to send dumps data from source bucket.""
sqs_queue_namestringSNS queue name to send messages when step functions complete running."maskopy_sqs_queue"
step_function_state_machine_namestringName for the step functions state machine."maskopy-state-machine"
custom_source_kms_keystringCustom KMS key, used when variable `custom_source_kms_key_enabled` equals to tru""
create_obfuscation_scripts_bucketboolCreate bucket to store obfuscation scripts.true
lambdas_nameslist(string)[ "00-AuthorizeUser", "01-UseExistin
cost_centerstringAll the temporary resources are tagged with the code."MaskopyCost"
ecs_docker_imagestringDocker image that ECS task will run with and will download the scripts from S3 o"dnxsolutions/obfuscation"
replicate_obfuscation_bucketboolReplicate data inside the bucket to another acount.true
replicate_obfuscation_bucket_prefixstringName of prefix to replicate inside the bucket to another acount."dumps"
application_namestringThe name for the maskopy application, this name should match part of the string "MASKOPY"
enabledboolIf true, will deploy the maskopy solution.true
ecs_fargate_role_namestringECS role name."ECS_MASKOPY"
replicate_destination_account_idstringName of the bucket to send dumps data from source bucket.""
build_lambda_layerboolIf true will build the lambda layer. Set to true only with local source module.false
custom_source_kms_key_enabledboolOnly used when encrypt RDS in source account with another KMS key. Remember to afalse
Resources (13)
aws_iam_policyaws_iam_roleaws_iam_role_policy_attachmentaws_kms_aliasaws_kms_keyaws_lambda_functionaws_lambda_layer_versionaws_s3_bucketaws_security_groupaws_security_group_ruleaws_sfn_state_machineaws_sqs_queuenull_resource
Details
FrameworkTerraform Module
LanguageHCL
Version0.1.8
Cloud AWS
★ Stars1
Forks4
Total downloads5.2k
Inputs22
Resources13
LicenseApache-2.0
NamespaceDNXLabs
Updated