Skip to content

Commit e804424

Browse files
Deprecate cloud-bench (#99)
* Deprecate cloud-bench * Bump versions * Constrain major azure provider versions
1 parent b7bcc43 commit e804424

File tree

45 files changed

+70
-433
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

45 files changed

+70
-433
lines changed

.terraform-registry

Lines changed: 0 additions & 3 deletions
This file was deleted.

CONTRIBUTE.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
- Use **conventional commits** | https://www.conventionalcommits.org/en/v1.0.0
44
- Current suggested **scopes** to be used within feat(scope), fix(scope), ...
55
- threat
6-
- bench
76
- scan
87
- docs
98
- tests

README.md

Lines changed: 9 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -1,56 +1,18 @@
1-
# Sysdig Secure for Cloud in Azure
1+
# Sunset Notice
22

3-
Terraform module that deploys the [**Sysdig Secure for Cloud** stack in **Azure**](https://docs.sysdig.com/en/docs/installation/sysdig-secure-for-cloud/deploy-sysdig-secure-for-cloud-on-azure).
4-
<br/>
5-
6-
Provides unified threat-detection, compliance, forensics and analysis through these major components:
7-
8-
* **[Threat Detection](https://docs.sysdig.com/en/docs/sysdig-secure/insights/)**: Tracks abnormal and suspicious
9-
activities in your cloud environment based on Falco language. Managed through `cloud-connector` module. <br/>
10-
11-
* **[Compliance](https://docs.sysdig.com/en/docs/sysdig-secure/posture/compliance/compliance-unified-/)**: Enables the
12-
evaluation of standard compliance frameworks. Requires both modules `cloud-connector` and `cloud-bench`. <br/>
13-
14-
* **[Image Scanning](https://docs.sysdig.com/en/docs/sysdig-secure/scanning/)**:
15-
Automatically scans images that run on the Azure workload (currently AzureContainerInstances).<br/>
16-
Define an AzureRegistry (ACR) through `registry_name` and also scan all the repository images pushed to the
17-
registry.<br/>
18-
Managed through `cloud-connector`. <br/>Scanning is disabled by default, can be enabled through `deploy_scanning`
19-
input variable parameters.<br/>
20-
21-
For other Cloud providers check: [AWS](https://github.com/sysdiglabs/terraform-aws-secure-for-cloud)
22-
, [GCP](https://github.com/sysdiglabs/terraform-google-secure-for-cloud)
23-
24-
<br/>
3+
> [!CAUTION]
4+
> Sysdig released a new onboarding experience for Azure in August 2024. We recommend connecting your cloud accounts by [following these instructions](https://docs.sysdig.com/en/docs/sysdig-secure/connect-cloud-accounts/).
5+
>
6+
> This repository should be used solely in cases where Agentless Threat Detection cannot be used.
257
268
## Usage
279

2810
There are several ways to deploy Secure for Cloud in you Azure infrastructure,
29-
- **[`/examples`](https://github.com/sysdiglabs/terraform-azurerm-secure-for-cloud/tree/master/examples)** for the most common scenarios
30-
- [Single Subscription](https://github.com/sysdiglabs/terraform-azurerm-secure-for-cloud/tree/master/examples/single-subscription/README.md)
31-
- [Single Subscription with a pre-existing Kubernetes Cluster](https://github.com/sysdiglabs/terraform-azurerm-secure-for-cloud/tree/master/examples/single-subscription-k8s/README.md)
32-
- [Tenant Subscriptions](https://github.com/sysdiglabs/terraform-azurerm-secure-for-cloud/tree/master/examples/tenant-subscriptions/README.md)
33-
- Many module,examples and use-cases, we provide ways to **re-use existing resources (as optionals)** in your
34-
infrastructure. Check input summary on each example/module.
11+
- [Single Subscription](https://github.com/sysdiglabs/terraform-azurerm-secure-for-cloud/tree/master/examples/single-subscription/README.md)
12+
- [Single Subscription with a pre-existing Kubernetes Cluster](https://github.com/sysdiglabs/terraform-azurerm-secure-for-cloud/tree/master/examples/single-subscription-k8s/README.md)
13+
- [Tenant Subscriptions](https://github.com/sysdiglabs/terraform-azurerm-secure-for-cloud/tree/master/examples/tenant-subscriptions/README.md)
3514

36-
Find specific overall service arquitecture diagrams attached to each example/use-case.
37-
38-
<!--
39-
In the long-term our purpose is to evaluate those use-cases and if they're common enough, convert them into examples to make their usage easier.
40-
-->
41-
42-
If you're unsure about what/how to use this module, please fill the [questionnaire](https://github.com/sysdiglabs/terraform-aws-secure-for-cloud/blob/master/use-cases/_questionnaire.md) report as an issue and let us know your context, we will be happy to help.
43-
44-
45-
46-
### Notice
47-
* **Resource creation inventory** Find all the resources created by Sysdig examples in the resource-group `sysdig-secure-for-cloud`<br/>
48-
* All Sysdig Secure for Cloud features but [Image Scanning](https://docs.sysdig.com/en/docs/sysdig-secure/scanning/) are enabled by default. You can enable it through `deploy_scanning` input variable parameters.<br/>
49-
* **Deployment cost** This example will create resources that cost money. Run `terraform destroy` when you don't need them anymore
50-
* For **free subscription** users, beware that organizational examples may not deploy properly due to the [1 cloud-account limitation](https://docs.sysdig.com/en/docs/administration/administration-settings/subscription/#cloud-billing-free-tier). Open an Issue so we can help you here!
51-
52-
53-
<br/>
15+
If you're unsure about how to use this module, please contact your Sysdig representative. Our experts will guide you through the process and assist you in setting up your account securely and correctly.
5416

5517
## Required Permissions
5618

@@ -64,12 +26,9 @@ This would be an overall schema of the **created resources**, for the default se
6426
- Event Hub
6527
- Sysdig Workload: Container Instance / For K8s cluter is pre-requied, not create
6628
- For Scanning: Event-Grid, Event Hub, and Enterprise App in the ActiveDirectory
67-
- Sysdig Lighthouse definition for [Compliance](https://github.com/sysdiglabs/terraform-azurerm-secure-for-cloud/tree/master/modules/services/cloud-bench)
6829

6930
### Provisioning Roles
7031

71-
- Compliance feature requires `Contributor` subcription-level role, in order to be able to check specific compliance rules.
72-
- However, it can be lowered to `Reader` role, at the cost of failing the control Requirement 9.1 “Ensure App Service Authentication is set up for apps in Azure App Service” from CIS Microsoft Azure Foundations Benchmark) as this needs contributor access to query App Service Auth Settings.
7332
- Threat Detection feature requires `Contributor` subscription-level role user assignment
7433
- For AD diagnostic on [selected log types](https://github.com/sysdiglabs/terraform-azurerm-secure-for-cloud/blob/master/modules/infrastructure/eventhub/variables.tf#L80) `Security Administrator` role must be granted to at Organizational level.
7534
- Otherwise, it can be disabled setting `deploy_active_directory=false` on all examples

examples/single-subscription-k8s/README.md

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@ Deploy Sysdig Secure for Cloud in a provided existing Kubernetes Cluster.
1111
### Notice
1212

1313
* All the required resources and workloads will be run under the same Azure subscription.
14-
* All Sysdig Secure for Cloud features **but [Image Scanning](https://docs.sysdig.com/en/docs/sysdig-secure/scanning/)**
15-
are enabled by default. You can enable it through `deploy_scanning` input variable parameters.<br/>
14+
* CDR is enabled by default **but [Image Scanning](https://docs.sysdig.com/en/docs/sysdig-secure/scanning/)**
15+
is not. You can enable it through `deploy_scanning` input variable parameters.<br/>
1616
* This example will create resources that cost money.<br/>Run `terraform destroy` when you don't need them anymore
1717
* All created resources will be created within the tags `product:sysdig-secure-for-cloud`, within the
1818
resource-group `sysdig-secure-for-cloud`
@@ -71,23 +71,22 @@ See [inputs summary](#inputs) or module module [`variables.tf`](./variables.tf)
7171
| Name | Version |
7272
|------|---------|
7373
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.15.0 |
74-
| <a name="requirement_azurerm"></a> [azurerm](#requirement\_azurerm) | >=3.71.0 |
74+
| <a name="requirement_azurerm"></a> [azurerm](#requirement\_azurerm) | ~>3.71 |
7575
| <a name="requirement_helm"></a> [helm](#requirement\_helm) | >=2.3.0 |
7676
| <a name="requirement_sysdig"></a> [sysdig](#requirement\_sysdig) | >= 0.5.27 |
7777

7878
## Providers
7979

8080
| Name | Version |
8181
|------|---------|
82-
| <a name="provider_azurerm"></a> [azurerm](#provider\_azurerm) | 3.71.0 |
83-
| <a name="provider_helm"></a> [helm](#provider\_helm) | 2.11.0 |
84-
| <a name="provider_sysdig"></a> [sysdig](#provider\_sysdig) | 1.12.0 |
82+
| <a name="provider_azurerm"></a> [azurerm](#provider\_azurerm) | 3.116.0 |
83+
| <a name="provider_helm"></a> [helm](#provider\_helm) | 2.16.1 |
84+
| <a name="provider_sysdig"></a> [sysdig](#provider\_sysdig) | 1.38.0 |
8585

8686
## Modules
8787

8888
| Name | Source | Version |
8989
|------|--------|---------|
90-
| <a name="module_cloud_bench"></a> [cloud\_bench](#module\_cloud\_bench) | ../../modules/services/cloud-bench | n/a |
9190
| <a name="module_infrastructure_container_registry"></a> [infrastructure\_container\_registry](#module\_infrastructure\_container\_registry) | ../../modules/infrastructure/container_registry | n/a |
9291
| <a name="module_infrastructure_enterprise_app"></a> [infrastructure\_enterprise\_app](#module\_infrastructure\_enterprise\_app) | ../../modules/infrastructure/enterprise_app | n/a |
9392
| <a name="module_infrastructure_eventgrid_eventhub"></a> [infrastructure\_eventgrid\_eventhub](#module\_infrastructure\_eventgrid\_eventhub) | ../../modules/infrastructure/eventhub | n/a |
@@ -108,7 +107,6 @@ See [inputs summary](#inputs) or module module [`variables.tf`](./variables.tf)
108107
|------|-------------|------|---------|:--------:|
109108
| <a name="input_cloud_connector_image"></a> [cloud\_connector\_image](#input\_cloud\_connector\_image) | Cloud-connector image to deploy | `string` | `"quay.io/sysdig/cloud-connector"` | no |
110109
| <a name="input_deploy_active_directory"></a> [deploy\_active\_directory](#input\_deploy\_active\_directory) | whether the Active Directory features are to be deployed | `bool` | `true` | no |
111-
| <a name="input_deploy_benchmark"></a> [deploy\_benchmark](#input\_deploy\_benchmark) | whether benchmark module is to be deployed | `bool` | `true` | no |
112110
| <a name="input_deploy_scanning"></a> [deploy\_scanning](#input\_deploy\_scanning) | whether scanning module is to be deployed | `bool` | `false` | no |
113111
| <a name="input_existing_registries"></a> [existing\_registries](#input\_existing\_registries) | existing Azure Container Registry names to be included to scan by resource group { resource\_group\_1 = ["registry\_name\_11","registry\_name\_12"],resource\_group\_2 = ["registry\_name\_21","registry\_name\_22"]}. By default it will create a new ACR | `map(list(string))` | `{}` | no |
114112
| <a name="input_location"></a> [location](#input\_location) | Zone where the stack will be deployed | `string` | `"westus"` | no |

examples/single-subscription-k8s/cloudbench.tf

Lines changed: 0 additions & 6 deletions
This file was deleted.

examples/single-subscription-k8s/variables.tf

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,6 @@ variable "deploy_scanning" {
1616
default = false
1717
}
1818

19-
# benchmark
20-
variable "deploy_benchmark" {
21-
type = bool
22-
description = "whether benchmark module is to be deployed"
23-
default = true
24-
}
25-
2619
# general
2720
variable "location" {
2821
type = string

examples/single-subscription-k8s/versions.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ terraform {
33
required_providers {
44
azurerm = {
55
source = "hashicorp/azurerm"
6-
version = ">=3.71.0"
6+
version = "~>3.71"
77
}
88
helm = {
99
source = "hashicorp/helm"

examples/single-subscription/README.md

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@ This module example deploy Sysdig Secure for Cloud in a single Azure subscriptio
44

55
### Notice
66

7-
* All Sysdig Secure for Cloud features **but [Image Scanning](https://docs.sysdig.com/en/docs/sysdig-secure/scanning/)**
8-
are enabled by default. You can enable it through `deploy_scanning` input variable parameters.<br/>
7+
* CDR is enabled by default **but [Image Scanning](https://docs.sysdig.com/en/docs/sysdig-secure/scanning/)**
8+
is not. You can enable it through `deploy_scanning` input variable parameters.<br/>
99
* This example will create resources that cost money.<br/>Run `terraform destroy` when you don't need them anymore
1010
* All created resources will be created within the tags `product:sysdig-secure-for-cloud`, within the
1111
resource-group `sysdig-secure-for-cloud`
@@ -68,21 +68,20 @@ $ terraform apply
6868
| Name | Version |
6969
|------|---------|
7070
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.15.0 |
71-
| <a name="requirement_azurerm"></a> [azurerm](#requirement\_azurerm) | >=3.71.0 |
71+
| <a name="requirement_azurerm"></a> [azurerm](#requirement\_azurerm) | ~>3.71 |
7272
| <a name="requirement_sysdig"></a> [sysdig](#requirement\_sysdig) | >= 0.5.27 |
7373

7474
## Providers
7575

7676
| Name | Version |
7777
|------|---------|
78-
| <a name="provider_azurerm"></a> [azurerm](#provider\_azurerm) | 3.71.0 |
79-
| <a name="provider_sysdig"></a> [sysdig](#provider\_sysdig) | 1.12.0 |
78+
| <a name="provider_azurerm"></a> [azurerm](#provider\_azurerm) | 3.116.0 |
79+
| <a name="provider_sysdig"></a> [sysdig](#provider\_sysdig) | 1.38.0 |
8080

8181
## Modules
8282

8383
| Name | Source | Version |
8484
|------|--------|---------|
85-
| <a name="module_cloud_bench"></a> [cloud\_bench](#module\_cloud\_bench) | ../../modules/services/cloud-bench | n/a |
8685
| <a name="module_cloud_connector"></a> [cloud\_connector](#module\_cloud\_connector) | ../../modules/services/cloud-connector | n/a |
8786
| <a name="module_infrastructure_container_registry"></a> [infrastructure\_container\_registry](#module\_infrastructure\_container\_registry) | ../../modules/infrastructure/container_registry | n/a |
8887
| <a name="module_infrastructure_enterprise_app"></a> [infrastructure\_enterprise\_app](#module\_infrastructure\_enterprise\_app) | ../../modules/infrastructure/enterprise_app | n/a |
@@ -103,7 +102,6 @@ $ terraform apply
103102
|------|-------------|------|---------|:--------:|
104103
| <a name="input_cpu"></a> [cpu](#input\_cpu) | Number of CPU cores of the containers | `string` | `"0.5"` | no |
105104
| <a name="input_deploy_active_directory"></a> [deploy\_active\_directory](#input\_deploy\_active\_directory) | whether the Active Directory features are to be deployed | `bool` | `true` | no |
106-
| <a name="input_deploy_benchmark"></a> [deploy\_benchmark](#input\_deploy\_benchmark) | whether benchmark module is to be deployed | `bool` | `true` | no |
107105
| <a name="input_deploy_scanning"></a> [deploy\_scanning](#input\_deploy\_scanning) | true/false, whether scanning module is to be deployed | `bool` | `false` | no |
108106
| <a name="input_existing_registries"></a> [existing\_registries](#input\_existing\_registries) | existing Azure Container Registry names to be included to scan by resource group { resource\_group\_1 = ["registry\_name\_11","registry\_name\_12"],resource\_group\_2 = ["registry\_name\_21","registry\_name\_22"]}. By default it will create a new ACR | `map(list(string))` | `{}` | no |
109107
| <a name="input_location"></a> [location](#input\_location) | Zone where the stack will be deployed | `string` | `"westus"` | no |
@@ -112,7 +110,6 @@ $ terraform apply
112110
| <a name="input_name"></a> [name](#input\_name) | Name to be assigned to all child resources. A suffix may be added internally when required. Use default value unless you need to install multiple instances | `string` | `"sfc"` | no |
113111
| <a name="input_resource_group_name"></a> [resource\_group\_name](#input\_resource\_group\_name) | The resource group name to deploy secure for cloud stack | `string` | `""` | no |
114112
| <a name="input_tags"></a> [tags](#input\_tags) | Tags to be added to the resources | `map(string)` | <pre>{<br> "product": "sysdig-secure-for-cloud"<br>}</pre> | no |
115-
| <a name="input_use_reader_role"></a> [use\_reader\_role](#input\_use\_reader\_role) | Set this flag to `true` to use the `Reader` role instead of the `Contributor` role when creating the Trust Relationship. Some CSPM controls will not function correctly if this option is enabled | `bool` | `false` | no |
116113

117114
## Outputs
118115

examples/single-subscription/cloud-bench.tf

Lines changed: 0 additions & 7 deletions
This file was deleted.

examples/single-subscription/variables.tf

Lines changed: 0 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -49,23 +49,6 @@ variable "existing_registries" {
4949
description = "existing Azure Container Registry names to be included to scan by resource group { resource_group_1 = [\"registry_name_11\",\"registry_name_12\"],resource_group_2 = [\"registry_name_21\",\"registry_name_22\"]}. By default it will create a new ACR"
5050
}
5151

52-
#
53-
# benchmark
54-
#
55-
56-
variable "deploy_benchmark" {
57-
type = bool
58-
description = "whether benchmark module is to be deployed"
59-
default = true
60-
}
61-
62-
variable "use_reader_role" {
63-
type = bool
64-
description = "Set this flag to `true` to use the `Reader` role instead of the `Contributor` role when creating the Trust Relationship. Some CSPM controls will not function correctly if this option is enabled"
65-
default = false
66-
}
67-
68-
6952
#
7053
# general
7154
#

0 commit comments

Comments
 (0)