Skip to content

Commit d28efb9

Browse files
committed
generate docs
1 parent 598a9b8 commit d28efb9

File tree

1 file changed

+188
-82
lines changed

1 file changed

+188
-82
lines changed
Lines changed: 188 additions & 82 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,24 @@
11
---
22
page_title: "crowdstrike_cloud_security_group Resource - crowdstrike"
3-
subcategory: "Cloud Security"
3+
subcategory: "CrowdStrike Cloud Security Group"
44
description: |-
5-
This resource allows you to manage cloud security groups in the CrowdStrike Falcon Platform.
5+
This resource manages CrowdStrike Cloud Security Groups for organizing cloud resources and container images.
66
API Scopes
77
The following API scopes are required:
88
Cloud security | Read & Write
99
---
1010

1111
# crowdstrike_cloud_security_group (Resource)
1212

13-
This resource allows you to manage cloud security groups in the CrowdStrike Falcon Platform. Cloud security groups are organizational units that help group cloud resources and container images based on selectors for policy management and monitoring.
13+
This resource manages CrowdStrike Cloud Security Groups for organizing cloud resources and container images.
1414

1515
## API Scopes
1616

1717
The following API scopes are required:
1818

1919
- Cloud security | Read & Write
2020

21+
2122
## Example Usage
2223

2324
```terraform
@@ -36,85 +37,152 @@ provider "crowdstrike" {
3637
# Basic cloud security group with business context
3738
resource "crowdstrike_cloud_security_group" "basic" {
3839
name = "production-web-services"
39-
description = "Production web services security group"
4040
business_impact = "high"
4141
business_unit = "Engineering"
4242
environment = "prod"
4343
4444
}
4545
46-
# Cloud security group with cloud resource selectors
46+
# Cloud security group with AWS cloud resources
4747
resource "crowdstrike_cloud_security_group" "aws_resources" {
48-
name = "aws-production-resources"
49-
description = "AWS production resources"
50-
51-
selectors {
52-
cloud_resources {
53-
cloud_provider = "aws"
54-
account_ids = ["123456789012", "123456789013"]
55-
filters {
56-
region = ["us-east-1", "us-west-2"]
57-
tags = ["Environment=Production", "Team=WebServices"]
58-
}
48+
name = "aws-production-resources"
49+
description = "AWS production resources across multiple accounts"
50+
business_impact = "high"
51+
business_unit = "Platform"
52+
environment = "prod"
53+
owners = ["[email protected]"]
54+
55+
aws = {
56+
account_ids = ["123456789012", "123456789013"]
57+
filters = {
58+
region = ["us-east-1", "us-west-2"]
59+
tags = ["Environment=Production", "Team=WebServices"]
5960
}
6061
}
6162
}
6263
63-
# Cloud security group with container image selectors
64+
# Cloud security group with Azure cloud resources
65+
resource "crowdstrike_cloud_security_group" "azure_resources" {
66+
name = "azure-staging-resources"
67+
description = "Azure staging environment resources"
68+
environment = "stage"
69+
70+
azure = {
71+
account_ids = ["12345678-1234-1234-1234-123456789012"]
72+
filters = {
73+
region = ["eastus", "westus2"]
74+
tags = ["Team=Platform", "Environment=Staging"]
75+
}
76+
}
77+
}
78+
79+
# Cloud security group with GCP cloud resources
80+
resource "crowdstrike_cloud_security_group" "gcp_resources" {
81+
name = "gcp-dev-resources"
82+
description = "GCP development resources"
83+
environment = "dev"
84+
85+
gcp = {
86+
account_ids = ["my-gcp-project-123"]
87+
filters = {
88+
region = ["us-central1", "us-east1"]
89+
# Note: GCP does not support tag filtering
90+
}
91+
}
92+
}
93+
94+
# Cloud security group with container images
6495
resource "crowdstrike_cloud_security_group" "container_images" {
65-
name = "production-containers"
66-
description = "Production container images"
67-
68-
selectors {
69-
images {
96+
name = "production-containers"
97+
description = "Production container images"
98+
business_impact = "high"
99+
environment = "prod"
100+
owners = ["[email protected]"]
101+
102+
images = [
103+
{
70104
registry = "docker.io"
71105
repository = "mycompany/webapp"
72106
tag = "latest"
73-
}
74-
75-
images {
107+
},
108+
{
76109
registry = "gcr.io"
77110
repository = "myproject/api"
111+
tag = "v2.1.0"
112+
},
113+
{
114+
registry = "quay.io"
115+
repository = "prometheus/prometheus"
116+
# tag is optional - matches all tags if not specified
78117
}
79-
}
118+
]
80119
}
81120
82-
# Complete cloud security group with mixed selectors
121+
# Complete cloud security group with multiple cloud providers and images
83122
resource "crowdstrike_cloud_security_group" "complete" {
84123
name = "complete-security-group"
85-
description = "Complete example with all selector types"
124+
description = "Complete example with multiple cloud providers and container images"
86125
business_impact = "moderate"
87126
business_unit = "DevOps"
88-
environment = "stage"
89-
owners = ["[email protected]"]
90-
91-
selectors {
92-
# Azure cloud resources
93-
cloud_resources {
94-
cloud_provider = "azure"
95-
account_ids = ["12345678-1234-1234-1234-123456789012"]
96-
filters {
97-
region = ["eastus", "westus2"]
98-
tags = ["Team=Platform", "Environment=Staging"]
99-
}
127+
environment = "prod"
128+
129+
130+
# AWS production resources
131+
aws = {
132+
account_ids = ["123456789012"]
133+
filters = {
134+
region = ["us-east-1", "us-west-2"]
135+
tags = ["Environment=Production", "ManagedBy=Terraform"]
100136
}
101-
102-
# GCP cloud resources
103-
cloud_resources {
104-
cloud_provider = "gcp"
105-
account_ids = ["my-gcp-project-123"]
106-
filters {
107-
region = ["us-central1"]
108-
}
137+
}
138+
139+
# Azure production resources
140+
azure = {
141+
account_ids = ["12345678-1234-1234-1234-123456789012"]
142+
filters = {
143+
region = ["eastus"]
144+
tags = ["Environment=Production"]
109145
}
110-
111-
# Container images
112-
images {
113-
registry = "quay.io"
114-
repository = "prometheus/prometheus"
115-
tag = "v2.40.0"
146+
}
147+
148+
# GCP production resources
149+
gcp = {
150+
account_ids = ["my-gcp-project-456"]
151+
filters = {
152+
region = ["us-central1"]
116153
}
117154
}
155+
156+
# Production container images
157+
images = [
158+
{
159+
registry = "docker.io"
160+
repository = "mycompany/backend"
161+
tag = "stable"
162+
},
163+
{
164+
registry = "gcr.io"
165+
repository = "myproject/frontend"
166+
tag = "v1.5.0"
167+
}
168+
]
169+
}
170+
171+
# Minimal cloud security group with only required fields
172+
resource "crowdstrike_cloud_security_group" "minimal" {
173+
name = "minimal-security-group"
174+
}
175+
176+
output "basic_security_group" {
177+
value = crowdstrike_cloud_security_group.basic
178+
}
179+
180+
output "complete_security_group" {
181+
value = crowdstrike_cloud_security_group.complete
182+
}
183+
184+
output "aws_security_group_id" {
185+
value = crowdstrike_cloud_security_group.aws_resources.id
118186
}
119187
```
120188

