This Terraform project is intended to be used to onboard multiple Public Cloud accounts (Azure/AWS/GCP) and K8s Clusters in one-shot.
What it does is configuring through API (with Terraform) an existing CloudGuard CSPM Portal.
Check out my Terraform Microsoft Azure repository here: gbrembati / terraform-azure
Check out my Terraform Amazon Web Services repository here: gbrembati / terraform-aws
Check out my Terraform Google Cloud Platform repository here: gbrembati / terraform-gcp
Check the Check Point official CloudGuard IaaS repository here: CheckPointSW / CloudGuardIaaS
First, you need to have a CloudGuard CSPM account, if you don't, you can create one with these links:
- Create an account in Europe Region
- Create an account in Asia Pacific Region
- Create an account in United States Region
Then you will need to get the API credentials that you will be using with Terraform to onboard the accounts.
Remember to copy these two values, you will need to enter them in the .tfvars file later on.
The only thing that you need to do is changing the terraform.tfvars file located in this directory.
# Set in this file your deployment variables
cspm-key-id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
cspm-key-secret = "xxxxxxxxxxxxxxxxxxxx"
cspm-org-unit = "My Organization Unit"
azure-onboard = true
azure-op-mode = "Read"
azure-accounts = {
"0" = ["NAME","SUBSCRIPTION ID","TENANT ID","CLIENT ID","CLIENT PASSWORD"]
# "1" = ["NAME","SUBSCRIPTION ID","TENANT ID","CLIENT ID","CLIENT PASSWORD"]
# "2" = ["NAME","SUBSCRIPTION ID","TENANT ID","CLIENT ID","CLIENT PASSWORD"]
}
aws-onboard = true
aws-op-mode = "ReadOnly"
aws-accounts = {
"0" = ["NAME","ARN","SECRET"]
# "1" = ["NAME","ARN","SECRET"]
# "2" = ["NAME","ARN","SECRET"]
}
k8s-onboard = true
k8s-clusters = {
"0" = "K8s-Cluster-Name-1"
# "1" = "K8s-Cluster-Name-2"
# "2" = "K8s-Cluster-Name-3"
}
If you want (or need) to further customize other project details, you can change defaults in the different name-variables.tf files.
Here you will also able to find the descriptions that explains what each variable is used for.