@@ -127,59 +195,96 @@ resource "crowdstrike_cloud_security_group" "complete" {
127195

128196
### Optional
129197

130-
- `business_impact` (String) The business impact level. Valid values: `low`, `moderate`, `high`, `critical`.
131-
- `business_unit` (String) The business unit that owns this group.
132-
- `description` (String) A description for the cloud security group.
133-
- `environment` (String) The environment type. Valid values: `dev`, `test`, `stage`, `prod`.
134-
- `owners` (Set of String) A set of email addresses of the group owners.
135-
- `selectors` (Block Set) Selectors that define which resources belong to this group. (see [below for nested schema](#nestedblock--selectors))
198+
- `aws` (Attributes) AWS cloud resource configuration (see [below for nested schema](#nestedatt--aws))
199+
- `azure` (Attributes) Azure cloud resource configuration (see [below for nested schema](#nestedatt--azure))
200+
- `business_impact` (String) Business impact level for the group.
201+
- `business_unit` (String) Business unit for the group.
202+
- `description` (String) The description of the cloud security group.
203+
- `environment` (String) Environment for the group.
204+
- `gcp` (Attributes) GCP cloud resource configuration (see [below for nested schema](#nestedatt--gcp))
205+
- `images` (Attributes List) Container image selectors for grouping container images (see [below for nested schema](#nestedatt--images))
206+
- `owners` (List of String) List of owner email addresses for the group.
136207

137208
### Read-Only
138209

139-
- `created_at` (String) The RFC3339 timestamp of when the group was created.
140-
- `created_by` (String) The user who created the group.
141-
- `id` (String) The unique identifier for the cloud security group.
142-
- `updated_at` (String) The RFC3339 timestamp of when the group was last updated.
210+
- `created_at` (String) The timestamp when the group was created.
211+
- `created_by` (String) The API client ID that created the group.
212+
- `id` (String) The ID of the cloud security group.
213+
- `updated_at` (String) The timestamp when the group was last updated.
214+
215+
<a id="nestedatt--aws"></a>
216+
### Nested Schema for `aws`
217+
218+
Required:
219+
220+
- `account_ids` (List of String) List of AWS account IDs
221+
222+
Optional:
223+
224+
- `filters` (Attributes) Filters for AWS cloud resources (see [below for nested schema](#nestedatt--aws--filters))
225+
226+
<a id="nestedatt--aws--filters"></a>
227+
### Nested Schema for `aws.filters`
228+
229+
Optional:
230+
231+
- `region` (List of String) List of AWS regions to include
232+
- `tags` (List of String) List of tags to filter by (format: key=value)
233+
234+
235+
236+
<a id="nestedatt--azure"></a>
237+
### Nested Schema for `azure`
238+
239+
Required:
240+
241+
- `account_ids` (List of String) List of Azure subscription IDs
143242

144-
<a id="nestedblock--selectors"></a>
145-
### Nested Schema for `selectors`
243+
Optional:
244+
245+
- `filters` (Attributes) Filters for Azure cloud resources (see [below for nested schema](#nestedatt--azure--filters))
246+
247+
<a id="nestedatt--azure--filters"></a>
248+
### Nested Schema for `azure.filters`
146249

147250
Optional:
148251

149-
- `cloud_resources` (Block Set) Cloud resource selectors for grouping cloud accounts and resources. (see [below for nested schema](#nestedblock--selectors--cloud_resources))
150-
- `images` (Block Set) Container image selectors for grouping container images. (see [below for nested schema](#nestedblock--selectors--images))
252+
- `region` (List of String) List of Azure regions to include
253+
- `tags` (List of String) List of tags to filter by (format: key=value)
254+
151255

152-
<a id="nestedblock--selectors--cloud_resources"></a>
153-
### Nested Schema for `selectors.cloud_resources`
256+
257+
<a id="nestedatt--gcp"></a>
258+
### Nested Schema for `gcp`
154259

155260
Required:
156261

157-
- `account_ids` (Set of String) A set of cloud account IDs to include in the selector.
158-
- `cloud_provider` (String) The cloud provider. Valid values: `aws`, `azure`, `gcp`.
262+
- `account_ids` (List of String) List of GCP project IDs
159263

160264
Optional:
161265

162-
- `filters` (Block Set) Additional filters to apply to the cloud resources. (see [below for nested schema](#nestedblock--selectors--cloud_resources--filters))
266+
- `filters` (Attributes) Filters for GCP cloud resources. Note: GCP does not support tag filtering. (see [below for nested schema](#nestedatt--gcp--filters))
163267

164-
<a id="nestedblock--selectors--cloud_resources--filters"></a>
165-
### Nested Schema for `selectors.cloud_resources.filters`
268+
<a id="nestedatt--gcp--filters"></a>
269+
### Nested Schema for `gcp.filters`
166270

167271
Optional:
168272

169-
- `region` (Set of String) A set of regions to filter by.
170-
- `tags` (Set of String) A set of tags to filter by in key=value format.
273+
- `region` (List of String) List of GCP regions to include
274+
171275

172-
<a id="nestedblock--selectors--images"></a>
173-
### Nested Schema for `selectors.images`
276+
277+
<a id="nestedatt--images"></a>
278+
### Nested Schema for `images`
174279

175280
Required:
176281

177-
- `registry` (String) The container registry hostname.
178-
- `repository` (String) The container repository name.
282+
- `registry` (String) Container registry hostname
283+
- `repository` (String) Repository name
179284

180285
Optional:
181286

182-
- `tag` (String) The container image tag. If not specified, matches all tags.
287+
- `tag` (String) Image tag (optional, defaults to any tag if not specified)
183288

184289
## Import
185290

@@ -188,3 +293,4 @@ Import is supported using the following syntax:
188293
```shell
189294
# cloud security group can be imported by specifying the group UUID.
190295
terraform import crowdstrike_cloud_security_group.example 12345678-1234-1234-1234-123456789abc
296+
```

0 commit comments

Comments
 (0)