pulumi-gcp 8.1.0a1726492828__py3-none-any.whl → 8.2.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- pulumi_gcp/__init__.py +38 -0
- pulumi_gcp/bigquery/__init__.py +1 -0
- pulumi_gcp/bigquery/get_tables.py +143 -0
- pulumi_gcp/bigquery/outputs.py +30 -0
- pulumi_gcp/compute/__init__.py +1 -0
- pulumi_gcp/compute/_inputs.py +2208 -285
- pulumi_gcp/compute/get_instance.py +3 -0
- pulumi_gcp/compute/network_firewall_policy_with_rules.py +826 -0
- pulumi_gcp/compute/outputs.py +1383 -0
- pulumi_gcp/compute/region_target_http_proxy.py +159 -0
- pulumi_gcp/compute/region_target_https_proxy.py +175 -0
- pulumi_gcp/compute/service_attachment.py +75 -0
- pulumi_gcp/compute/target_http_proxy.py +49 -28
- pulumi_gcp/compute/target_https_proxy.py +49 -28
- pulumi_gcp/config/__init__.pyi +4 -0
- pulumi_gcp/config/vars.py +8 -0
- pulumi_gcp/container/_inputs.py +96 -0
- pulumi_gcp/container/attached_cluster.py +54 -1
- pulumi_gcp/container/outputs.py +102 -0
- pulumi_gcp/dataproc/metastore_federation.py +8 -8
- pulumi_gcp/dataproc/metastore_service.py +2 -0
- pulumi_gcp/datastream/stream.py +21 -14
- pulumi_gcp/developerconnect/__init__.py +11 -0
- pulumi_gcp/developerconnect/_inputs.py +301 -0
- pulumi_gcp/developerconnect/connection.py +1034 -0
- pulumi_gcp/developerconnect/git_repository_link.py +873 -0
- pulumi_gcp/developerconnect/outputs.py +247 -0
- pulumi_gcp/gkeonprem/_inputs.py +3 -3
- pulumi_gcp/gkeonprem/outputs.py +2 -2
- pulumi_gcp/memorystore/__init__.py +10 -0
- pulumi_gcp/memorystore/_inputs.py +731 -0
- pulumi_gcp/memorystore/instance.py +1663 -0
- pulumi_gcp/memorystore/outputs.py +598 -0
- pulumi_gcp/netapp/volume.py +101 -0
- pulumi_gcp/organizations/folder.py +52 -33
- pulumi_gcp/provider.py +40 -0
- pulumi_gcp/pulumi-plugin.json +1 -1
- pulumi_gcp/securitycenter/v2_project_mute_config.py +2 -2
- pulumi_gcp/vpcaccess/connector.py +21 -28
- {pulumi_gcp-8.1.0a1726492828.dist-info → pulumi_gcp-8.2.0.dist-info}/METADATA +1 -1
- {pulumi_gcp-8.1.0a1726492828.dist-info → pulumi_gcp-8.2.0.dist-info}/RECORD +43 -32
- {pulumi_gcp-8.1.0a1726492828.dist-info → pulumi_gcp-8.2.0.dist-info}/WHEEL +0 -0
- {pulumi_gcp-8.1.0a1726492828.dist-info → pulumi_gcp-8.2.0.dist-info}/top_level.txt +0 -0
pulumi_gcp/compute/_inputs.py
CHANGED
@@ -399,6 +399,26 @@ __all__ = [
|
|
399
399
|
'NetworkFirewallPolicyRuleMatchSrcSecureTagArgsDict',
|
400
400
|
'NetworkFirewallPolicyRuleTargetSecureTagArgs',
|
401
401
|
'NetworkFirewallPolicyRuleTargetSecureTagArgsDict',
|
402
|
+
'NetworkFirewallPolicyWithRulesPredefinedRuleArgs',
|
403
|
+
'NetworkFirewallPolicyWithRulesPredefinedRuleArgsDict',
|
404
|
+
'NetworkFirewallPolicyWithRulesPredefinedRuleMatchArgs',
|
405
|
+
'NetworkFirewallPolicyWithRulesPredefinedRuleMatchArgsDict',
|
406
|
+
'NetworkFirewallPolicyWithRulesPredefinedRuleMatchLayer4ConfigArgs',
|
407
|
+
'NetworkFirewallPolicyWithRulesPredefinedRuleMatchLayer4ConfigArgsDict',
|
408
|
+
'NetworkFirewallPolicyWithRulesPredefinedRuleMatchSrcSecureTagArgs',
|
409
|
+
'NetworkFirewallPolicyWithRulesPredefinedRuleMatchSrcSecureTagArgsDict',
|
410
|
+
'NetworkFirewallPolicyWithRulesPredefinedRuleTargetSecureTagArgs',
|
411
|
+
'NetworkFirewallPolicyWithRulesPredefinedRuleTargetSecureTagArgsDict',
|
412
|
+
'NetworkFirewallPolicyWithRulesRuleArgs',
|
413
|
+
'NetworkFirewallPolicyWithRulesRuleArgsDict',
|
414
|
+
'NetworkFirewallPolicyWithRulesRuleMatchArgs',
|
415
|
+
'NetworkFirewallPolicyWithRulesRuleMatchArgsDict',
|
416
|
+
'NetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigArgs',
|
417
|
+
'NetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigArgsDict',
|
418
|
+
'NetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagArgs',
|
419
|
+
'NetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagArgsDict',
|
420
|
+
'NetworkFirewallPolicyWithRulesRuleTargetSecureTagArgs',
|
421
|
+
'NetworkFirewallPolicyWithRulesRuleTargetSecureTagArgsDict',
|
402
422
|
'NodeGroupAutoscalingPolicyArgs',
|
403
423
|
'NodeGroupAutoscalingPolicyArgsDict',
|
404
424
|
'NodeGroupMaintenanceWindowArgs',
|
@@ -8823,6 +8843,10 @@ if not MYPY:
|
|
8823
8843
|
"""
|
8824
8844
|
A map of resource manager tags. Resource manager tag keys and values have the same definition as resource manager tags. Keys must be in the format tagKeys/{tag_key_id}, and values are in the format tagValues/456. The field is ignored (both PUT & PATCH) when empty.
|
8825
8845
|
"""
|
8846
|
+
resource_policies: NotRequired[pulumi.Input[str]]
|
8847
|
+
"""
|
8848
|
+
A list of self_links of resource policies to attach to the instance's boot disk. Modifying this list will cause the instance to recreate. Currently a max of 1 resource policy is supported.
|
8849
|
+
"""
|
8826
8850
|
size: NotRequired[pulumi.Input[int]]
|
8827
8851
|
"""
|
8828
8852
|
The size of the image in gigabytes. If not specified, it
|
@@ -8851,6 +8875,7 @@ class InstanceBootDiskInitializeParamsArgs:
|
|
8851
8875
|
provisioned_iops: Optional[pulumi.Input[int]] = None,
|
8852
8876
|
provisioned_throughput: Optional[pulumi.Input[int]] = None,
|
8853
8877
|
resource_manager_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
8878
|
+
resource_policies: Optional[pulumi.Input[str]] = None,
|
8854
8879
|
size: Optional[pulumi.Input[int]] = None,
|
8855
8880
|
storage_pool: Optional[pulumi.Input[str]] = None,
|
8856
8881
|
type: Optional[pulumi.Input[str]] = None):
|
@@ -8883,6 +8908,7 @@ class InstanceBootDiskInitializeParamsArgs:
|
|
8883
8908
|
for an update of throughput every 4 hours. To update your hyperdisk more
|
8884
8909
|
frequently, you'll need to manually delete and recreate it.
|
8885
8910
|
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] resource_manager_tags: A map of resource manager tags. Resource manager tag keys and values have the same definition as resource manager tags. Keys must be in the format tagKeys/{tag_key_id}, and values are in the format tagValues/456. The field is ignored (both PUT & PATCH) when empty.
|
8911
|
+
:param pulumi.Input[str] resource_policies: A list of self_links of resource policies to attach to the instance's boot disk. Modifying this list will cause the instance to recreate. Currently a max of 1 resource policy is supported.
|
8886
8912
|
:param pulumi.Input[int] size: The size of the image in gigabytes. If not specified, it
|
8887
8913
|
will inherit the size of its base image.
|
8888
8914
|
:param pulumi.Input[str] storage_pool: The URL of the storage pool in which the new disk is created.
|
@@ -8903,6 +8929,8 @@ class InstanceBootDiskInitializeParamsArgs:
|
|
8903
8929
|
pulumi.set(__self__, "provisioned_throughput", provisioned_throughput)
|
8904
8930
|
if resource_manager_tags is not None:
|
8905
8931
|
pulumi.set(__self__, "resource_manager_tags", resource_manager_tags)
|
8932
|
+
if resource_policies is not None:
|
8933
|
+
pulumi.set(__self__, "resource_policies", resource_policies)
|
8906
8934
|
if size is not None:
|
8907
8935
|
pulumi.set(__self__, "size", size)
|
8908
8936
|
if storage_pool is not None:
|
@@ -9004,6 +9032,18 @@ class InstanceBootDiskInitializeParamsArgs:
|
|
9004
9032
|
def resource_manager_tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
|
9005
9033
|
pulumi.set(self, "resource_manager_tags", value)
|
9006
9034
|
|
9035
|
+
@property
|
9036
|
+
@pulumi.getter(name="resourcePolicies")
|
9037
|
+
def resource_policies(self) -> Optional[pulumi.Input[str]]:
|
9038
|
+
"""
|
9039
|
+
A list of self_links of resource policies to attach to the instance's boot disk. Modifying this list will cause the instance to recreate. Currently a max of 1 resource policy is supported.
|
9040
|
+
"""
|
9041
|
+
return pulumi.get(self, "resource_policies")
|
9042
|
+
|
9043
|
+
@resource_policies.setter
|
9044
|
+
def resource_policies(self, value: Optional[pulumi.Input[str]]):
|
9045
|
+
pulumi.set(self, "resource_policies", value)
|
9046
|
+
|
9007
9047
|
@property
|
9008
9048
|
@pulumi.getter
|
9009
9049
|
def size(self) -> Optional[pulumi.Input[int]]:
|
@@ -9518,6 +9558,10 @@ if not MYPY:
|
|
9518
9558
|
"""
|
9519
9559
|
A map of resource manager tags. Resource manager tag keys and values have the same definition as resource manager tags. Keys must be in the format tagKeys/{tag_key_id}, and values are in the format tagValues/456. The field is ignored (both PUT & PATCH) when empty.
|
9520
9560
|
"""
|
9561
|
+
resource_policies: NotRequired[pulumi.Input[str]]
|
9562
|
+
"""
|
9563
|
+
A list of self_links of resource policies to attach to the instance's boot disk. Modifying this list will cause the instance to recreate. Currently a max of 1 resource policy is supported.
|
9564
|
+
"""
|
9521
9565
|
size: NotRequired[pulumi.Input[int]]
|
9522
9566
|
"""
|
9523
9567
|
The size of the image in gigabytes.
|
@@ -9542,6 +9586,7 @@ class InstanceFromMachineImageBootDiskInitializeParamsArgs:
|
|
9542
9586
|
provisioned_iops: Optional[pulumi.Input[int]] = None,
|
9543
9587
|
provisioned_throughput: Optional[pulumi.Input[int]] = None,
|
9544
9588
|
resource_manager_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
9589
|
+
resource_policies: Optional[pulumi.Input[str]] = None,
|
9545
9590
|
size: Optional[pulumi.Input[int]] = None,
|
9546
9591
|
storage_pool: Optional[pulumi.Input[str]] = None,
|
9547
9592
|
type: Optional[pulumi.Input[str]] = None):
|
@@ -9552,6 +9597,7 @@ class InstanceFromMachineImageBootDiskInitializeParamsArgs:
|
|
9552
9597
|
:param pulumi.Input[int] provisioned_iops: Indicates how many IOPS to provision for the disk. This sets the number of I/O operations per second that the disk can handle.
|
9553
9598
|
:param pulumi.Input[int] provisioned_throughput: Indicates how much throughput to provision for the disk. This sets the number of throughput mb per second that the disk can handle.
|
9554
9599
|
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] resource_manager_tags: A map of resource manager tags. Resource manager tag keys and values have the same definition as resource manager tags. Keys must be in the format tagKeys/{tag_key_id}, and values are in the format tagValues/456. The field is ignored (both PUT & PATCH) when empty.
|
9600
|
+
:param pulumi.Input[str] resource_policies: A list of self_links of resource policies to attach to the instance's boot disk. Modifying this list will cause the instance to recreate. Currently a max of 1 resource policy is supported.
|
9555
9601
|
:param pulumi.Input[int] size: The size of the image in gigabytes.
|
9556
9602
|
:param pulumi.Input[str] storage_pool: The URL of the storage pool in which the new disk is created
|
9557
9603
|
:param pulumi.Input[str] type: The Google Compute Engine disk type. Such as pd-standard, pd-ssd or pd-balanced.
|
@@ -9568,6 +9614,8 @@ class InstanceFromMachineImageBootDiskInitializeParamsArgs:
|
|
9568
9614
|
pulumi.set(__self__, "provisioned_throughput", provisioned_throughput)
|
9569
9615
|
if resource_manager_tags is not None:
|
9570
9616
|
pulumi.set(__self__, "resource_manager_tags", resource_manager_tags)
|
9617
|
+
if resource_policies is not None:
|
9618
|
+
pulumi.set(__self__, "resource_policies", resource_policies)
|
9571
9619
|
if size is not None:
|
9572
9620
|
pulumi.set(__self__, "size", size)
|
9573
9621
|
if storage_pool is not None:
|
@@ -9647,6 +9695,18 @@ class InstanceFromMachineImageBootDiskInitializeParamsArgs:
|
|
9647
9695
|
def resource_manager_tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
|
9648
9696
|
pulumi.set(self, "resource_manager_tags", value)
|
9649
9697
|
|
9698
|
+
@property
|
9699
|
+
@pulumi.getter(name="resourcePolicies")
|
9700
|
+
def resource_policies(self) -> Optional[pulumi.Input[str]]:
|
9701
|
+
"""
|
9702
|
+
A list of self_links of resource policies to attach to the instance's boot disk. Modifying this list will cause the instance to recreate. Currently a max of 1 resource policy is supported.
|
9703
|
+
"""
|
9704
|
+
return pulumi.get(self, "resource_policies")
|
9705
|
+
|
9706
|
+
@resource_policies.setter
|
9707
|
+
def resource_policies(self, value: Optional[pulumi.Input[str]]):
|
9708
|
+
pulumi.set(self, "resource_policies", value)
|
9709
|
+
|
9650
9710
|
@property
|
9651
9711
|
@pulumi.getter
|
9652
9712
|
def size(self) -> Optional[pulumi.Input[int]]:
|
@@ -11624,6 +11684,10 @@ if not MYPY:
|
|
11624
11684
|
"""
|
11625
11685
|
A map of resource manager tags. Resource manager tag keys and values have the same definition as resource manager tags. Keys must be in the format tagKeys/{tag_key_id}, and values are in the format tagValues/456. The field is ignored (both PUT & PATCH) when empty.
|
11626
11686
|
"""
|
11687
|
+
resource_policies: NotRequired[pulumi.Input[str]]
|
11688
|
+
"""
|
11689
|
+
A list of self_links of resource policies to attach to the instance's boot disk. Modifying this list will cause the instance to recreate. Currently a max of 1 resource policy is supported.
|
11690
|
+
"""
|
11627
11691
|
size: NotRequired[pulumi.Input[int]]
|
11628
11692
|
"""
|
11629
11693
|
The size of the image in gigabytes.
|
@@ -11648,6 +11712,7 @@ class InstanceFromTemplateBootDiskInitializeParamsArgs:
|
|
11648
11712
|
provisioned_iops: Optional[pulumi.Input[int]] = None,
|
11649
11713
|
provisioned_throughput: Optional[pulumi.Input[int]] = None,
|
11650
11714
|
resource_manager_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
11715
|
+
resource_policies: Optional[pulumi.Input[str]] = None,
|
11651
11716
|
size: Optional[pulumi.Input[int]] = None,
|
11652
11717
|
storage_pool: Optional[pulumi.Input[str]] = None,
|
11653
11718
|
type: Optional[pulumi.Input[str]] = None):
|
@@ -11658,6 +11723,7 @@ class InstanceFromTemplateBootDiskInitializeParamsArgs:
|
|
11658
11723
|
:param pulumi.Input[int] provisioned_iops: Indicates how many IOPS to provision for the disk. This sets the number of I/O operations per second that the disk can handle.
|
11659
11724
|
:param pulumi.Input[int] provisioned_throughput: Indicates how much throughput to provision for the disk. This sets the number of throughput mb per second that the disk can handle.
|
11660
11725
|
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] resource_manager_tags: A map of resource manager tags. Resource manager tag keys and values have the same definition as resource manager tags. Keys must be in the format tagKeys/{tag_key_id}, and values are in the format tagValues/456. The field is ignored (both PUT & PATCH) when empty.
|
11726
|
+
:param pulumi.Input[str] resource_policies: A list of self_links of resource policies to attach to the instance's boot disk. Modifying this list will cause the instance to recreate. Currently a max of 1 resource policy is supported.
|
11661
11727
|
:param pulumi.Input[int] size: The size of the image in gigabytes.
|
11662
11728
|
:param pulumi.Input[str] storage_pool: The URL of the storage pool in which the new disk is created
|
11663
11729
|
:param pulumi.Input[str] type: The Google Compute Engine disk type. Such as pd-standard, pd-ssd or pd-balanced.
|
@@ -11674,6 +11740,8 @@ class InstanceFromTemplateBootDiskInitializeParamsArgs:
|
|
11674
11740
|
pulumi.set(__self__, "provisioned_throughput", provisioned_throughput)
|
11675
11741
|
if resource_manager_tags is not None:
|
11676
11742
|
pulumi.set(__self__, "resource_manager_tags", resource_manager_tags)
|
11743
|
+
if resource_policies is not None:
|
11744
|
+
pulumi.set(__self__, "resource_policies", resource_policies)
|
11677
11745
|
if size is not None:
|
11678
11746
|
pulumi.set(__self__, "size", size)
|
11679
11747
|
if storage_pool is not None:
|
@@ -11753,6 +11821,18 @@ class InstanceFromTemplateBootDiskInitializeParamsArgs:
|
|
11753
11821
|
def resource_manager_tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
|
11754
11822
|
pulumi.set(self, "resource_manager_tags", value)
|
11755
11823
|
|
11824
|
+
@property
|
11825
|
+
@pulumi.getter(name="resourcePolicies")
|
11826
|
+
def resource_policies(self) -> Optional[pulumi.Input[str]]:
|
11827
|
+
"""
|
11828
|
+
A list of self_links of resource policies to attach to the instance's boot disk. Modifying this list will cause the instance to recreate. Currently a max of 1 resource policy is supported.
|
11829
|
+
"""
|
11830
|
+
return pulumi.get(self, "resource_policies")
|
11831
|
+
|
11832
|
+
@resource_policies.setter
|
11833
|
+
def resource_policies(self, value: Optional[pulumi.Input[str]]):
|
11834
|
+
pulumi.set(self, "resource_policies", value)
|
11835
|
+
|
11756
11836
|
@property
|
11757
11837
|
@pulumi.getter
|
11758
11838
|
def size(self) -> Optional[pulumi.Input[int]]:
|
@@ -19263,362 +19343,2029 @@ class MachineImageMachineImageEncryptionKeyArgs:
|
|
19263
19343
|
|
19264
19344
|
@property
|
19265
19345
|
@pulumi.getter
|
19266
|
-
def sha256(self) -> Optional[pulumi.Input[str]]:
|
19346
|
+
def sha256(self) -> Optional[pulumi.Input[str]]:
|
19347
|
+
"""
|
19348
|
+
(Output)
|
19349
|
+
The RFC 4648 base64 encoded SHA-256 hash of the
|
19350
|
+
customer-supplied encryption key that protects this resource.
|
19351
|
+
"""
|
19352
|
+
return pulumi.get(self, "sha256")
|
19353
|
+
|
19354
|
+
@sha256.setter
|
19355
|
+
def sha256(self, value: Optional[pulumi.Input[str]]):
|
19356
|
+
pulumi.set(self, "sha256", value)
|
19357
|
+
|
19358
|
+
|
19359
|
+
if not MYPY:
|
19360
|
+
class ManagedSslCertificateManagedArgsDict(TypedDict):
|
19361
|
+
domains: pulumi.Input[Sequence[pulumi.Input[str]]]
|
19362
|
+
"""
|
19363
|
+
Domains for which a managed SSL certificate will be valid. Currently,
|
19364
|
+
there can be up to 100 domains in this list.
|
19365
|
+
"""
|
19366
|
+
elif False:
|
19367
|
+
ManagedSslCertificateManagedArgsDict: TypeAlias = Mapping[str, Any]
|
19368
|
+
|
19369
|
+
@pulumi.input_type
|
19370
|
+
class ManagedSslCertificateManagedArgs:
|
19371
|
+
def __init__(__self__, *,
|
19372
|
+
domains: pulumi.Input[Sequence[pulumi.Input[str]]]):
|
19373
|
+
"""
|
19374
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] domains: Domains for which a managed SSL certificate will be valid. Currently,
|
19375
|
+
there can be up to 100 domains in this list.
|
19376
|
+
"""
|
19377
|
+
pulumi.set(__self__, "domains", domains)
|
19378
|
+
|
19379
|
+
@property
|
19380
|
+
@pulumi.getter
|
19381
|
+
def domains(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
|
19382
|
+
"""
|
19383
|
+
Domains for which a managed SSL certificate will be valid. Currently,
|
19384
|
+
there can be up to 100 domains in this list.
|
19385
|
+
"""
|
19386
|
+
return pulumi.get(self, "domains")
|
19387
|
+
|
19388
|
+
@domains.setter
|
19389
|
+
def domains(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]):
|
19390
|
+
pulumi.set(self, "domains", value)
|
19391
|
+
|
19392
|
+
|
19393
|
+
if not MYPY:
|
19394
|
+
class MangedSslCertificateManagedArgsDict(TypedDict):
|
19395
|
+
domains: pulumi.Input[Sequence[pulumi.Input[str]]]
|
19396
|
+
"""
|
19397
|
+
Domains for which a managed SSL certificate will be valid. Currently,
|
19398
|
+
there can be up to 100 domains in this list.
|
19399
|
+
"""
|
19400
|
+
elif False:
|
19401
|
+
MangedSslCertificateManagedArgsDict: TypeAlias = Mapping[str, Any]
|
19402
|
+
|
19403
|
+
@pulumi.input_type
|
19404
|
+
class MangedSslCertificateManagedArgs:
|
19405
|
+
def __init__(__self__, *,
|
19406
|
+
domains: pulumi.Input[Sequence[pulumi.Input[str]]]):
|
19407
|
+
"""
|
19408
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] domains: Domains for which a managed SSL certificate will be valid. Currently,
|
19409
|
+
there can be up to 100 domains in this list.
|
19410
|
+
"""
|
19411
|
+
pulumi.set(__self__, "domains", domains)
|
19412
|
+
|
19413
|
+
@property
|
19414
|
+
@pulumi.getter
|
19415
|
+
def domains(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
|
19416
|
+
"""
|
19417
|
+
Domains for which a managed SSL certificate will be valid. Currently,
|
19418
|
+
there can be up to 100 domains in this list.
|
19419
|
+
"""
|
19420
|
+
return pulumi.get(self, "domains")
|
19421
|
+
|
19422
|
+
@domains.setter
|
19423
|
+
def domains(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]):
|
19424
|
+
pulumi.set(self, "domains", value)
|
19425
|
+
|
19426
|
+
|
19427
|
+
if not MYPY:
|
19428
|
+
class NetworkAttachmentConnectionEndpointArgsDict(TypedDict):
|
19429
|
+
ip_address: NotRequired[pulumi.Input[str]]
|
19430
|
+
"""
|
19431
|
+
(Output)
|
19432
|
+
The IPv4 address assigned to the producer instance network interface. This value will be a range in case of Serverless.
|
19433
|
+
"""
|
19434
|
+
project_id_or_num: NotRequired[pulumi.Input[str]]
|
19435
|
+
"""
|
19436
|
+
(Output)
|
19437
|
+
The project id or number of the interface to which the IP was assigned.
|
19438
|
+
"""
|
19439
|
+
secondary_ip_cidr_ranges: NotRequired[pulumi.Input[str]]
|
19440
|
+
"""
|
19441
|
+
(Output)
|
19442
|
+
Alias IP ranges from the same subnetwork.
|
19443
|
+
"""
|
19444
|
+
status: NotRequired[pulumi.Input[str]]
|
19445
|
+
"""
|
19446
|
+
(Output)
|
19447
|
+
The status of a connected endpoint to this network attachment.
|
19448
|
+
"""
|
19449
|
+
subnetwork: NotRequired[pulumi.Input[str]]
|
19450
|
+
"""
|
19451
|
+
(Output)
|
19452
|
+
The subnetwork used to assign the IP to the producer instance network interface.
|
19453
|
+
"""
|
19454
|
+
elif False:
|
19455
|
+
NetworkAttachmentConnectionEndpointArgsDict: TypeAlias = Mapping[str, Any]
|
19456
|
+
|
19457
|
+
@pulumi.input_type
|
19458
|
+
class NetworkAttachmentConnectionEndpointArgs:
|
19459
|
+
def __init__(__self__, *,
|
19460
|
+
ip_address: Optional[pulumi.Input[str]] = None,
|
19461
|
+
project_id_or_num: Optional[pulumi.Input[str]] = None,
|
19462
|
+
secondary_ip_cidr_ranges: Optional[pulumi.Input[str]] = None,
|
19463
|
+
status: Optional[pulumi.Input[str]] = None,
|
19464
|
+
subnetwork: Optional[pulumi.Input[str]] = None):
|
19465
|
+
"""
|
19466
|
+
:param pulumi.Input[str] ip_address: (Output)
|
19467
|
+
The IPv4 address assigned to the producer instance network interface. This value will be a range in case of Serverless.
|
19468
|
+
:param pulumi.Input[str] project_id_or_num: (Output)
|
19469
|
+
The project id or number of the interface to which the IP was assigned.
|
19470
|
+
:param pulumi.Input[str] secondary_ip_cidr_ranges: (Output)
|
19471
|
+
Alias IP ranges from the same subnetwork.
|
19472
|
+
:param pulumi.Input[str] status: (Output)
|
19473
|
+
The status of a connected endpoint to this network attachment.
|
19474
|
+
:param pulumi.Input[str] subnetwork: (Output)
|
19475
|
+
The subnetwork used to assign the IP to the producer instance network interface.
|
19476
|
+
"""
|
19477
|
+
if ip_address is not None:
|
19478
|
+
pulumi.set(__self__, "ip_address", ip_address)
|
19479
|
+
if project_id_or_num is not None:
|
19480
|
+
pulumi.set(__self__, "project_id_or_num", project_id_or_num)
|
19481
|
+
if secondary_ip_cidr_ranges is not None:
|
19482
|
+
pulumi.set(__self__, "secondary_ip_cidr_ranges", secondary_ip_cidr_ranges)
|
19483
|
+
if status is not None:
|
19484
|
+
pulumi.set(__self__, "status", status)
|
19485
|
+
if subnetwork is not None:
|
19486
|
+
pulumi.set(__self__, "subnetwork", subnetwork)
|
19487
|
+
|
19488
|
+
@property
|
19489
|
+
@pulumi.getter(name="ipAddress")
|
19490
|
+
def ip_address(self) -> Optional[pulumi.Input[str]]:
|
19491
|
+
"""
|
19492
|
+
(Output)
|
19493
|
+
The IPv4 address assigned to the producer instance network interface. This value will be a range in case of Serverless.
|
19494
|
+
"""
|
19495
|
+
return pulumi.get(self, "ip_address")
|
19496
|
+
|
19497
|
+
@ip_address.setter
|
19498
|
+
def ip_address(self, value: Optional[pulumi.Input[str]]):
|
19499
|
+
pulumi.set(self, "ip_address", value)
|
19500
|
+
|
19501
|
+
@property
|
19502
|
+
@pulumi.getter(name="projectIdOrNum")
|
19503
|
+
def project_id_or_num(self) -> Optional[pulumi.Input[str]]:
|
19504
|
+
"""
|
19505
|
+
(Output)
|
19506
|
+
The project id or number of the interface to which the IP was assigned.
|
19507
|
+
"""
|
19508
|
+
return pulumi.get(self, "project_id_or_num")
|
19509
|
+
|
19510
|
+
@project_id_or_num.setter
|
19511
|
+
def project_id_or_num(self, value: Optional[pulumi.Input[str]]):
|
19512
|
+
pulumi.set(self, "project_id_or_num", value)
|
19513
|
+
|
19514
|
+
@property
|
19515
|
+
@pulumi.getter(name="secondaryIpCidrRanges")
|
19516
|
+
def secondary_ip_cidr_ranges(self) -> Optional[pulumi.Input[str]]:
|
19517
|
+
"""
|
19518
|
+
(Output)
|
19519
|
+
Alias IP ranges from the same subnetwork.
|
19520
|
+
"""
|
19521
|
+
return pulumi.get(self, "secondary_ip_cidr_ranges")
|
19522
|
+
|
19523
|
+
@secondary_ip_cidr_ranges.setter
|
19524
|
+
def secondary_ip_cidr_ranges(self, value: Optional[pulumi.Input[str]]):
|
19525
|
+
pulumi.set(self, "secondary_ip_cidr_ranges", value)
|
19526
|
+
|
19527
|
+
@property
|
19528
|
+
@pulumi.getter
|
19529
|
+
def status(self) -> Optional[pulumi.Input[str]]:
|
19530
|
+
"""
|
19531
|
+
(Output)
|
19532
|
+
The status of a connected endpoint to this network attachment.
|
19533
|
+
"""
|
19534
|
+
return pulumi.get(self, "status")
|
19535
|
+
|
19536
|
+
@status.setter
|
19537
|
+
def status(self, value: Optional[pulumi.Input[str]]):
|
19538
|
+
pulumi.set(self, "status", value)
|
19539
|
+
|
19540
|
+
@property
|
19541
|
+
@pulumi.getter
|
19542
|
+
def subnetwork(self) -> Optional[pulumi.Input[str]]:
|
19543
|
+
"""
|
19544
|
+
(Output)
|
19545
|
+
The subnetwork used to assign the IP to the producer instance network interface.
|
19546
|
+
"""
|
19547
|
+
return pulumi.get(self, "subnetwork")
|
19548
|
+
|
19549
|
+
@subnetwork.setter
|
19550
|
+
def subnetwork(self, value: Optional[pulumi.Input[str]]):
|
19551
|
+
pulumi.set(self, "subnetwork", value)
|
19552
|
+
|
19553
|
+
|
19554
|
+
if not MYPY:
|
19555
|
+
class NetworkEndpointListNetworkEndpointArgsDict(TypedDict):
|
19556
|
+
ip_address: pulumi.Input[str]
|
19557
|
+
"""
|
19558
|
+
IPv4 address of network endpoint. The IP address must belong
|
19559
|
+
to a VM in GCE (either the primary IP or as part of an aliased IP
|
19560
|
+
range).
|
19561
|
+
"""
|
19562
|
+
instance: NotRequired[pulumi.Input[str]]
|
19563
|
+
"""
|
19564
|
+
The name for a specific VM instance that the IP address belongs to.
|
19565
|
+
This is required for network endpoints of type GCE_VM_IP_PORT.
|
19566
|
+
The instance must be in the same zone as the network endpoint group.
|
19567
|
+
"""
|
19568
|
+
port: NotRequired[pulumi.Input[int]]
|
19569
|
+
"""
|
19570
|
+
Port number of network endpoint.
|
19571
|
+
**Note** `port` is required unless the Network Endpoint Group is created
|
19572
|
+
with the type of `GCE_VM_IP`
|
19573
|
+
"""
|
19574
|
+
elif False:
|
19575
|
+
NetworkEndpointListNetworkEndpointArgsDict: TypeAlias = Mapping[str, Any]
|
19576
|
+
|
19577
|
+
@pulumi.input_type
|
19578
|
+
class NetworkEndpointListNetworkEndpointArgs:
|
19579
|
+
def __init__(__self__, *,
|
19580
|
+
ip_address: pulumi.Input[str],
|
19581
|
+
instance: Optional[pulumi.Input[str]] = None,
|
19582
|
+
port: Optional[pulumi.Input[int]] = None):
|
19583
|
+
"""
|
19584
|
+
:param pulumi.Input[str] ip_address: IPv4 address of network endpoint. The IP address must belong
|
19585
|
+
to a VM in GCE (either the primary IP or as part of an aliased IP
|
19586
|
+
range).
|
19587
|
+
:param pulumi.Input[str] instance: The name for a specific VM instance that the IP address belongs to.
|
19588
|
+
This is required for network endpoints of type GCE_VM_IP_PORT.
|
19589
|
+
The instance must be in the same zone as the network endpoint group.
|
19590
|
+
:param pulumi.Input[int] port: Port number of network endpoint.
|
19591
|
+
**Note** `port` is required unless the Network Endpoint Group is created
|
19592
|
+
with the type of `GCE_VM_IP`
|
19593
|
+
"""
|
19594
|
+
pulumi.set(__self__, "ip_address", ip_address)
|
19595
|
+
if instance is not None:
|
19596
|
+
pulumi.set(__self__, "instance", instance)
|
19597
|
+
if port is not None:
|
19598
|
+
pulumi.set(__self__, "port", port)
|
19599
|
+
|
19600
|
+
@property
|
19601
|
+
@pulumi.getter(name="ipAddress")
|
19602
|
+
def ip_address(self) -> pulumi.Input[str]:
|
19603
|
+
"""
|
19604
|
+
IPv4 address of network endpoint. The IP address must belong
|
19605
|
+
to a VM in GCE (either the primary IP or as part of an aliased IP
|
19606
|
+
range).
|
19607
|
+
"""
|
19608
|
+
return pulumi.get(self, "ip_address")
|
19609
|
+
|
19610
|
+
@ip_address.setter
|
19611
|
+
def ip_address(self, value: pulumi.Input[str]):
|
19612
|
+
pulumi.set(self, "ip_address", value)
|
19613
|
+
|
19614
|
+
@property
|
19615
|
+
@pulumi.getter
|
19616
|
+
def instance(self) -> Optional[pulumi.Input[str]]:
|
19617
|
+
"""
|
19618
|
+
The name for a specific VM instance that the IP address belongs to.
|
19619
|
+
This is required for network endpoints of type GCE_VM_IP_PORT.
|
19620
|
+
The instance must be in the same zone as the network endpoint group.
|
19621
|
+
"""
|
19622
|
+
return pulumi.get(self, "instance")
|
19623
|
+
|
19624
|
+
@instance.setter
|
19625
|
+
def instance(self, value: Optional[pulumi.Input[str]]):
|
19626
|
+
pulumi.set(self, "instance", value)
|
19627
|
+
|
19628
|
+
@property
|
19629
|
+
@pulumi.getter
|
19630
|
+
def port(self) -> Optional[pulumi.Input[int]]:
|
19631
|
+
"""
|
19632
|
+
Port number of network endpoint.
|
19633
|
+
**Note** `port` is required unless the Network Endpoint Group is created
|
19634
|
+
with the type of `GCE_VM_IP`
|
19635
|
+
"""
|
19636
|
+
return pulumi.get(self, "port")
|
19637
|
+
|
19638
|
+
@port.setter
|
19639
|
+
def port(self, value: Optional[pulumi.Input[int]]):
|
19640
|
+
pulumi.set(self, "port", value)
|
19641
|
+
|
19642
|
+
|
19643
|
+
if not MYPY:
|
19644
|
+
class NetworkFirewallPolicyRuleMatchArgsDict(TypedDict):
|
19645
|
+
layer4_configs: pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyRuleMatchLayer4ConfigArgsDict']]]
|
19646
|
+
"""
|
19647
|
+
Pairs of IP protocols and ports that the rule should match.
|
19648
|
+
"""
|
19649
|
+
dest_address_groups: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
19650
|
+
"""
|
19651
|
+
Address groups which should be matched against the traffic destination. Maximum number of destination address groups is 10. Destination address groups is only supported in Egress rules.
|
19652
|
+
"""
|
19653
|
+
dest_fqdns: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
19654
|
+
"""
|
19655
|
+
Domain names that will be used to match against the resolved domain name of destination of traffic. Can only be specified if DIRECTION is egress.
|
19656
|
+
"""
|
19657
|
+
dest_ip_ranges: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
19658
|
+
"""
|
19659
|
+
CIDR IP address range. Maximum number of destination CIDR IP ranges allowed is 5000.
|
19660
|
+
"""
|
19661
|
+
dest_region_codes: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
19662
|
+
"""
|
19663
|
+
The Unicode country codes whose IP addresses will be used to match against the source of traffic. Can only be specified if DIRECTION is egress.
|
19664
|
+
"""
|
19665
|
+
dest_threat_intelligences: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
19666
|
+
"""
|
19667
|
+
Name of the Google Cloud Threat Intelligence list.
|
19668
|
+
"""
|
19669
|
+
src_address_groups: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
19670
|
+
"""
|
19671
|
+
Address groups which should be matched against the traffic source. Maximum number of source address groups is 10. Source address groups is only supported in Ingress rules.
|
19672
|
+
"""
|
19673
|
+
src_fqdns: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
19674
|
+
"""
|
19675
|
+
Domain names that will be used to match against the resolved domain name of source of traffic. Can only be specified if DIRECTION is ingress.
|
19676
|
+
"""
|
19677
|
+
src_ip_ranges: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
19678
|
+
"""
|
19679
|
+
CIDR IP address range. Maximum number of source CIDR IP ranges allowed is 5000.
|
19680
|
+
"""
|
19681
|
+
src_region_codes: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
19682
|
+
"""
|
19683
|
+
The Unicode country codes whose IP addresses will be used to match against the source of traffic. Can only be specified if DIRECTION is ingress.
|
19684
|
+
"""
|
19685
|
+
src_secure_tags: NotRequired[pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyRuleMatchSrcSecureTagArgsDict']]]]
|
19686
|
+
"""
|
19687
|
+
List of secure tag values, which should be matched at the source of the traffic. For INGRESS rule, if all the <code>srcSecureTag</code> are INEFFECTIVE, and there is no <code>srcIpRange</code>, this rule will be ignored. Maximum number of source tag values allowed is 256.
|
19688
|
+
"""
|
19689
|
+
src_threat_intelligences: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
19690
|
+
"""
|
19691
|
+
Name of the Google Cloud Threat Intelligence list.
|
19692
|
+
|
19693
|
+
The `layer4_configs` block supports:
|
19694
|
+
"""
|
19695
|
+
elif False:
|
19696
|
+
NetworkFirewallPolicyRuleMatchArgsDict: TypeAlias = Mapping[str, Any]
|
19697
|
+
|
19698
|
+
@pulumi.input_type
|
19699
|
+
class NetworkFirewallPolicyRuleMatchArgs:
|
19700
|
+
def __init__(__self__, *,
|
19701
|
+
layer4_configs: pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyRuleMatchLayer4ConfigArgs']]],
|
19702
|
+
dest_address_groups: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
19703
|
+
dest_fqdns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
19704
|
+
dest_ip_ranges: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
19705
|
+
dest_region_codes: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
19706
|
+
dest_threat_intelligences: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
19707
|
+
src_address_groups: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
19708
|
+
src_fqdns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
19709
|
+
src_ip_ranges: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
19710
|
+
src_region_codes: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
19711
|
+
src_secure_tags: Optional[pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyRuleMatchSrcSecureTagArgs']]]] = None,
|
19712
|
+
src_threat_intelligences: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
|
19713
|
+
"""
|
19714
|
+
:param pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyRuleMatchLayer4ConfigArgs']]] layer4_configs: Pairs of IP protocols and ports that the rule should match.
|
19715
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] dest_address_groups: Address groups which should be matched against the traffic destination. Maximum number of destination address groups is 10. Destination address groups is only supported in Egress rules.
|
19716
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] dest_fqdns: Domain names that will be used to match against the resolved domain name of destination of traffic. Can only be specified if DIRECTION is egress.
|
19717
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] dest_ip_ranges: CIDR IP address range. Maximum number of destination CIDR IP ranges allowed is 5000.
|
19718
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] dest_region_codes: The Unicode country codes whose IP addresses will be used to match against the source of traffic. Can only be specified if DIRECTION is egress.
|
19719
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] dest_threat_intelligences: Name of the Google Cloud Threat Intelligence list.
|
19720
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] src_address_groups: Address groups which should be matched against the traffic source. Maximum number of source address groups is 10. Source address groups is only supported in Ingress rules.
|
19721
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] src_fqdns: Domain names that will be used to match against the resolved domain name of source of traffic. Can only be specified if DIRECTION is ingress.
|
19722
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] src_ip_ranges: CIDR IP address range. Maximum number of source CIDR IP ranges allowed is 5000.
|
19723
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] src_region_codes: The Unicode country codes whose IP addresses will be used to match against the source of traffic. Can only be specified if DIRECTION is ingress.
|
19724
|
+
:param pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyRuleMatchSrcSecureTagArgs']]] src_secure_tags: List of secure tag values, which should be matched at the source of the traffic. For INGRESS rule, if all the <code>srcSecureTag</code> are INEFFECTIVE, and there is no <code>srcIpRange</code>, this rule will be ignored. Maximum number of source tag values allowed is 256.
|
19725
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] src_threat_intelligences: Name of the Google Cloud Threat Intelligence list.
|
19726
|
+
|
19727
|
+
The `layer4_configs` block supports:
|
19728
|
+
"""
|
19729
|
+
pulumi.set(__self__, "layer4_configs", layer4_configs)
|
19730
|
+
if dest_address_groups is not None:
|
19731
|
+
pulumi.set(__self__, "dest_address_groups", dest_address_groups)
|
19732
|
+
if dest_fqdns is not None:
|
19733
|
+
pulumi.set(__self__, "dest_fqdns", dest_fqdns)
|
19734
|
+
if dest_ip_ranges is not None:
|
19735
|
+
pulumi.set(__self__, "dest_ip_ranges", dest_ip_ranges)
|
19736
|
+
if dest_region_codes is not None:
|
19737
|
+
pulumi.set(__self__, "dest_region_codes", dest_region_codes)
|
19738
|
+
if dest_threat_intelligences is not None:
|
19739
|
+
pulumi.set(__self__, "dest_threat_intelligences", dest_threat_intelligences)
|
19740
|
+
if src_address_groups is not None:
|
19741
|
+
pulumi.set(__self__, "src_address_groups", src_address_groups)
|
19742
|
+
if src_fqdns is not None:
|
19743
|
+
pulumi.set(__self__, "src_fqdns", src_fqdns)
|
19744
|
+
if src_ip_ranges is not None:
|
19745
|
+
pulumi.set(__self__, "src_ip_ranges", src_ip_ranges)
|
19746
|
+
if src_region_codes is not None:
|
19747
|
+
pulumi.set(__self__, "src_region_codes", src_region_codes)
|
19748
|
+
if src_secure_tags is not None:
|
19749
|
+
pulumi.set(__self__, "src_secure_tags", src_secure_tags)
|
19750
|
+
if src_threat_intelligences is not None:
|
19751
|
+
pulumi.set(__self__, "src_threat_intelligences", src_threat_intelligences)
|
19752
|
+
|
19753
|
+
@property
|
19754
|
+
@pulumi.getter(name="layer4Configs")
|
19755
|
+
def layer4_configs(self) -> pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyRuleMatchLayer4ConfigArgs']]]:
|
19756
|
+
"""
|
19757
|
+
Pairs of IP protocols and ports that the rule should match.
|
19758
|
+
"""
|
19759
|
+
return pulumi.get(self, "layer4_configs")
|
19760
|
+
|
19761
|
+
@layer4_configs.setter
|
19762
|
+
def layer4_configs(self, value: pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyRuleMatchLayer4ConfigArgs']]]):
|
19763
|
+
pulumi.set(self, "layer4_configs", value)
|
19764
|
+
|
19765
|
+
@property
|
19766
|
+
@pulumi.getter(name="destAddressGroups")
|
19767
|
+
def dest_address_groups(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
19768
|
+
"""
|
19769
|
+
Address groups which should be matched against the traffic destination. Maximum number of destination address groups is 10. Destination address groups is only supported in Egress rules.
|
19770
|
+
"""
|
19771
|
+
return pulumi.get(self, "dest_address_groups")
|
19772
|
+
|
19773
|
+
@dest_address_groups.setter
|
19774
|
+
def dest_address_groups(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
19775
|
+
pulumi.set(self, "dest_address_groups", value)
|
19776
|
+
|
19777
|
+
@property
|
19778
|
+
@pulumi.getter(name="destFqdns")
|
19779
|
+
def dest_fqdns(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
19780
|
+
"""
|
19781
|
+
Domain names that will be used to match against the resolved domain name of destination of traffic. Can only be specified if DIRECTION is egress.
|
19782
|
+
"""
|
19783
|
+
return pulumi.get(self, "dest_fqdns")
|
19784
|
+
|
19785
|
+
@dest_fqdns.setter
|
19786
|
+
def dest_fqdns(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
19787
|
+
pulumi.set(self, "dest_fqdns", value)
|
19788
|
+
|
19789
|
+
@property
|
19790
|
+
@pulumi.getter(name="destIpRanges")
|
19791
|
+
def dest_ip_ranges(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
19792
|
+
"""
|
19793
|
+
CIDR IP address range. Maximum number of destination CIDR IP ranges allowed is 5000.
|
19794
|
+
"""
|
19795
|
+
return pulumi.get(self, "dest_ip_ranges")
|
19796
|
+
|
19797
|
+
@dest_ip_ranges.setter
|
19798
|
+
def dest_ip_ranges(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
19799
|
+
pulumi.set(self, "dest_ip_ranges", value)
|
19800
|
+
|
19801
|
+
@property
|
19802
|
+
@pulumi.getter(name="destRegionCodes")
|
19803
|
+
def dest_region_codes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
19804
|
+
"""
|
19805
|
+
The Unicode country codes whose IP addresses will be used to match against the source of traffic. Can only be specified if DIRECTION is egress.
|
19806
|
+
"""
|
19807
|
+
return pulumi.get(self, "dest_region_codes")
|
19808
|
+
|
19809
|
+
@dest_region_codes.setter
|
19810
|
+
def dest_region_codes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
19811
|
+
pulumi.set(self, "dest_region_codes", value)
|
19812
|
+
|
19813
|
+
@property
|
19814
|
+
@pulumi.getter(name="destThreatIntelligences")
|
19815
|
+
def dest_threat_intelligences(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
19816
|
+
"""
|
19817
|
+
Name of the Google Cloud Threat Intelligence list.
|
19818
|
+
"""
|
19819
|
+
return pulumi.get(self, "dest_threat_intelligences")
|
19820
|
+
|
19821
|
+
@dest_threat_intelligences.setter
|
19822
|
+
def dest_threat_intelligences(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
19823
|
+
pulumi.set(self, "dest_threat_intelligences", value)
|
19824
|
+
|
19825
|
+
@property
|
19826
|
+
@pulumi.getter(name="srcAddressGroups")
|
19827
|
+
def src_address_groups(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
19828
|
+
"""
|
19829
|
+
Address groups which should be matched against the traffic source. Maximum number of source address groups is 10. Source address groups is only supported in Ingress rules.
|
19830
|
+
"""
|
19831
|
+
return pulumi.get(self, "src_address_groups")
|
19832
|
+
|
19833
|
+
@src_address_groups.setter
|
19834
|
+
def src_address_groups(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
19835
|
+
pulumi.set(self, "src_address_groups", value)
|
19836
|
+
|
19837
|
+
@property
|
19838
|
+
@pulumi.getter(name="srcFqdns")
|
19839
|
+
def src_fqdns(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
19840
|
+
"""
|
19841
|
+
Domain names that will be used to match against the resolved domain name of source of traffic. Can only be specified if DIRECTION is ingress.
|
19842
|
+
"""
|
19843
|
+
return pulumi.get(self, "src_fqdns")
|
19844
|
+
|
19845
|
+
@src_fqdns.setter
|
19846
|
+
def src_fqdns(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
19847
|
+
pulumi.set(self, "src_fqdns", value)
|
19848
|
+
|
19849
|
+
@property
|
19850
|
+
@pulumi.getter(name="srcIpRanges")
|
19851
|
+
def src_ip_ranges(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
19852
|
+
"""
|
19853
|
+
CIDR IP address range. Maximum number of source CIDR IP ranges allowed is 5000.
|
19854
|
+
"""
|
19855
|
+
return pulumi.get(self, "src_ip_ranges")
|
19856
|
+
|
19857
|
+
@src_ip_ranges.setter
|
19858
|
+
def src_ip_ranges(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
19859
|
+
pulumi.set(self, "src_ip_ranges", value)
|
19860
|
+
|
19861
|
+
@property
|
19862
|
+
@pulumi.getter(name="srcRegionCodes")
|
19863
|
+
def src_region_codes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
19864
|
+
"""
|
19865
|
+
The Unicode country codes whose IP addresses will be used to match against the source of traffic. Can only be specified if DIRECTION is ingress.
|
19866
|
+
"""
|
19867
|
+
return pulumi.get(self, "src_region_codes")
|
19868
|
+
|
19869
|
+
@src_region_codes.setter
|
19870
|
+
def src_region_codes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
19871
|
+
pulumi.set(self, "src_region_codes", value)
|
19872
|
+
|
19873
|
+
@property
|
19874
|
+
@pulumi.getter(name="srcSecureTags")
|
19875
|
+
def src_secure_tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyRuleMatchSrcSecureTagArgs']]]]:
|
19876
|
+
"""
|
19877
|
+
List of secure tag values, which should be matched at the source of the traffic. For INGRESS rule, if all the <code>srcSecureTag</code> are INEFFECTIVE, and there is no <code>srcIpRange</code>, this rule will be ignored. Maximum number of source tag values allowed is 256.
|
19878
|
+
"""
|
19879
|
+
return pulumi.get(self, "src_secure_tags")
|
19880
|
+
|
19881
|
+
@src_secure_tags.setter
|
19882
|
+
def src_secure_tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyRuleMatchSrcSecureTagArgs']]]]):
|
19883
|
+
pulumi.set(self, "src_secure_tags", value)
|
19884
|
+
|
19885
|
+
@property
|
19886
|
+
@pulumi.getter(name="srcThreatIntelligences")
|
19887
|
+
def src_threat_intelligences(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
19888
|
+
"""
|
19889
|
+
Name of the Google Cloud Threat Intelligence list.
|
19890
|
+
|
19891
|
+
The `layer4_configs` block supports:
|
19892
|
+
"""
|
19893
|
+
return pulumi.get(self, "src_threat_intelligences")
|
19894
|
+
|
19895
|
+
@src_threat_intelligences.setter
|
19896
|
+
def src_threat_intelligences(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
19897
|
+
pulumi.set(self, "src_threat_intelligences", value)
|
19898
|
+
|
19899
|
+
|
19900
|
+
if not MYPY:
|
19901
|
+
class NetworkFirewallPolicyRuleMatchLayer4ConfigArgsDict(TypedDict):
|
19902
|
+
ip_protocol: pulumi.Input[str]
|
19903
|
+
"""
|
19904
|
+
The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (`tcp`, `udp`, `icmp`, `esp`, `ah`, `ipip`, `sctp`), or the IP protocol number.
|
19905
|
+
"""
|
19906
|
+
ports: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
19907
|
+
"""
|
19908
|
+
An optional list of ports to which this rule applies. This field is only applicable for UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port. Example inputs include: ``.
|
19909
|
+
"""
|
19910
|
+
elif False:
|
19911
|
+
NetworkFirewallPolicyRuleMatchLayer4ConfigArgsDict: TypeAlias = Mapping[str, Any]
|
19912
|
+
|
19913
|
+
@pulumi.input_type
|
19914
|
+
class NetworkFirewallPolicyRuleMatchLayer4ConfigArgs:
|
19915
|
+
def __init__(__self__, *,
|
19916
|
+
ip_protocol: pulumi.Input[str],
|
19917
|
+
ports: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
|
19918
|
+
"""
|
19919
|
+
:param pulumi.Input[str] ip_protocol: The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (`tcp`, `udp`, `icmp`, `esp`, `ah`, `ipip`, `sctp`), or the IP protocol number.
|
19920
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] ports: An optional list of ports to which this rule applies. This field is only applicable for UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port. Example inputs include: ``.
|
19921
|
+
"""
|
19922
|
+
pulumi.set(__self__, "ip_protocol", ip_protocol)
|
19923
|
+
if ports is not None:
|
19924
|
+
pulumi.set(__self__, "ports", ports)
|
19925
|
+
|
19926
|
+
@property
|
19927
|
+
@pulumi.getter(name="ipProtocol")
|
19928
|
+
def ip_protocol(self) -> pulumi.Input[str]:
|
19929
|
+
"""
|
19930
|
+
The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (`tcp`, `udp`, `icmp`, `esp`, `ah`, `ipip`, `sctp`), or the IP protocol number.
|
19931
|
+
"""
|
19932
|
+
return pulumi.get(self, "ip_protocol")
|
19933
|
+
|
19934
|
+
@ip_protocol.setter
|
19935
|
+
def ip_protocol(self, value: pulumi.Input[str]):
|
19936
|
+
pulumi.set(self, "ip_protocol", value)
|
19937
|
+
|
19938
|
+
@property
|
19939
|
+
@pulumi.getter
|
19940
|
+
def ports(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
19941
|
+
"""
|
19942
|
+
An optional list of ports to which this rule applies. This field is only applicable for UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port. Example inputs include: ``.
|
19943
|
+
"""
|
19944
|
+
return pulumi.get(self, "ports")
|
19945
|
+
|
19946
|
+
@ports.setter
|
19947
|
+
def ports(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
19948
|
+
pulumi.set(self, "ports", value)
|
19949
|
+
|
19950
|
+
|
19951
|
+
if not MYPY:
|
19952
|
+
class NetworkFirewallPolicyRuleMatchSrcSecureTagArgsDict(TypedDict):
|
19953
|
+
name: pulumi.Input[str]
|
19954
|
+
"""
|
19955
|
+
Name of the secure tag, created with TagManager's TagValue API. @pattern tagValues/[0-9]+
|
19956
|
+
"""
|
19957
|
+
state: NotRequired[pulumi.Input[str]]
|
19958
|
+
"""
|
19959
|
+
[Output Only] State of the secure tag, either `EFFECTIVE` or `INEFFECTIVE`. A secure tag is `INEFFECTIVE` when it is deleted or its network is deleted.
|
19960
|
+
"""
|
19961
|
+
elif False:
|
19962
|
+
NetworkFirewallPolicyRuleMatchSrcSecureTagArgsDict: TypeAlias = Mapping[str, Any]
|
19963
|
+
|
19964
|
+
@pulumi.input_type
|
19965
|
+
class NetworkFirewallPolicyRuleMatchSrcSecureTagArgs:
|
19966
|
+
def __init__(__self__, *,
|
19967
|
+
name: pulumi.Input[str],
|
19968
|
+
state: Optional[pulumi.Input[str]] = None):
|
19969
|
+
"""
|
19970
|
+
:param pulumi.Input[str] name: Name of the secure tag, created with TagManager's TagValue API. @pattern tagValues/[0-9]+
|
19971
|
+
:param pulumi.Input[str] state: [Output Only] State of the secure tag, either `EFFECTIVE` or `INEFFECTIVE`. A secure tag is `INEFFECTIVE` when it is deleted or its network is deleted.
|
19972
|
+
"""
|
19973
|
+
pulumi.set(__self__, "name", name)
|
19974
|
+
if state is not None:
|
19975
|
+
pulumi.set(__self__, "state", state)
|
19976
|
+
|
19977
|
+
@property
|
19978
|
+
@pulumi.getter
|
19979
|
+
def name(self) -> pulumi.Input[str]:
|
19980
|
+
"""
|
19981
|
+
Name of the secure tag, created with TagManager's TagValue API. @pattern tagValues/[0-9]+
|
19982
|
+
"""
|
19983
|
+
return pulumi.get(self, "name")
|
19984
|
+
|
19985
|
+
@name.setter
|
19986
|
+
def name(self, value: pulumi.Input[str]):
|
19987
|
+
pulumi.set(self, "name", value)
|
19988
|
+
|
19989
|
+
@property
|
19990
|
+
@pulumi.getter
|
19991
|
+
def state(self) -> Optional[pulumi.Input[str]]:
|
19992
|
+
"""
|
19993
|
+
[Output Only] State of the secure tag, either `EFFECTIVE` or `INEFFECTIVE`. A secure tag is `INEFFECTIVE` when it is deleted or its network is deleted.
|
19994
|
+
"""
|
19995
|
+
return pulumi.get(self, "state")
|
19996
|
+
|
19997
|
+
@state.setter
|
19998
|
+
def state(self, value: Optional[pulumi.Input[str]]):
|
19999
|
+
pulumi.set(self, "state", value)
|
20000
|
+
|
20001
|
+
|
20002
|
+
if not MYPY:
|
20003
|
+
class NetworkFirewallPolicyRuleTargetSecureTagArgsDict(TypedDict):
|
20004
|
+
name: pulumi.Input[str]
|
20005
|
+
"""
|
20006
|
+
Name of the secure tag, created with TagManager's TagValue API. @pattern tagValues/[0-9]+
|
20007
|
+
"""
|
20008
|
+
state: NotRequired[pulumi.Input[str]]
|
20009
|
+
"""
|
20010
|
+
[Output Only] State of the secure tag, either `EFFECTIVE` or `INEFFECTIVE`. A secure tag is `INEFFECTIVE` when it is deleted or its network is deleted.
|
20011
|
+
"""
|
20012
|
+
elif False:
|
20013
|
+
NetworkFirewallPolicyRuleTargetSecureTagArgsDict: TypeAlias = Mapping[str, Any]
|
20014
|
+
|
20015
|
+
@pulumi.input_type
|
20016
|
+
class NetworkFirewallPolicyRuleTargetSecureTagArgs:
|
20017
|
+
def __init__(__self__, *,
|
20018
|
+
name: pulumi.Input[str],
|
20019
|
+
state: Optional[pulumi.Input[str]] = None):
|
20020
|
+
"""
|
20021
|
+
:param pulumi.Input[str] name: Name of the secure tag, created with TagManager's TagValue API. @pattern tagValues/[0-9]+
|
20022
|
+
:param pulumi.Input[str] state: [Output Only] State of the secure tag, either `EFFECTIVE` or `INEFFECTIVE`. A secure tag is `INEFFECTIVE` when it is deleted or its network is deleted.
|
20023
|
+
"""
|
20024
|
+
pulumi.set(__self__, "name", name)
|
20025
|
+
if state is not None:
|
20026
|
+
pulumi.set(__self__, "state", state)
|
20027
|
+
|
20028
|
+
@property
|
20029
|
+
@pulumi.getter
|
20030
|
+
def name(self) -> pulumi.Input[str]:
|
20031
|
+
"""
|
20032
|
+
Name of the secure tag, created with TagManager's TagValue API. @pattern tagValues/[0-9]+
|
20033
|
+
"""
|
20034
|
+
return pulumi.get(self, "name")
|
20035
|
+
|
20036
|
+
@name.setter
|
20037
|
+
def name(self, value: pulumi.Input[str]):
|
20038
|
+
pulumi.set(self, "name", value)
|
20039
|
+
|
20040
|
+
@property
|
20041
|
+
@pulumi.getter
|
20042
|
+
def state(self) -> Optional[pulumi.Input[str]]:
|
20043
|
+
"""
|
20044
|
+
[Output Only] State of the secure tag, either `EFFECTIVE` or `INEFFECTIVE`. A secure tag is `INEFFECTIVE` when it is deleted or its network is deleted.
|
20045
|
+
"""
|
20046
|
+
return pulumi.get(self, "state")
|
20047
|
+
|
20048
|
+
@state.setter
|
20049
|
+
def state(self, value: Optional[pulumi.Input[str]]):
|
20050
|
+
pulumi.set(self, "state", value)
|
20051
|
+
|
20052
|
+
|
20053
|
+
if not MYPY:
|
20054
|
+
class NetworkFirewallPolicyWithRulesPredefinedRuleArgsDict(TypedDict):
|
20055
|
+
action: NotRequired[pulumi.Input[str]]
|
20056
|
+
"""
|
20057
|
+
(Output)
|
20058
|
+
The Action to perform when the client connection triggers the rule. Can currently be either
|
20059
|
+
"allow", "deny", "apply_security_profile_group" or "goto_next".
|
20060
|
+
"""
|
20061
|
+
description: NotRequired[pulumi.Input[str]]
|
20062
|
+
"""
|
20063
|
+
(Output)
|
20064
|
+
A description of the rule.
|
20065
|
+
"""
|
20066
|
+
direction: NotRequired[pulumi.Input[str]]
|
20067
|
+
"""
|
20068
|
+
(Output)
|
20069
|
+
The direction in which this rule applies. If unspecified an INGRESS rule is created.
|
20070
|
+
"""
|
20071
|
+
disabled: NotRequired[pulumi.Input[bool]]
|
20072
|
+
"""
|
20073
|
+
(Output)
|
20074
|
+
Denotes whether the firewall policy rule is disabled. When set to true,
|
20075
|
+
the firewall policy rule is not enforced and traffic behaves as if it did
|
20076
|
+
not exist. If this is unspecified, the firewall policy rule will be
|
20077
|
+
enabled.
|
20078
|
+
"""
|
20079
|
+
enable_logging: NotRequired[pulumi.Input[bool]]
|
20080
|
+
"""
|
20081
|
+
(Output)
|
20082
|
+
Denotes whether to enable logging for a particular rule.
|
20083
|
+
If logging is enabled, logs will be exported to the
|
20084
|
+
configured export destination in Stackdriver.
|
20085
|
+
"""
|
20086
|
+
matches: NotRequired[pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesPredefinedRuleMatchArgsDict']]]]
|
20087
|
+
"""
|
20088
|
+
(Output)
|
20089
|
+
A match condition that incoming traffic is evaluated against. If it evaluates to true, the corresponding 'action' is enforced.
|
20090
|
+
Structure is documented below.
|
20091
|
+
"""
|
20092
|
+
priority: NotRequired[pulumi.Input[int]]
|
20093
|
+
"""
|
20094
|
+
(Output)
|
20095
|
+
An integer indicating the priority of a rule in the list. The priority must be a value
|
20096
|
+
between 0 and 2147483647. Rules are evaluated from highest to lowest priority where 0 is the
|
20097
|
+
highest priority and 2147483647 is the lowest priority.
|
20098
|
+
"""
|
20099
|
+
rule_name: NotRequired[pulumi.Input[str]]
|
20100
|
+
"""
|
20101
|
+
(Output)
|
20102
|
+
An optional name for the rule. This field is not a unique identifier
|
20103
|
+
and can be updated.
|
20104
|
+
"""
|
20105
|
+
security_profile_group: NotRequired[pulumi.Input[str]]
|
20106
|
+
"""
|
20107
|
+
(Output)
|
20108
|
+
A fully-qualified URL of a SecurityProfile resource instance.
|
20109
|
+
Example:
|
20110
|
+
https://networksecurity.googleapis.com/v1/projects/{project}/locations/{location}/securityProfileGroups/my-security-profile-group
|
20111
|
+
Must be specified if action is 'apply_security_profile_group'.
|
20112
|
+
"""
|
20113
|
+
target_secure_tags: NotRequired[pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesPredefinedRuleTargetSecureTagArgsDict']]]]
|
20114
|
+
"""
|
20115
|
+
(Output)
|
20116
|
+
A list of secure tags that controls which instances the firewall rule
|
20117
|
+
applies to. If <code>targetSecureTag</code> are specified, then the
|
20118
|
+
firewall rule applies only to instances in the VPC network that have one
|
20119
|
+
of those EFFECTIVE secure tags, if all the target_secure_tag are in
|
20120
|
+
INEFFECTIVE state, then this rule will be ignored.
|
20121
|
+
<code>targetSecureTag</code> may not be set at the same time as
|
20122
|
+
<code>targetServiceAccounts</code>.
|
20123
|
+
If neither <code>targetServiceAccounts</code> nor
|
20124
|
+
<code>targetSecureTag</code> are specified, the firewall rule applies
|
20125
|
+
to all instances on the specified network.
|
20126
|
+
Maximum number of target label tags allowed is 256.
|
20127
|
+
Structure is documented below.
|
20128
|
+
"""
|
20129
|
+
target_service_accounts: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
20130
|
+
"""
|
20131
|
+
(Output)
|
20132
|
+
A list of service accounts indicating the sets of
|
20133
|
+
instances that are applied with this rule.
|
20134
|
+
"""
|
20135
|
+
tls_inspect: NotRequired[pulumi.Input[bool]]
|
20136
|
+
"""
|
20137
|
+
(Output)
|
20138
|
+
Boolean flag indicating if the traffic should be TLS decrypted.
|
20139
|
+
It can be set only if action = 'apply_security_profile_group' and cannot be set for other actions.
|
20140
|
+
"""
|
20141
|
+
elif False:
|
20142
|
+
NetworkFirewallPolicyWithRulesPredefinedRuleArgsDict: TypeAlias = Mapping[str, Any]
|
20143
|
+
|
20144
|
+
@pulumi.input_type
|
20145
|
+
class NetworkFirewallPolicyWithRulesPredefinedRuleArgs:
|
20146
|
+
def __init__(__self__, *,
|
20147
|
+
action: Optional[pulumi.Input[str]] = None,
|
20148
|
+
description: Optional[pulumi.Input[str]] = None,
|
20149
|
+
direction: Optional[pulumi.Input[str]] = None,
|
20150
|
+
disabled: Optional[pulumi.Input[bool]] = None,
|
20151
|
+
enable_logging: Optional[pulumi.Input[bool]] = None,
|
20152
|
+
matches: Optional[pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesPredefinedRuleMatchArgs']]]] = None,
|
20153
|
+
priority: Optional[pulumi.Input[int]] = None,
|
20154
|
+
rule_name: Optional[pulumi.Input[str]] = None,
|
20155
|
+
security_profile_group: Optional[pulumi.Input[str]] = None,
|
20156
|
+
target_secure_tags: Optional[pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesPredefinedRuleTargetSecureTagArgs']]]] = None,
|
20157
|
+
target_service_accounts: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
20158
|
+
tls_inspect: Optional[pulumi.Input[bool]] = None):
|
20159
|
+
"""
|
20160
|
+
:param pulumi.Input[str] action: (Output)
|
20161
|
+
The Action to perform when the client connection triggers the rule. Can currently be either
|
20162
|
+
"allow", "deny", "apply_security_profile_group" or "goto_next".
|
20163
|
+
:param pulumi.Input[str] description: (Output)
|
20164
|
+
A description of the rule.
|
20165
|
+
:param pulumi.Input[str] direction: (Output)
|
20166
|
+
The direction in which this rule applies. If unspecified an INGRESS rule is created.
|
20167
|
+
:param pulumi.Input[bool] disabled: (Output)
|
20168
|
+
Denotes whether the firewall policy rule is disabled. When set to true,
|
20169
|
+
the firewall policy rule is not enforced and traffic behaves as if it did
|
20170
|
+
not exist. If this is unspecified, the firewall policy rule will be
|
20171
|
+
enabled.
|
20172
|
+
:param pulumi.Input[bool] enable_logging: (Output)
|
20173
|
+
Denotes whether to enable logging for a particular rule.
|
20174
|
+
If logging is enabled, logs will be exported to the
|
20175
|
+
configured export destination in Stackdriver.
|
20176
|
+
:param pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesPredefinedRuleMatchArgs']]] matches: (Output)
|
20177
|
+
A match condition that incoming traffic is evaluated against. If it evaluates to true, the corresponding 'action' is enforced.
|
20178
|
+
Structure is documented below.
|
20179
|
+
:param pulumi.Input[int] priority: (Output)
|
20180
|
+
An integer indicating the priority of a rule in the list. The priority must be a value
|
20181
|
+
between 0 and 2147483647. Rules are evaluated from highest to lowest priority where 0 is the
|
20182
|
+
highest priority and 2147483647 is the lowest priority.
|
20183
|
+
:param pulumi.Input[str] rule_name: (Output)
|
20184
|
+
An optional name for the rule. This field is not a unique identifier
|
20185
|
+
and can be updated.
|
20186
|
+
:param pulumi.Input[str] security_profile_group: (Output)
|
20187
|
+
A fully-qualified URL of a SecurityProfile resource instance.
|
20188
|
+
Example:
|
20189
|
+
https://networksecurity.googleapis.com/v1/projects/{project}/locations/{location}/securityProfileGroups/my-security-profile-group
|
20190
|
+
Must be specified if action is 'apply_security_profile_group'.
|
20191
|
+
:param pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesPredefinedRuleTargetSecureTagArgs']]] target_secure_tags: (Output)
|
20192
|
+
A list of secure tags that controls which instances the firewall rule
|
20193
|
+
applies to. If <code>targetSecureTag</code> are specified, then the
|
20194
|
+
firewall rule applies only to instances in the VPC network that have one
|
20195
|
+
of those EFFECTIVE secure tags, if all the target_secure_tag are in
|
20196
|
+
INEFFECTIVE state, then this rule will be ignored.
|
20197
|
+
<code>targetSecureTag</code> may not be set at the same time as
|
20198
|
+
<code>targetServiceAccounts</code>.
|
20199
|
+
If neither <code>targetServiceAccounts</code> nor
|
20200
|
+
<code>targetSecureTag</code> are specified, the firewall rule applies
|
20201
|
+
to all instances on the specified network.
|
20202
|
+
Maximum number of target label tags allowed is 256.
|
20203
|
+
Structure is documented below.
|
20204
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] target_service_accounts: (Output)
|
20205
|
+
A list of service accounts indicating the sets of
|
20206
|
+
instances that are applied with this rule.
|
20207
|
+
:param pulumi.Input[bool] tls_inspect: (Output)
|
20208
|
+
Boolean flag indicating if the traffic should be TLS decrypted.
|
20209
|
+
It can be set only if action = 'apply_security_profile_group' and cannot be set for other actions.
|
20210
|
+
"""
|
20211
|
+
if action is not None:
|
20212
|
+
pulumi.set(__self__, "action", action)
|
20213
|
+
if description is not None:
|
20214
|
+
pulumi.set(__self__, "description", description)
|
20215
|
+
if direction is not None:
|
20216
|
+
pulumi.set(__self__, "direction", direction)
|
20217
|
+
if disabled is not None:
|
20218
|
+
pulumi.set(__self__, "disabled", disabled)
|
20219
|
+
if enable_logging is not None:
|
20220
|
+
pulumi.set(__self__, "enable_logging", enable_logging)
|
20221
|
+
if matches is not None:
|
20222
|
+
pulumi.set(__self__, "matches", matches)
|
20223
|
+
if priority is not None:
|
20224
|
+
pulumi.set(__self__, "priority", priority)
|
20225
|
+
if rule_name is not None:
|
20226
|
+
pulumi.set(__self__, "rule_name", rule_name)
|
20227
|
+
if security_profile_group is not None:
|
20228
|
+
pulumi.set(__self__, "security_profile_group", security_profile_group)
|
20229
|
+
if target_secure_tags is not None:
|
20230
|
+
pulumi.set(__self__, "target_secure_tags", target_secure_tags)
|
20231
|
+
if target_service_accounts is not None:
|
20232
|
+
pulumi.set(__self__, "target_service_accounts", target_service_accounts)
|
20233
|
+
if tls_inspect is not None:
|
20234
|
+
pulumi.set(__self__, "tls_inspect", tls_inspect)
|
20235
|
+
|
20236
|
+
@property
|
20237
|
+
@pulumi.getter
|
20238
|
+
def action(self) -> Optional[pulumi.Input[str]]:
|
20239
|
+
"""
|
20240
|
+
(Output)
|
20241
|
+
The Action to perform when the client connection triggers the rule. Can currently be either
|
20242
|
+
"allow", "deny", "apply_security_profile_group" or "goto_next".
|
20243
|
+
"""
|
20244
|
+
return pulumi.get(self, "action")
|
20245
|
+
|
20246
|
+
@action.setter
|
20247
|
+
def action(self, value: Optional[pulumi.Input[str]]):
|
20248
|
+
pulumi.set(self, "action", value)
|
20249
|
+
|
20250
|
+
@property
|
20251
|
+
@pulumi.getter
|
20252
|
+
def description(self) -> Optional[pulumi.Input[str]]:
|
20253
|
+
"""
|
20254
|
+
(Output)
|
20255
|
+
A description of the rule.
|
20256
|
+
"""
|
20257
|
+
return pulumi.get(self, "description")
|
20258
|
+
|
20259
|
+
@description.setter
|
20260
|
+
def description(self, value: Optional[pulumi.Input[str]]):
|
20261
|
+
pulumi.set(self, "description", value)
|
20262
|
+
|
20263
|
+
@property
|
20264
|
+
@pulumi.getter
|
20265
|
+
def direction(self) -> Optional[pulumi.Input[str]]:
|
20266
|
+
"""
|
20267
|
+
(Output)
|
20268
|
+
The direction in which this rule applies. If unspecified an INGRESS rule is created.
|
20269
|
+
"""
|
20270
|
+
return pulumi.get(self, "direction")
|
20271
|
+
|
20272
|
+
@direction.setter
|
20273
|
+
def direction(self, value: Optional[pulumi.Input[str]]):
|
20274
|
+
pulumi.set(self, "direction", value)
|
20275
|
+
|
20276
|
+
@property
|
20277
|
+
@pulumi.getter
|
20278
|
+
def disabled(self) -> Optional[pulumi.Input[bool]]:
|
20279
|
+
"""
|
20280
|
+
(Output)
|
20281
|
+
Denotes whether the firewall policy rule is disabled. When set to true,
|
20282
|
+
the firewall policy rule is not enforced and traffic behaves as if it did
|
20283
|
+
not exist. If this is unspecified, the firewall policy rule will be
|
20284
|
+
enabled.
|
20285
|
+
"""
|
20286
|
+
return pulumi.get(self, "disabled")
|
20287
|
+
|
20288
|
+
@disabled.setter
|
20289
|
+
def disabled(self, value: Optional[pulumi.Input[bool]]):
|
20290
|
+
pulumi.set(self, "disabled", value)
|
20291
|
+
|
20292
|
+
@property
|
20293
|
+
@pulumi.getter(name="enableLogging")
|
20294
|
+
def enable_logging(self) -> Optional[pulumi.Input[bool]]:
|
20295
|
+
"""
|
20296
|
+
(Output)
|
20297
|
+
Denotes whether to enable logging for a particular rule.
|
20298
|
+
If logging is enabled, logs will be exported to the
|
20299
|
+
configured export destination in Stackdriver.
|
20300
|
+
"""
|
20301
|
+
return pulumi.get(self, "enable_logging")
|
20302
|
+
|
20303
|
+
@enable_logging.setter
|
20304
|
+
def enable_logging(self, value: Optional[pulumi.Input[bool]]):
|
20305
|
+
pulumi.set(self, "enable_logging", value)
|
20306
|
+
|
20307
|
+
@property
|
20308
|
+
@pulumi.getter
|
20309
|
+
def matches(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesPredefinedRuleMatchArgs']]]]:
|
20310
|
+
"""
|
20311
|
+
(Output)
|
20312
|
+
A match condition that incoming traffic is evaluated against. If it evaluates to true, the corresponding 'action' is enforced.
|
20313
|
+
Structure is documented below.
|
20314
|
+
"""
|
20315
|
+
return pulumi.get(self, "matches")
|
20316
|
+
|
20317
|
+
@matches.setter
|
20318
|
+
def matches(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesPredefinedRuleMatchArgs']]]]):
|
20319
|
+
pulumi.set(self, "matches", value)
|
20320
|
+
|
20321
|
+
@property
|
20322
|
+
@pulumi.getter
|
20323
|
+
def priority(self) -> Optional[pulumi.Input[int]]:
|
20324
|
+
"""
|
20325
|
+
(Output)
|
20326
|
+
An integer indicating the priority of a rule in the list. The priority must be a value
|
20327
|
+
between 0 and 2147483647. Rules are evaluated from highest to lowest priority where 0 is the
|
20328
|
+
highest priority and 2147483647 is the lowest priority.
|
20329
|
+
"""
|
20330
|
+
return pulumi.get(self, "priority")
|
20331
|
+
|
20332
|
+
@priority.setter
|
20333
|
+
def priority(self, value: Optional[pulumi.Input[int]]):
|
20334
|
+
pulumi.set(self, "priority", value)
|
20335
|
+
|
20336
|
+
@property
|
20337
|
+
@pulumi.getter(name="ruleName")
|
20338
|
+
def rule_name(self) -> Optional[pulumi.Input[str]]:
|
20339
|
+
"""
|
20340
|
+
(Output)
|
20341
|
+
An optional name for the rule. This field is not a unique identifier
|
20342
|
+
and can be updated.
|
20343
|
+
"""
|
20344
|
+
return pulumi.get(self, "rule_name")
|
20345
|
+
|
20346
|
+
@rule_name.setter
|
20347
|
+
def rule_name(self, value: Optional[pulumi.Input[str]]):
|
20348
|
+
pulumi.set(self, "rule_name", value)
|
20349
|
+
|
20350
|
+
@property
|
20351
|
+
@pulumi.getter(name="securityProfileGroup")
|
20352
|
+
def security_profile_group(self) -> Optional[pulumi.Input[str]]:
|
20353
|
+
"""
|
20354
|
+
(Output)
|
20355
|
+
A fully-qualified URL of a SecurityProfile resource instance.
|
20356
|
+
Example:
|
20357
|
+
https://networksecurity.googleapis.com/v1/projects/{project}/locations/{location}/securityProfileGroups/my-security-profile-group
|
20358
|
+
Must be specified if action is 'apply_security_profile_group'.
|
20359
|
+
"""
|
20360
|
+
return pulumi.get(self, "security_profile_group")
|
20361
|
+
|
20362
|
+
@security_profile_group.setter
|
20363
|
+
def security_profile_group(self, value: Optional[pulumi.Input[str]]):
|
20364
|
+
pulumi.set(self, "security_profile_group", value)
|
20365
|
+
|
20366
|
+
@property
|
20367
|
+
@pulumi.getter(name="targetSecureTags")
|
20368
|
+
def target_secure_tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesPredefinedRuleTargetSecureTagArgs']]]]:
|
20369
|
+
"""
|
20370
|
+
(Output)
|
20371
|
+
A list of secure tags that controls which instances the firewall rule
|
20372
|
+
applies to. If <code>targetSecureTag</code> are specified, then the
|
20373
|
+
firewall rule applies only to instances in the VPC network that have one
|
20374
|
+
of those EFFECTIVE secure tags, if all the target_secure_tag are in
|
20375
|
+
INEFFECTIVE state, then this rule will be ignored.
|
20376
|
+
<code>targetSecureTag</code> may not be set at the same time as
|
20377
|
+
<code>targetServiceAccounts</code>.
|
20378
|
+
If neither <code>targetServiceAccounts</code> nor
|
20379
|
+
<code>targetSecureTag</code> are specified, the firewall rule applies
|
20380
|
+
to all instances on the specified network.
|
20381
|
+
Maximum number of target label tags allowed is 256.
|
20382
|
+
Structure is documented below.
|
20383
|
+
"""
|
20384
|
+
return pulumi.get(self, "target_secure_tags")
|
20385
|
+
|
20386
|
+
@target_secure_tags.setter
|
20387
|
+
def target_secure_tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesPredefinedRuleTargetSecureTagArgs']]]]):
|
20388
|
+
pulumi.set(self, "target_secure_tags", value)
|
20389
|
+
|
20390
|
+
@property
|
20391
|
+
@pulumi.getter(name="targetServiceAccounts")
|
20392
|
+
def target_service_accounts(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
20393
|
+
"""
|
20394
|
+
(Output)
|
20395
|
+
A list of service accounts indicating the sets of
|
20396
|
+
instances that are applied with this rule.
|
20397
|
+
"""
|
20398
|
+
return pulumi.get(self, "target_service_accounts")
|
20399
|
+
|
20400
|
+
@target_service_accounts.setter
|
20401
|
+
def target_service_accounts(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
20402
|
+
pulumi.set(self, "target_service_accounts", value)
|
20403
|
+
|
20404
|
+
@property
|
20405
|
+
@pulumi.getter(name="tlsInspect")
|
20406
|
+
def tls_inspect(self) -> Optional[pulumi.Input[bool]]:
|
20407
|
+
"""
|
20408
|
+
(Output)
|
20409
|
+
Boolean flag indicating if the traffic should be TLS decrypted.
|
20410
|
+
It can be set only if action = 'apply_security_profile_group' and cannot be set for other actions.
|
20411
|
+
"""
|
20412
|
+
return pulumi.get(self, "tls_inspect")
|
20413
|
+
|
20414
|
+
@tls_inspect.setter
|
20415
|
+
def tls_inspect(self, value: Optional[pulumi.Input[bool]]):
|
20416
|
+
pulumi.set(self, "tls_inspect", value)
|
20417
|
+
|
20418
|
+
|
20419
|
+
if not MYPY:
|
20420
|
+
class NetworkFirewallPolicyWithRulesPredefinedRuleMatchArgsDict(TypedDict):
|
20421
|
+
dest_address_groups: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
20422
|
+
"""
|
20423
|
+
Address groups which should be matched against the traffic destination.
|
20424
|
+
Maximum number of destination address groups is 10.
|
20425
|
+
"""
|
20426
|
+
dest_fqdns: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
20427
|
+
"""
|
20428
|
+
Fully Qualified Domain Name (FQDN) which should be matched against
|
20429
|
+
traffic destination. Maximum number of destination fqdn allowed is 100.
|
20430
|
+
"""
|
20431
|
+
dest_ip_ranges: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
20432
|
+
"""
|
20433
|
+
Destination IP address range in CIDR format. Required for
|
20434
|
+
EGRESS rules.
|
20435
|
+
"""
|
20436
|
+
dest_region_codes: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
20437
|
+
"""
|
20438
|
+
Region codes whose IP addresses will be used to match for destination
|
20439
|
+
of traffic. Should be specified as 2 letter country code defined as per
|
20440
|
+
ISO 3166 alpha-2 country codes. ex."US"
|
20441
|
+
Maximum number of destination region codes allowed is 5000.
|
20442
|
+
"""
|
20443
|
+
dest_threat_intelligences: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
20444
|
+
"""
|
20445
|
+
Names of Network Threat Intelligence lists.
|
20446
|
+
The IPs in these lists will be matched against traffic destination.
|
20447
|
+
"""
|
20448
|
+
layer4_configs: NotRequired[pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesPredefinedRuleMatchLayer4ConfigArgsDict']]]]
|
20449
|
+
"""
|
20450
|
+
Pairs of IP protocols and ports that the rule should match.
|
20451
|
+
Structure is documented below.
|
20452
|
+
"""
|
20453
|
+
src_address_groups: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
20454
|
+
"""
|
20455
|
+
Address groups which should be matched against the traffic source.
|
20456
|
+
Maximum number of source address groups is 10.
|
20457
|
+
"""
|
20458
|
+
src_fqdns: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
20459
|
+
"""
|
20460
|
+
Fully Qualified Domain Name (FQDN) which should be matched against
|
20461
|
+
traffic source. Maximum number of source fqdn allowed is 100.
|
20462
|
+
"""
|
20463
|
+
src_ip_ranges: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
20464
|
+
"""
|
20465
|
+
Source IP address range in CIDR format. Required for
|
20466
|
+
INGRESS rules.
|
20467
|
+
"""
|
20468
|
+
src_region_codes: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
20469
|
+
"""
|
20470
|
+
Region codes whose IP addresses will be used to match for source
|
20471
|
+
of traffic. Should be specified as 2 letter country code defined as per
|
20472
|
+
ISO 3166 alpha-2 country codes. ex."US"
|
20473
|
+
Maximum number of source region codes allowed is 5000.
|
20474
|
+
"""
|
20475
|
+
src_secure_tags: NotRequired[pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesPredefinedRuleMatchSrcSecureTagArgsDict']]]]
|
20476
|
+
"""
|
20477
|
+
List of secure tag values, which should be matched at the source
|
20478
|
+
of the traffic.
|
20479
|
+
For INGRESS rule, if all the <code>srcSecureTag</code> are INEFFECTIVE,
|
20480
|
+
and there is no <code>srcIpRange</code>, this rule will be ignored.
|
20481
|
+
Maximum number of source tag values allowed is 256.
|
20482
|
+
Structure is documented below.
|
20483
|
+
|
20484
|
+
|
20485
|
+
<a name="nested_layer4_config"></a>The `layer4_config` block supports:
|
20486
|
+
"""
|
20487
|
+
src_threat_intelligences: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
20488
|
+
"""
|
20489
|
+
Names of Network Threat Intelligence lists.
|
20490
|
+
The IPs in these lists will be matched against traffic source.
|
20491
|
+
"""
|
20492
|
+
elif False:
|
20493
|
+
NetworkFirewallPolicyWithRulesPredefinedRuleMatchArgsDict: TypeAlias = Mapping[str, Any]
|
20494
|
+
|
20495
|
+
@pulumi.input_type
|
20496
|
+
class NetworkFirewallPolicyWithRulesPredefinedRuleMatchArgs:
|
20497
|
+
def __init__(__self__, *,
|
20498
|
+
dest_address_groups: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
20499
|
+
dest_fqdns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
20500
|
+
dest_ip_ranges: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
20501
|
+
dest_region_codes: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
20502
|
+
dest_threat_intelligences: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
20503
|
+
layer4_configs: Optional[pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesPredefinedRuleMatchLayer4ConfigArgs']]]] = None,
|
20504
|
+
src_address_groups: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
20505
|
+
src_fqdns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
20506
|
+
src_ip_ranges: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
20507
|
+
src_region_codes: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
20508
|
+
src_secure_tags: Optional[pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesPredefinedRuleMatchSrcSecureTagArgs']]]] = None,
|
20509
|
+
src_threat_intelligences: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
|
20510
|
+
"""
|
20511
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] dest_address_groups: Address groups which should be matched against the traffic destination.
|
20512
|
+
Maximum number of destination address groups is 10.
|
20513
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] dest_fqdns: Fully Qualified Domain Name (FQDN) which should be matched against
|
20514
|
+
traffic destination. Maximum number of destination fqdn allowed is 100.
|
20515
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] dest_ip_ranges: Destination IP address range in CIDR format. Required for
|
20516
|
+
EGRESS rules.
|
20517
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] dest_region_codes: Region codes whose IP addresses will be used to match for destination
|
20518
|
+
of traffic. Should be specified as 2 letter country code defined as per
|
20519
|
+
ISO 3166 alpha-2 country codes. ex."US"
|
20520
|
+
Maximum number of destination region codes allowed is 5000.
|
20521
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] dest_threat_intelligences: Names of Network Threat Intelligence lists.
|
20522
|
+
The IPs in these lists will be matched against traffic destination.
|
20523
|
+
:param pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesPredefinedRuleMatchLayer4ConfigArgs']]] layer4_configs: Pairs of IP protocols and ports that the rule should match.
|
20524
|
+
Structure is documented below.
|
20525
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] src_address_groups: Address groups which should be matched against the traffic source.
|
20526
|
+
Maximum number of source address groups is 10.
|
20527
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] src_fqdns: Fully Qualified Domain Name (FQDN) which should be matched against
|
20528
|
+
traffic source. Maximum number of source fqdn allowed is 100.
|
20529
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] src_ip_ranges: Source IP address range in CIDR format. Required for
|
20530
|
+
INGRESS rules.
|
20531
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] src_region_codes: Region codes whose IP addresses will be used to match for source
|
20532
|
+
of traffic. Should be specified as 2 letter country code defined as per
|
20533
|
+
ISO 3166 alpha-2 country codes. ex."US"
|
20534
|
+
Maximum number of source region codes allowed is 5000.
|
20535
|
+
:param pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesPredefinedRuleMatchSrcSecureTagArgs']]] src_secure_tags: List of secure tag values, which should be matched at the source
|
20536
|
+
of the traffic.
|
20537
|
+
For INGRESS rule, if all the <code>srcSecureTag</code> are INEFFECTIVE,
|
20538
|
+
and there is no <code>srcIpRange</code>, this rule will be ignored.
|
20539
|
+
Maximum number of source tag values allowed is 256.
|
20540
|
+
Structure is documented below.
|
20541
|
+
|
20542
|
+
|
20543
|
+
<a name="nested_layer4_config"></a>The `layer4_config` block supports:
|
20544
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] src_threat_intelligences: Names of Network Threat Intelligence lists.
|
20545
|
+
The IPs in these lists will be matched against traffic source.
|
20546
|
+
"""
|
20547
|
+
if dest_address_groups is not None:
|
20548
|
+
pulumi.set(__self__, "dest_address_groups", dest_address_groups)
|
20549
|
+
if dest_fqdns is not None:
|
20550
|
+
pulumi.set(__self__, "dest_fqdns", dest_fqdns)
|
20551
|
+
if dest_ip_ranges is not None:
|
20552
|
+
pulumi.set(__self__, "dest_ip_ranges", dest_ip_ranges)
|
20553
|
+
if dest_region_codes is not None:
|
20554
|
+
pulumi.set(__self__, "dest_region_codes", dest_region_codes)
|
20555
|
+
if dest_threat_intelligences is not None:
|
20556
|
+
pulumi.set(__self__, "dest_threat_intelligences", dest_threat_intelligences)
|
20557
|
+
if layer4_configs is not None:
|
20558
|
+
pulumi.set(__self__, "layer4_configs", layer4_configs)
|
20559
|
+
if src_address_groups is not None:
|
20560
|
+
pulumi.set(__self__, "src_address_groups", src_address_groups)
|
20561
|
+
if src_fqdns is not None:
|
20562
|
+
pulumi.set(__self__, "src_fqdns", src_fqdns)
|
20563
|
+
if src_ip_ranges is not None:
|
20564
|
+
pulumi.set(__self__, "src_ip_ranges", src_ip_ranges)
|
20565
|
+
if src_region_codes is not None:
|
20566
|
+
pulumi.set(__self__, "src_region_codes", src_region_codes)
|
20567
|
+
if src_secure_tags is not None:
|
20568
|
+
pulumi.set(__self__, "src_secure_tags", src_secure_tags)
|
20569
|
+
if src_threat_intelligences is not None:
|
20570
|
+
pulumi.set(__self__, "src_threat_intelligences", src_threat_intelligences)
|
20571
|
+
|
20572
|
+
@property
|
20573
|
+
@pulumi.getter(name="destAddressGroups")
|
20574
|
+
def dest_address_groups(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
20575
|
+
"""
|
20576
|
+
Address groups which should be matched against the traffic destination.
|
20577
|
+
Maximum number of destination address groups is 10.
|
20578
|
+
"""
|
20579
|
+
return pulumi.get(self, "dest_address_groups")
|
20580
|
+
|
20581
|
+
@dest_address_groups.setter
|
20582
|
+
def dest_address_groups(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
20583
|
+
pulumi.set(self, "dest_address_groups", value)
|
20584
|
+
|
20585
|
+
@property
|
20586
|
+
@pulumi.getter(name="destFqdns")
|
20587
|
+
def dest_fqdns(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
20588
|
+
"""
|
20589
|
+
Fully Qualified Domain Name (FQDN) which should be matched against
|
20590
|
+
traffic destination. Maximum number of destination fqdn allowed is 100.
|
20591
|
+
"""
|
20592
|
+
return pulumi.get(self, "dest_fqdns")
|
20593
|
+
|
20594
|
+
@dest_fqdns.setter
|
20595
|
+
def dest_fqdns(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
20596
|
+
pulumi.set(self, "dest_fqdns", value)
|
20597
|
+
|
20598
|
+
@property
|
20599
|
+
@pulumi.getter(name="destIpRanges")
|
20600
|
+
def dest_ip_ranges(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
20601
|
+
"""
|
20602
|
+
Destination IP address range in CIDR format. Required for
|
20603
|
+
EGRESS rules.
|
20604
|
+
"""
|
20605
|
+
return pulumi.get(self, "dest_ip_ranges")
|
20606
|
+
|
20607
|
+
@dest_ip_ranges.setter
|
20608
|
+
def dest_ip_ranges(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
20609
|
+
pulumi.set(self, "dest_ip_ranges", value)
|
20610
|
+
|
20611
|
+
@property
|
20612
|
+
@pulumi.getter(name="destRegionCodes")
|
20613
|
+
def dest_region_codes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
20614
|
+
"""
|
20615
|
+
Region codes whose IP addresses will be used to match for destination
|
20616
|
+
of traffic. Should be specified as 2 letter country code defined as per
|
20617
|
+
ISO 3166 alpha-2 country codes. ex."US"
|
20618
|
+
Maximum number of destination region codes allowed is 5000.
|
20619
|
+
"""
|
20620
|
+
return pulumi.get(self, "dest_region_codes")
|
20621
|
+
|
20622
|
+
@dest_region_codes.setter
|
20623
|
+
def dest_region_codes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
20624
|
+
pulumi.set(self, "dest_region_codes", value)
|
20625
|
+
|
20626
|
+
@property
|
20627
|
+
@pulumi.getter(name="destThreatIntelligences")
|
20628
|
+
def dest_threat_intelligences(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
20629
|
+
"""
|
20630
|
+
Names of Network Threat Intelligence lists.
|
20631
|
+
The IPs in these lists will be matched against traffic destination.
|
20632
|
+
"""
|
20633
|
+
return pulumi.get(self, "dest_threat_intelligences")
|
20634
|
+
|
20635
|
+
@dest_threat_intelligences.setter
|
20636
|
+
def dest_threat_intelligences(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
20637
|
+
pulumi.set(self, "dest_threat_intelligences", value)
|
20638
|
+
|
20639
|
+
@property
|
20640
|
+
@pulumi.getter(name="layer4Configs")
|
20641
|
+
def layer4_configs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesPredefinedRuleMatchLayer4ConfigArgs']]]]:
|
20642
|
+
"""
|
20643
|
+
Pairs of IP protocols and ports that the rule should match.
|
20644
|
+
Structure is documented below.
|
20645
|
+
"""
|
20646
|
+
return pulumi.get(self, "layer4_configs")
|
20647
|
+
|
20648
|
+
@layer4_configs.setter
|
20649
|
+
def layer4_configs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesPredefinedRuleMatchLayer4ConfigArgs']]]]):
|
20650
|
+
pulumi.set(self, "layer4_configs", value)
|
20651
|
+
|
20652
|
+
@property
|
20653
|
+
@pulumi.getter(name="srcAddressGroups")
|
20654
|
+
def src_address_groups(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
20655
|
+
"""
|
20656
|
+
Address groups which should be matched against the traffic source.
|
20657
|
+
Maximum number of source address groups is 10.
|
20658
|
+
"""
|
20659
|
+
return pulumi.get(self, "src_address_groups")
|
20660
|
+
|
20661
|
+
@src_address_groups.setter
|
20662
|
+
def src_address_groups(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
20663
|
+
pulumi.set(self, "src_address_groups", value)
|
20664
|
+
|
20665
|
+
@property
|
20666
|
+
@pulumi.getter(name="srcFqdns")
|
20667
|
+
def src_fqdns(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
20668
|
+
"""
|
20669
|
+
Fully Qualified Domain Name (FQDN) which should be matched against
|
20670
|
+
traffic source. Maximum number of source fqdn allowed is 100.
|
20671
|
+
"""
|
20672
|
+
return pulumi.get(self, "src_fqdns")
|
20673
|
+
|
20674
|
+
@src_fqdns.setter
|
20675
|
+
def src_fqdns(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
20676
|
+
pulumi.set(self, "src_fqdns", value)
|
20677
|
+
|
20678
|
+
@property
|
20679
|
+
@pulumi.getter(name="srcIpRanges")
|
20680
|
+
def src_ip_ranges(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
20681
|
+
"""
|
20682
|
+
Source IP address range in CIDR format. Required for
|
20683
|
+
INGRESS rules.
|
20684
|
+
"""
|
20685
|
+
return pulumi.get(self, "src_ip_ranges")
|
20686
|
+
|
20687
|
+
@src_ip_ranges.setter
|
20688
|
+
def src_ip_ranges(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
20689
|
+
pulumi.set(self, "src_ip_ranges", value)
|
20690
|
+
|
20691
|
+
@property
|
20692
|
+
@pulumi.getter(name="srcRegionCodes")
|
20693
|
+
def src_region_codes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
20694
|
+
"""
|
20695
|
+
Region codes whose IP addresses will be used to match for source
|
20696
|
+
of traffic. Should be specified as 2 letter country code defined as per
|
20697
|
+
ISO 3166 alpha-2 country codes. ex."US"
|
20698
|
+
Maximum number of source region codes allowed is 5000.
|
20699
|
+
"""
|
20700
|
+
return pulumi.get(self, "src_region_codes")
|
20701
|
+
|
20702
|
+
@src_region_codes.setter
|
20703
|
+
def src_region_codes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
20704
|
+
pulumi.set(self, "src_region_codes", value)
|
20705
|
+
|
20706
|
+
@property
|
20707
|
+
@pulumi.getter(name="srcSecureTags")
|
20708
|
+
def src_secure_tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesPredefinedRuleMatchSrcSecureTagArgs']]]]:
|
20709
|
+
"""
|
20710
|
+
List of secure tag values, which should be matched at the source
|
20711
|
+
of the traffic.
|
20712
|
+
For INGRESS rule, if all the <code>srcSecureTag</code> are INEFFECTIVE,
|
20713
|
+
and there is no <code>srcIpRange</code>, this rule will be ignored.
|
20714
|
+
Maximum number of source tag values allowed is 256.
|
20715
|
+
Structure is documented below.
|
20716
|
+
|
20717
|
+
|
20718
|
+
<a name="nested_layer4_config"></a>The `layer4_config` block supports:
|
20719
|
+
"""
|
20720
|
+
return pulumi.get(self, "src_secure_tags")
|
20721
|
+
|
20722
|
+
@src_secure_tags.setter
|
20723
|
+
def src_secure_tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesPredefinedRuleMatchSrcSecureTagArgs']]]]):
|
20724
|
+
pulumi.set(self, "src_secure_tags", value)
|
20725
|
+
|
20726
|
+
@property
|
20727
|
+
@pulumi.getter(name="srcThreatIntelligences")
|
20728
|
+
def src_threat_intelligences(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
20729
|
+
"""
|
20730
|
+
Names of Network Threat Intelligence lists.
|
20731
|
+
The IPs in these lists will be matched against traffic source.
|
20732
|
+
"""
|
20733
|
+
return pulumi.get(self, "src_threat_intelligences")
|
20734
|
+
|
20735
|
+
@src_threat_intelligences.setter
|
20736
|
+
def src_threat_intelligences(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
20737
|
+
pulumi.set(self, "src_threat_intelligences", value)
|
20738
|
+
|
20739
|
+
|
20740
|
+
if not MYPY:
|
20741
|
+
class NetworkFirewallPolicyWithRulesPredefinedRuleMatchLayer4ConfigArgsDict(TypedDict):
|
20742
|
+
ip_protocol: NotRequired[pulumi.Input[str]]
|
20743
|
+
"""
|
20744
|
+
(Output)
|
20745
|
+
The IP protocol to which this rule applies. The protocol
|
20746
|
+
type is required when creating a firewall rule.
|
20747
|
+
This value can either be one of the following well
|
20748
|
+
known protocol strings (tcp, udp, icmp, esp, ah, ipip, sctp),
|
20749
|
+
or the IP protocol number.
|
20750
|
+
"""
|
20751
|
+
ports: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
20752
|
+
"""
|
20753
|
+
(Output)
|
20754
|
+
An optional list of ports to which this rule applies. This field
|
20755
|
+
is only applicable for UDP or TCP protocol. Each entry must be
|
20756
|
+
either an integer or a range. If not specified, this rule
|
20757
|
+
applies to connections through any port.
|
20758
|
+
Example inputs include: ["22"], ["80","443"], and
|
20759
|
+
["12345-12349"].
|
20760
|
+
"""
|
20761
|
+
elif False:
|
20762
|
+
NetworkFirewallPolicyWithRulesPredefinedRuleMatchLayer4ConfigArgsDict: TypeAlias = Mapping[str, Any]
|
20763
|
+
|
20764
|
+
@pulumi.input_type
|
20765
|
+
class NetworkFirewallPolicyWithRulesPredefinedRuleMatchLayer4ConfigArgs:
|
20766
|
+
def __init__(__self__, *,
|
20767
|
+
ip_protocol: Optional[pulumi.Input[str]] = None,
|
20768
|
+
ports: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
|
20769
|
+
"""
|
20770
|
+
:param pulumi.Input[str] ip_protocol: (Output)
|
20771
|
+
The IP protocol to which this rule applies. The protocol
|
20772
|
+
type is required when creating a firewall rule.
|
20773
|
+
This value can either be one of the following well
|
20774
|
+
known protocol strings (tcp, udp, icmp, esp, ah, ipip, sctp),
|
20775
|
+
or the IP protocol number.
|
20776
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] ports: (Output)
|
20777
|
+
An optional list of ports to which this rule applies. This field
|
20778
|
+
is only applicable for UDP or TCP protocol. Each entry must be
|
20779
|
+
either an integer or a range. If not specified, this rule
|
20780
|
+
applies to connections through any port.
|
20781
|
+
Example inputs include: ["22"], ["80","443"], and
|
20782
|
+
["12345-12349"].
|
20783
|
+
"""
|
20784
|
+
if ip_protocol is not None:
|
20785
|
+
pulumi.set(__self__, "ip_protocol", ip_protocol)
|
20786
|
+
if ports is not None:
|
20787
|
+
pulumi.set(__self__, "ports", ports)
|
20788
|
+
|
20789
|
+
@property
|
20790
|
+
@pulumi.getter(name="ipProtocol")
|
20791
|
+
def ip_protocol(self) -> Optional[pulumi.Input[str]]:
|
20792
|
+
"""
|
20793
|
+
(Output)
|
20794
|
+
The IP protocol to which this rule applies. The protocol
|
20795
|
+
type is required when creating a firewall rule.
|
20796
|
+
This value can either be one of the following well
|
20797
|
+
known protocol strings (tcp, udp, icmp, esp, ah, ipip, sctp),
|
20798
|
+
or the IP protocol number.
|
20799
|
+
"""
|
20800
|
+
return pulumi.get(self, "ip_protocol")
|
20801
|
+
|
20802
|
+
@ip_protocol.setter
|
20803
|
+
def ip_protocol(self, value: Optional[pulumi.Input[str]]):
|
20804
|
+
pulumi.set(self, "ip_protocol", value)
|
20805
|
+
|
20806
|
+
@property
|
20807
|
+
@pulumi.getter
|
20808
|
+
def ports(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
20809
|
+
"""
|
20810
|
+
(Output)
|
20811
|
+
An optional list of ports to which this rule applies. This field
|
20812
|
+
is only applicable for UDP or TCP protocol. Each entry must be
|
20813
|
+
either an integer or a range. If not specified, this rule
|
20814
|
+
applies to connections through any port.
|
20815
|
+
Example inputs include: ["22"], ["80","443"], and
|
20816
|
+
["12345-12349"].
|
20817
|
+
"""
|
20818
|
+
return pulumi.get(self, "ports")
|
20819
|
+
|
20820
|
+
@ports.setter
|
20821
|
+
def ports(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
20822
|
+
pulumi.set(self, "ports", value)
|
20823
|
+
|
20824
|
+
|
20825
|
+
if not MYPY:
|
20826
|
+
class NetworkFirewallPolicyWithRulesPredefinedRuleMatchSrcSecureTagArgsDict(TypedDict):
|
20827
|
+
name: NotRequired[pulumi.Input[str]]
|
20828
|
+
"""
|
20829
|
+
Name of the secure tag, created with TagManager's TagValue API.
|
20830
|
+
@pattern tagValues/[0-9]+
|
20831
|
+
"""
|
20832
|
+
state: NotRequired[pulumi.Input[str]]
|
20833
|
+
"""
|
20834
|
+
(Output)
|
20835
|
+
[Output Only] State of the secure tag, either `EFFECTIVE` or
|
20836
|
+
`INEFFECTIVE`. A secure tag is `INEFFECTIVE` when it is deleted
|
20837
|
+
or its network is deleted.
|
20838
|
+
"""
|
20839
|
+
elif False:
|
20840
|
+
NetworkFirewallPolicyWithRulesPredefinedRuleMatchSrcSecureTagArgsDict: TypeAlias = Mapping[str, Any]
|
20841
|
+
|
20842
|
+
@pulumi.input_type
|
20843
|
+
class NetworkFirewallPolicyWithRulesPredefinedRuleMatchSrcSecureTagArgs:
|
20844
|
+
def __init__(__self__, *,
|
20845
|
+
name: Optional[pulumi.Input[str]] = None,
|
20846
|
+
state: Optional[pulumi.Input[str]] = None):
|
20847
|
+
"""
|
20848
|
+
:param pulumi.Input[str] name: Name of the secure tag, created with TagManager's TagValue API.
|
20849
|
+
@pattern tagValues/[0-9]+
|
20850
|
+
:param pulumi.Input[str] state: (Output)
|
20851
|
+
[Output Only] State of the secure tag, either `EFFECTIVE` or
|
20852
|
+
`INEFFECTIVE`. A secure tag is `INEFFECTIVE` when it is deleted
|
20853
|
+
or its network is deleted.
|
20854
|
+
"""
|
20855
|
+
if name is not None:
|
20856
|
+
pulumi.set(__self__, "name", name)
|
20857
|
+
if state is not None:
|
20858
|
+
pulumi.set(__self__, "state", state)
|
20859
|
+
|
20860
|
+
@property
|
20861
|
+
@pulumi.getter
|
20862
|
+
def name(self) -> Optional[pulumi.Input[str]]:
|
20863
|
+
"""
|
20864
|
+
Name of the secure tag, created with TagManager's TagValue API.
|
20865
|
+
@pattern tagValues/[0-9]+
|
20866
|
+
"""
|
20867
|
+
return pulumi.get(self, "name")
|
20868
|
+
|
20869
|
+
@name.setter
|
20870
|
+
def name(self, value: Optional[pulumi.Input[str]]):
|
20871
|
+
pulumi.set(self, "name", value)
|
20872
|
+
|
20873
|
+
@property
|
20874
|
+
@pulumi.getter
|
20875
|
+
def state(self) -> Optional[pulumi.Input[str]]:
|
19267
20876
|
"""
|
19268
20877
|
(Output)
|
19269
|
-
|
19270
|
-
|
20878
|
+
[Output Only] State of the secure tag, either `EFFECTIVE` or
|
20879
|
+
`INEFFECTIVE`. A secure tag is `INEFFECTIVE` when it is deleted
|
20880
|
+
or its network is deleted.
|
19271
20881
|
"""
|
19272
|
-
return pulumi.get(self, "
|
20882
|
+
return pulumi.get(self, "state")
|
19273
20883
|
|
19274
|
-
@
|
19275
|
-
def
|
19276
|
-
pulumi.set(self, "
|
20884
|
+
@state.setter
|
20885
|
+
def state(self, value: Optional[pulumi.Input[str]]):
|
20886
|
+
pulumi.set(self, "state", value)
|
19277
20887
|
|
19278
20888
|
|
19279
20889
|
if not MYPY:
|
19280
|
-
class
|
19281
|
-
|
20890
|
+
class NetworkFirewallPolicyWithRulesPredefinedRuleTargetSecureTagArgsDict(TypedDict):
|
20891
|
+
name: NotRequired[pulumi.Input[str]]
|
19282
20892
|
"""
|
19283
|
-
|
19284
|
-
|
20893
|
+
Name of the secure tag, created with TagManager's TagValue API.
|
20894
|
+
@pattern tagValues/[0-9]+
|
20895
|
+
"""
|
20896
|
+
state: NotRequired[pulumi.Input[str]]
|
20897
|
+
"""
|
20898
|
+
(Output)
|
20899
|
+
[Output Only] State of the secure tag, either `EFFECTIVE` or
|
20900
|
+
`INEFFECTIVE`. A secure tag is `INEFFECTIVE` when it is deleted
|
20901
|
+
or its network is deleted.
|
20902
|
+
|
20903
|
+
- - -
|
19285
20904
|
"""
|
19286
20905
|
elif False:
|
19287
|
-
|
20906
|
+
NetworkFirewallPolicyWithRulesPredefinedRuleTargetSecureTagArgsDict: TypeAlias = Mapping[str, Any]
|
19288
20907
|
|
19289
20908
|
@pulumi.input_type
|
19290
|
-
class
|
20909
|
+
class NetworkFirewallPolicyWithRulesPredefinedRuleTargetSecureTagArgs:
|
19291
20910
|
def __init__(__self__, *,
|
19292
|
-
|
20911
|
+
name: Optional[pulumi.Input[str]] = None,
|
20912
|
+
state: Optional[pulumi.Input[str]] = None):
|
19293
20913
|
"""
|
19294
|
-
:param pulumi.Input[
|
19295
|
-
|
20914
|
+
:param pulumi.Input[str] name: Name of the secure tag, created with TagManager's TagValue API.
|
20915
|
+
@pattern tagValues/[0-9]+
|
20916
|
+
:param pulumi.Input[str] state: (Output)
|
20917
|
+
[Output Only] State of the secure tag, either `EFFECTIVE` or
|
20918
|
+
`INEFFECTIVE`. A secure tag is `INEFFECTIVE` when it is deleted
|
20919
|
+
or its network is deleted.
|
20920
|
+
|
20921
|
+
- - -
|
19296
20922
|
"""
|
19297
|
-
|
20923
|
+
if name is not None:
|
20924
|
+
pulumi.set(__self__, "name", name)
|
20925
|
+
if state is not None:
|
20926
|
+
pulumi.set(__self__, "state", state)
|
19298
20927
|
|
19299
20928
|
@property
|
19300
20929
|
@pulumi.getter
|
19301
|
-
def
|
19302
|
-
"""
|
19303
|
-
Domains for which a managed SSL certificate will be valid. Currently,
|
19304
|
-
there can be up to 100 domains in this list.
|
19305
|
-
"""
|
19306
|
-
return pulumi.get(self, "domains")
|
19307
|
-
|
19308
|
-
@domains.setter
|
19309
|
-
def domains(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]):
|
19310
|
-
pulumi.set(self, "domains", value)
|
19311
|
-
|
19312
|
-
|
19313
|
-
if not MYPY:
|
19314
|
-
class MangedSslCertificateManagedArgsDict(TypedDict):
|
19315
|
-
domains: pulumi.Input[Sequence[pulumi.Input[str]]]
|
20930
|
+
def name(self) -> Optional[pulumi.Input[str]]:
|
19316
20931
|
"""
|
19317
|
-
|
19318
|
-
|
20932
|
+
Name of the secure tag, created with TagManager's TagValue API.
|
20933
|
+
@pattern tagValues/[0-9]+
|
19319
20934
|
"""
|
19320
|
-
|
19321
|
-
MangedSslCertificateManagedArgsDict: TypeAlias = Mapping[str, Any]
|
20935
|
+
return pulumi.get(self, "name")
|
19322
20936
|
|
19323
|
-
@
|
19324
|
-
|
19325
|
-
|
19326
|
-
domains: pulumi.Input[Sequence[pulumi.Input[str]]]):
|
19327
|
-
"""
|
19328
|
-
:param pulumi.Input[Sequence[pulumi.Input[str]]] domains: Domains for which a managed SSL certificate will be valid. Currently,
|
19329
|
-
there can be up to 100 domains in this list.
|
19330
|
-
"""
|
19331
|
-
pulumi.set(__self__, "domains", domains)
|
20937
|
+
@name.setter
|
20938
|
+
def name(self, value: Optional[pulumi.Input[str]]):
|
20939
|
+
pulumi.set(self, "name", value)
|
19332
20940
|
|
19333
20941
|
@property
|
19334
20942
|
@pulumi.getter
|
19335
|
-
def
|
20943
|
+
def state(self) -> Optional[pulumi.Input[str]]:
|
19336
20944
|
"""
|
19337
|
-
|
19338
|
-
|
20945
|
+
(Output)
|
20946
|
+
[Output Only] State of the secure tag, either `EFFECTIVE` or
|
20947
|
+
`INEFFECTIVE`. A secure tag is `INEFFECTIVE` when it is deleted
|
20948
|
+
or its network is deleted.
|
20949
|
+
|
20950
|
+
- - -
|
19339
20951
|
"""
|
19340
|
-
return pulumi.get(self, "
|
20952
|
+
return pulumi.get(self, "state")
|
19341
20953
|
|
19342
|
-
@
|
19343
|
-
def
|
19344
|
-
pulumi.set(self, "
|
20954
|
+
@state.setter
|
20955
|
+
def state(self, value: Optional[pulumi.Input[str]]):
|
20956
|
+
pulumi.set(self, "state", value)
|
19345
20957
|
|
19346
20958
|
|
19347
20959
|
if not MYPY:
|
19348
|
-
class
|
19349
|
-
|
20960
|
+
class NetworkFirewallPolicyWithRulesRuleArgsDict(TypedDict):
|
20961
|
+
action: pulumi.Input[str]
|
19350
20962
|
"""
|
19351
|
-
|
19352
|
-
|
20963
|
+
The Action to perform when the client connection triggers the rule. Can currently be either
|
20964
|
+
"allow", "deny", "apply_security_profile_group" or "goto_next".
|
19353
20965
|
"""
|
19354
|
-
|
20966
|
+
match: pulumi.Input['NetworkFirewallPolicyWithRulesRuleMatchArgsDict']
|
19355
20967
|
"""
|
19356
|
-
|
19357
|
-
|
20968
|
+
A match condition that incoming traffic is evaluated against. If it evaluates to true, the corresponding 'action' is enforced.
|
20969
|
+
Structure is documented below.
|
19358
20970
|
"""
|
19359
|
-
|
20971
|
+
priority: pulumi.Input[int]
|
19360
20972
|
"""
|
19361
|
-
|
19362
|
-
|
20973
|
+
An integer indicating the priority of a rule in the list. The priority must be a value
|
20974
|
+
between 0 and 2147483647. Rules are evaluated from highest to lowest priority where 0 is the
|
20975
|
+
highest priority and 2147483647 is the lowest priority.
|
19363
20976
|
"""
|
19364
|
-
|
20977
|
+
description: NotRequired[pulumi.Input[str]]
|
19365
20978
|
"""
|
19366
|
-
|
19367
|
-
The status of a connected endpoint to this network attachment.
|
20979
|
+
A description of the rule.
|
19368
20980
|
"""
|
19369
|
-
|
20981
|
+
direction: NotRequired[pulumi.Input[str]]
|
19370
20982
|
"""
|
19371
|
-
|
19372
|
-
|
20983
|
+
The direction in which this rule applies. If unspecified an INGRESS rule is created.
|
20984
|
+
Possible values are: `INGRESS`, `EGRESS`.
|
20985
|
+
"""
|
20986
|
+
disabled: NotRequired[pulumi.Input[bool]]
|
20987
|
+
"""
|
20988
|
+
Denotes whether the firewall policy rule is disabled. When set to true,
|
20989
|
+
the firewall policy rule is not enforced and traffic behaves as if it did
|
20990
|
+
not exist. If this is unspecified, the firewall policy rule will be
|
20991
|
+
enabled.
|
20992
|
+
"""
|
20993
|
+
enable_logging: NotRequired[pulumi.Input[bool]]
|
20994
|
+
"""
|
20995
|
+
Denotes whether to enable logging for a particular rule.
|
20996
|
+
If logging is enabled, logs will be exported to the
|
20997
|
+
configured export destination in Stackdriver.
|
20998
|
+
"""
|
20999
|
+
rule_name: NotRequired[pulumi.Input[str]]
|
21000
|
+
"""
|
21001
|
+
An optional name for the rule. This field is not a unique identifier
|
21002
|
+
and can be updated.
|
21003
|
+
"""
|
21004
|
+
security_profile_group: NotRequired[pulumi.Input[str]]
|
21005
|
+
"""
|
21006
|
+
A fully-qualified URL of a SecurityProfile resource instance.
|
21007
|
+
Example:
|
21008
|
+
https://networksecurity.googleapis.com/v1/projects/{project}/locations/{location}/securityProfileGroups/my-security-profile-group
|
21009
|
+
Must be specified if action is 'apply_security_profile_group'.
|
21010
|
+
"""
|
21011
|
+
target_secure_tags: NotRequired[pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesRuleTargetSecureTagArgsDict']]]]
|
21012
|
+
"""
|
21013
|
+
A list of secure tags that controls which instances the firewall rule
|
21014
|
+
applies to. If <code>targetSecureTag</code> are specified, then the
|
21015
|
+
firewall rule applies only to instances in the VPC network that have one
|
21016
|
+
of those EFFECTIVE secure tags, if all the target_secure_tag are in
|
21017
|
+
INEFFECTIVE state, then this rule will be ignored.
|
21018
|
+
<code>targetSecureTag</code> may not be set at the same time as
|
21019
|
+
<code>targetServiceAccounts</code>.
|
21020
|
+
If neither <code>targetServiceAccounts</code> nor
|
21021
|
+
<code>targetSecureTag</code> are specified, the firewall rule applies
|
21022
|
+
to all instances on the specified network.
|
21023
|
+
Maximum number of target label tags allowed is 256.
|
21024
|
+
Structure is documented below.
|
21025
|
+
"""
|
21026
|
+
target_service_accounts: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
21027
|
+
"""
|
21028
|
+
A list of service accounts indicating the sets of
|
21029
|
+
instances that are applied with this rule.
|
21030
|
+
"""
|
21031
|
+
tls_inspect: NotRequired[pulumi.Input[bool]]
|
21032
|
+
"""
|
21033
|
+
Boolean flag indicating if the traffic should be TLS decrypted.
|
21034
|
+
It can be set only if action = 'apply_security_profile_group' and cannot be set for other actions.
|
19373
21035
|
"""
|
19374
21036
|
elif False:
|
19375
|
-
|
21037
|
+
NetworkFirewallPolicyWithRulesRuleArgsDict: TypeAlias = Mapping[str, Any]
|
19376
21038
|
|
19377
21039
|
@pulumi.input_type
|
19378
|
-
class
|
21040
|
+
class NetworkFirewallPolicyWithRulesRuleArgs:
|
19379
21041
|
def __init__(__self__, *,
|
19380
|
-
|
19381
|
-
|
19382
|
-
|
19383
|
-
|
19384
|
-
|
19385
|
-
|
19386
|
-
|
19387
|
-
|
19388
|
-
|
19389
|
-
|
19390
|
-
|
19391
|
-
|
19392
|
-
|
19393
|
-
|
19394
|
-
|
19395
|
-
|
21042
|
+
action: pulumi.Input[str],
|
21043
|
+
match: pulumi.Input['NetworkFirewallPolicyWithRulesRuleMatchArgs'],
|
21044
|
+
priority: pulumi.Input[int],
|
21045
|
+
description: Optional[pulumi.Input[str]] = None,
|
21046
|
+
direction: Optional[pulumi.Input[str]] = None,
|
21047
|
+
disabled: Optional[pulumi.Input[bool]] = None,
|
21048
|
+
enable_logging: Optional[pulumi.Input[bool]] = None,
|
21049
|
+
rule_name: Optional[pulumi.Input[str]] = None,
|
21050
|
+
security_profile_group: Optional[pulumi.Input[str]] = None,
|
21051
|
+
target_secure_tags: Optional[pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesRuleTargetSecureTagArgs']]]] = None,
|
21052
|
+
target_service_accounts: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
21053
|
+
tls_inspect: Optional[pulumi.Input[bool]] = None):
|
21054
|
+
"""
|
21055
|
+
:param pulumi.Input[str] action: The Action to perform when the client connection triggers the rule. Can currently be either
|
21056
|
+
"allow", "deny", "apply_security_profile_group" or "goto_next".
|
21057
|
+
:param pulumi.Input['NetworkFirewallPolicyWithRulesRuleMatchArgs'] match: A match condition that incoming traffic is evaluated against. If it evaluates to true, the corresponding 'action' is enforced.
|
21058
|
+
Structure is documented below.
|
21059
|
+
:param pulumi.Input[int] priority: An integer indicating the priority of a rule in the list. The priority must be a value
|
21060
|
+
between 0 and 2147483647. Rules are evaluated from highest to lowest priority where 0 is the
|
21061
|
+
highest priority and 2147483647 is the lowest priority.
|
21062
|
+
:param pulumi.Input[str] description: A description of the rule.
|
21063
|
+
:param pulumi.Input[str] direction: The direction in which this rule applies. If unspecified an INGRESS rule is created.
|
21064
|
+
Possible values are: `INGRESS`, `EGRESS`.
|
21065
|
+
:param pulumi.Input[bool] disabled: Denotes whether the firewall policy rule is disabled. When set to true,
|
21066
|
+
the firewall policy rule is not enforced and traffic behaves as if it did
|
21067
|
+
not exist. If this is unspecified, the firewall policy rule will be
|
21068
|
+
enabled.
|
21069
|
+
:param pulumi.Input[bool] enable_logging: Denotes whether to enable logging for a particular rule.
|
21070
|
+
If logging is enabled, logs will be exported to the
|
21071
|
+
configured export destination in Stackdriver.
|
21072
|
+
:param pulumi.Input[str] rule_name: An optional name for the rule. This field is not a unique identifier
|
21073
|
+
and can be updated.
|
21074
|
+
:param pulumi.Input[str] security_profile_group: A fully-qualified URL of a SecurityProfile resource instance.
|
21075
|
+
Example:
|
21076
|
+
https://networksecurity.googleapis.com/v1/projects/{project}/locations/{location}/securityProfileGroups/my-security-profile-group
|
21077
|
+
Must be specified if action is 'apply_security_profile_group'.
|
21078
|
+
:param pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesRuleTargetSecureTagArgs']]] target_secure_tags: A list of secure tags that controls which instances the firewall rule
|
21079
|
+
applies to. If <code>targetSecureTag</code> are specified, then the
|
21080
|
+
firewall rule applies only to instances in the VPC network that have one
|
21081
|
+
of those EFFECTIVE secure tags, if all the target_secure_tag are in
|
21082
|
+
INEFFECTIVE state, then this rule will be ignored.
|
21083
|
+
<code>targetSecureTag</code> may not be set at the same time as
|
21084
|
+
<code>targetServiceAccounts</code>.
|
21085
|
+
If neither <code>targetServiceAccounts</code> nor
|
21086
|
+
<code>targetSecureTag</code> are specified, the firewall rule applies
|
21087
|
+
to all instances on the specified network.
|
21088
|
+
Maximum number of target label tags allowed is 256.
|
21089
|
+
Structure is documented below.
|
21090
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] target_service_accounts: A list of service accounts indicating the sets of
|
21091
|
+
instances that are applied with this rule.
|
21092
|
+
:param pulumi.Input[bool] tls_inspect: Boolean flag indicating if the traffic should be TLS decrypted.
|
21093
|
+
It can be set only if action = 'apply_security_profile_group' and cannot be set for other actions.
|
19396
21094
|
"""
|
19397
|
-
|
19398
|
-
|
19399
|
-
|
19400
|
-
|
19401
|
-
|
19402
|
-
|
19403
|
-
|
19404
|
-
|
19405
|
-
|
19406
|
-
|
21095
|
+
pulumi.set(__self__, "action", action)
|
21096
|
+
pulumi.set(__self__, "match", match)
|
21097
|
+
pulumi.set(__self__, "priority", priority)
|
21098
|
+
if description is not None:
|
21099
|
+
pulumi.set(__self__, "description", description)
|
21100
|
+
if direction is not None:
|
21101
|
+
pulumi.set(__self__, "direction", direction)
|
21102
|
+
if disabled is not None:
|
21103
|
+
pulumi.set(__self__, "disabled", disabled)
|
21104
|
+
if enable_logging is not None:
|
21105
|
+
pulumi.set(__self__, "enable_logging", enable_logging)
|
21106
|
+
if rule_name is not None:
|
21107
|
+
pulumi.set(__self__, "rule_name", rule_name)
|
21108
|
+
if security_profile_group is not None:
|
21109
|
+
pulumi.set(__self__, "security_profile_group", security_profile_group)
|
21110
|
+
if target_secure_tags is not None:
|
21111
|
+
pulumi.set(__self__, "target_secure_tags", target_secure_tags)
|
21112
|
+
if target_service_accounts is not None:
|
21113
|
+
pulumi.set(__self__, "target_service_accounts", target_service_accounts)
|
21114
|
+
if tls_inspect is not None:
|
21115
|
+
pulumi.set(__self__, "tls_inspect", tls_inspect)
|
19407
21116
|
|
19408
21117
|
@property
|
19409
|
-
@pulumi.getter
|
19410
|
-
def
|
21118
|
+
@pulumi.getter
|
21119
|
+
def action(self) -> pulumi.Input[str]:
|
19411
21120
|
"""
|
19412
|
-
|
19413
|
-
|
21121
|
+
The Action to perform when the client connection triggers the rule. Can currently be either
|
21122
|
+
"allow", "deny", "apply_security_profile_group" or "goto_next".
|
19414
21123
|
"""
|
19415
|
-
return pulumi.get(self, "
|
21124
|
+
return pulumi.get(self, "action")
|
19416
21125
|
|
19417
|
-
@
|
19418
|
-
def
|
19419
|
-
pulumi.set(self, "
|
21126
|
+
@action.setter
|
21127
|
+
def action(self, value: pulumi.Input[str]):
|
21128
|
+
pulumi.set(self, "action", value)
|
19420
21129
|
|
19421
21130
|
@property
|
19422
|
-
@pulumi.getter
|
19423
|
-
def
|
21131
|
+
@pulumi.getter
|
21132
|
+
def match(self) -> pulumi.Input['NetworkFirewallPolicyWithRulesRuleMatchArgs']:
|
19424
21133
|
"""
|
19425
|
-
|
19426
|
-
|
21134
|
+
A match condition that incoming traffic is evaluated against. If it evaluates to true, the corresponding 'action' is enforced.
|
21135
|
+
Structure is documented below.
|
19427
21136
|
"""
|
19428
|
-
return pulumi.get(self, "
|
21137
|
+
return pulumi.get(self, "match")
|
19429
21138
|
|
19430
|
-
@
|
19431
|
-
def
|
19432
|
-
pulumi.set(self, "
|
21139
|
+
@match.setter
|
21140
|
+
def match(self, value: pulumi.Input['NetworkFirewallPolicyWithRulesRuleMatchArgs']):
|
21141
|
+
pulumi.set(self, "match", value)
|
19433
21142
|
|
19434
21143
|
@property
|
19435
|
-
@pulumi.getter
|
19436
|
-
def
|
21144
|
+
@pulumi.getter
|
21145
|
+
def priority(self) -> pulumi.Input[int]:
|
19437
21146
|
"""
|
19438
|
-
|
19439
|
-
|
21147
|
+
An integer indicating the priority of a rule in the list. The priority must be a value
|
21148
|
+
between 0 and 2147483647. Rules are evaluated from highest to lowest priority where 0 is the
|
21149
|
+
highest priority and 2147483647 is the lowest priority.
|
19440
21150
|
"""
|
19441
|
-
return pulumi.get(self, "
|
21151
|
+
return pulumi.get(self, "priority")
|
19442
21152
|
|
19443
|
-
@
|
19444
|
-
def
|
19445
|
-
pulumi.set(self, "
|
21153
|
+
@priority.setter
|
21154
|
+
def priority(self, value: pulumi.Input[int]):
|
21155
|
+
pulumi.set(self, "priority", value)
|
19446
21156
|
|
19447
21157
|
@property
|
19448
21158
|
@pulumi.getter
|
19449
|
-
def
|
21159
|
+
def description(self) -> Optional[pulumi.Input[str]]:
|
19450
21160
|
"""
|
19451
|
-
|
19452
|
-
The status of a connected endpoint to this network attachment.
|
21161
|
+
A description of the rule.
|
19453
21162
|
"""
|
19454
|
-
return pulumi.get(self, "
|
21163
|
+
return pulumi.get(self, "description")
|
19455
21164
|
|
19456
|
-
@
|
19457
|
-
def
|
19458
|
-
pulumi.set(self, "
|
21165
|
+
@description.setter
|
21166
|
+
def description(self, value: Optional[pulumi.Input[str]]):
|
21167
|
+
pulumi.set(self, "description", value)
|
19459
21168
|
|
19460
21169
|
@property
|
19461
21170
|
@pulumi.getter
|
19462
|
-
def
|
21171
|
+
def direction(self) -> Optional[pulumi.Input[str]]:
|
19463
21172
|
"""
|
19464
|
-
|
19465
|
-
|
21173
|
+
The direction in which this rule applies. If unspecified an INGRESS rule is created.
|
21174
|
+
Possible values are: `INGRESS`, `EGRESS`.
|
19466
21175
|
"""
|
19467
|
-
return pulumi.get(self, "
|
19468
|
-
|
19469
|
-
@subnetwork.setter
|
19470
|
-
def subnetwork(self, value: Optional[pulumi.Input[str]]):
|
19471
|
-
pulumi.set(self, "subnetwork", value)
|
21176
|
+
return pulumi.get(self, "direction")
|
19472
21177
|
|
21178
|
+
@direction.setter
|
21179
|
+
def direction(self, value: Optional[pulumi.Input[str]]):
|
21180
|
+
pulumi.set(self, "direction", value)
|
19473
21181
|
|
19474
|
-
|
19475
|
-
|
19476
|
-
|
21182
|
+
@property
|
21183
|
+
@pulumi.getter
|
21184
|
+
def disabled(self) -> Optional[pulumi.Input[bool]]:
|
19477
21185
|
"""
|
19478
|
-
|
19479
|
-
|
19480
|
-
|
21186
|
+
Denotes whether the firewall policy rule is disabled. When set to true,
|
21187
|
+
the firewall policy rule is not enforced and traffic behaves as if it did
|
21188
|
+
not exist. If this is unspecified, the firewall policy rule will be
|
21189
|
+
enabled.
|
19481
21190
|
"""
|
19482
|
-
|
21191
|
+
return pulumi.get(self, "disabled")
|
21192
|
+
|
21193
|
+
@disabled.setter
|
21194
|
+
def disabled(self, value: Optional[pulumi.Input[bool]]):
|
21195
|
+
pulumi.set(self, "disabled", value)
|
21196
|
+
|
21197
|
+
@property
|
21198
|
+
@pulumi.getter(name="enableLogging")
|
21199
|
+
def enable_logging(self) -> Optional[pulumi.Input[bool]]:
|
19483
21200
|
"""
|
19484
|
-
|
19485
|
-
|
19486
|
-
|
21201
|
+
Denotes whether to enable logging for a particular rule.
|
21202
|
+
If logging is enabled, logs will be exported to the
|
21203
|
+
configured export destination in Stackdriver.
|
19487
21204
|
"""
|
19488
|
-
|
21205
|
+
return pulumi.get(self, "enable_logging")
|
21206
|
+
|
21207
|
+
@enable_logging.setter
|
21208
|
+
def enable_logging(self, value: Optional[pulumi.Input[bool]]):
|
21209
|
+
pulumi.set(self, "enable_logging", value)
|
21210
|
+
|
21211
|
+
@property
|
21212
|
+
@pulumi.getter(name="ruleName")
|
21213
|
+
def rule_name(self) -> Optional[pulumi.Input[str]]:
|
19489
21214
|
"""
|
19490
|
-
|
19491
|
-
|
19492
|
-
with the type of `GCE_VM_IP`
|
21215
|
+
An optional name for the rule. This field is not a unique identifier
|
21216
|
+
and can be updated.
|
19493
21217
|
"""
|
19494
|
-
|
19495
|
-
NetworkEndpointListNetworkEndpointArgsDict: TypeAlias = Mapping[str, Any]
|
21218
|
+
return pulumi.get(self, "rule_name")
|
19496
21219
|
|
19497
|
-
@
|
19498
|
-
|
19499
|
-
|
19500
|
-
|
19501
|
-
|
19502
|
-
|
21220
|
+
@rule_name.setter
|
21221
|
+
def rule_name(self, value: Optional[pulumi.Input[str]]):
|
21222
|
+
pulumi.set(self, "rule_name", value)
|
21223
|
+
|
21224
|
+
@property
|
21225
|
+
@pulumi.getter(name="securityProfileGroup")
|
21226
|
+
def security_profile_group(self) -> Optional[pulumi.Input[str]]:
|
19503
21227
|
"""
|
19504
|
-
|
19505
|
-
|
19506
|
-
|
19507
|
-
|
19508
|
-
This is required for network endpoints of type GCE_VM_IP_PORT.
|
19509
|
-
The instance must be in the same zone as the network endpoint group.
|
19510
|
-
:param pulumi.Input[int] port: Port number of network endpoint.
|
19511
|
-
**Note** `port` is required unless the Network Endpoint Group is created
|
19512
|
-
with the type of `GCE_VM_IP`
|
21228
|
+
A fully-qualified URL of a SecurityProfile resource instance.
|
21229
|
+
Example:
|
21230
|
+
https://networksecurity.googleapis.com/v1/projects/{project}/locations/{location}/securityProfileGroups/my-security-profile-group
|
21231
|
+
Must be specified if action is 'apply_security_profile_group'.
|
19513
21232
|
"""
|
19514
|
-
pulumi.
|
19515
|
-
|
19516
|
-
|
19517
|
-
|
19518
|
-
|
21233
|
+
return pulumi.get(self, "security_profile_group")
|
21234
|
+
|
21235
|
+
@security_profile_group.setter
|
21236
|
+
def security_profile_group(self, value: Optional[pulumi.Input[str]]):
|
21237
|
+
pulumi.set(self, "security_profile_group", value)
|
19519
21238
|
|
19520
21239
|
@property
|
19521
|
-
@pulumi.getter(name="
|
19522
|
-
def
|
21240
|
+
@pulumi.getter(name="targetSecureTags")
|
21241
|
+
def target_secure_tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesRuleTargetSecureTagArgs']]]]:
|
19523
21242
|
"""
|
19524
|
-
|
19525
|
-
to
|
19526
|
-
|
21243
|
+
A list of secure tags that controls which instances the firewall rule
|
21244
|
+
applies to. If <code>targetSecureTag</code> are specified, then the
|
21245
|
+
firewall rule applies only to instances in the VPC network that have one
|
21246
|
+
of those EFFECTIVE secure tags, if all the target_secure_tag are in
|
21247
|
+
INEFFECTIVE state, then this rule will be ignored.
|
21248
|
+
<code>targetSecureTag</code> may not be set at the same time as
|
21249
|
+
<code>targetServiceAccounts</code>.
|
21250
|
+
If neither <code>targetServiceAccounts</code> nor
|
21251
|
+
<code>targetSecureTag</code> are specified, the firewall rule applies
|
21252
|
+
to all instances on the specified network.
|
21253
|
+
Maximum number of target label tags allowed is 256.
|
21254
|
+
Structure is documented below.
|
19527
21255
|
"""
|
19528
|
-
return pulumi.get(self, "
|
21256
|
+
return pulumi.get(self, "target_secure_tags")
|
19529
21257
|
|
19530
|
-
@
|
19531
|
-
def
|
19532
|
-
pulumi.set(self, "
|
21258
|
+
@target_secure_tags.setter
|
21259
|
+
def target_secure_tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesRuleTargetSecureTagArgs']]]]):
|
21260
|
+
pulumi.set(self, "target_secure_tags", value)
|
19533
21261
|
|
19534
21262
|
@property
|
19535
|
-
@pulumi.getter
|
19536
|
-
def
|
21263
|
+
@pulumi.getter(name="targetServiceAccounts")
|
21264
|
+
def target_service_accounts(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
19537
21265
|
"""
|
19538
|
-
|
19539
|
-
|
19540
|
-
The instance must be in the same zone as the network endpoint group.
|
21266
|
+
A list of service accounts indicating the sets of
|
21267
|
+
instances that are applied with this rule.
|
19541
21268
|
"""
|
19542
|
-
return pulumi.get(self, "
|
21269
|
+
return pulumi.get(self, "target_service_accounts")
|
19543
21270
|
|
19544
|
-
@
|
19545
|
-
def
|
19546
|
-
pulumi.set(self, "
|
21271
|
+
@target_service_accounts.setter
|
21272
|
+
def target_service_accounts(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
21273
|
+
pulumi.set(self, "target_service_accounts", value)
|
19547
21274
|
|
19548
21275
|
@property
|
19549
|
-
@pulumi.getter
|
19550
|
-
def
|
21276
|
+
@pulumi.getter(name="tlsInspect")
|
21277
|
+
def tls_inspect(self) -> Optional[pulumi.Input[bool]]:
|
19551
21278
|
"""
|
19552
|
-
|
19553
|
-
|
19554
|
-
with the type of `GCE_VM_IP`
|
21279
|
+
Boolean flag indicating if the traffic should be TLS decrypted.
|
21280
|
+
It can be set only if action = 'apply_security_profile_group' and cannot be set for other actions.
|
19555
21281
|
"""
|
19556
|
-
return pulumi.get(self, "
|
21282
|
+
return pulumi.get(self, "tls_inspect")
|
19557
21283
|
|
19558
|
-
@
|
19559
|
-
def
|
19560
|
-
pulumi.set(self, "
|
21284
|
+
@tls_inspect.setter
|
21285
|
+
def tls_inspect(self, value: Optional[pulumi.Input[bool]]):
|
21286
|
+
pulumi.set(self, "tls_inspect", value)
|
19561
21287
|
|
19562
21288
|
|
19563
21289
|
if not MYPY:
|
19564
|
-
class
|
19565
|
-
layer4_configs: pulumi.Input[Sequence[pulumi.Input['
|
21290
|
+
class NetworkFirewallPolicyWithRulesRuleMatchArgsDict(TypedDict):
|
21291
|
+
layer4_configs: pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigArgsDict']]]
|
19566
21292
|
"""
|
19567
21293
|
Pairs of IP protocols and ports that the rule should match.
|
21294
|
+
Structure is documented below.
|
19568
21295
|
"""
|
19569
21296
|
dest_address_groups: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
19570
21297
|
"""
|
19571
|
-
Address groups which should be matched against the traffic destination.
|
21298
|
+
Address groups which should be matched against the traffic destination.
|
21299
|
+
Maximum number of destination address groups is 10.
|
19572
21300
|
"""
|
19573
21301
|
dest_fqdns: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
19574
21302
|
"""
|
19575
|
-
|
21303
|
+
Fully Qualified Domain Name (FQDN) which should be matched against
|
21304
|
+
traffic destination. Maximum number of destination fqdn allowed is 100.
|
19576
21305
|
"""
|
19577
21306
|
dest_ip_ranges: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
19578
21307
|
"""
|
19579
|
-
|
21308
|
+
Destination IP address range in CIDR format. Required for
|
21309
|
+
EGRESS rules.
|
19580
21310
|
"""
|
19581
21311
|
dest_region_codes: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
19582
21312
|
"""
|
19583
|
-
|
21313
|
+
Region codes whose IP addresses will be used to match for destination
|
21314
|
+
of traffic. Should be specified as 2 letter country code defined as per
|
21315
|
+
ISO 3166 alpha-2 country codes. ex."US"
|
21316
|
+
Maximum number of destination region codes allowed is 5000.
|
19584
21317
|
"""
|
19585
21318
|
dest_threat_intelligences: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
19586
21319
|
"""
|
19587
|
-
|
21320
|
+
Names of Network Threat Intelligence lists.
|
21321
|
+
The IPs in these lists will be matched against traffic destination.
|
19588
21322
|
"""
|
19589
21323
|
src_address_groups: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
19590
21324
|
"""
|
19591
|
-
Address groups which should be matched against the traffic source.
|
21325
|
+
Address groups which should be matched against the traffic source.
|
21326
|
+
Maximum number of source address groups is 10.
|
19592
21327
|
"""
|
19593
21328
|
src_fqdns: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
19594
21329
|
"""
|
19595
|
-
|
21330
|
+
Fully Qualified Domain Name (FQDN) which should be matched against
|
21331
|
+
traffic source. Maximum number of source fqdn allowed is 100.
|
19596
21332
|
"""
|
19597
21333
|
src_ip_ranges: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
19598
21334
|
"""
|
19599
|
-
|
21335
|
+
Source IP address range in CIDR format. Required for
|
21336
|
+
INGRESS rules.
|
19600
21337
|
"""
|
19601
21338
|
src_region_codes: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
19602
21339
|
"""
|
19603
|
-
|
21340
|
+
Region codes whose IP addresses will be used to match for source
|
21341
|
+
of traffic. Should be specified as 2 letter country code defined as per
|
21342
|
+
ISO 3166 alpha-2 country codes. ex."US"
|
21343
|
+
Maximum number of source region codes allowed is 5000.
|
19604
21344
|
"""
|
19605
|
-
src_secure_tags: NotRequired[pulumi.Input[Sequence[pulumi.Input['
|
21345
|
+
src_secure_tags: NotRequired[pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagArgsDict']]]]
|
19606
21346
|
"""
|
19607
|
-
List of secure tag values, which should be matched at the source
|
21347
|
+
List of secure tag values, which should be matched at the source
|
21348
|
+
of the traffic.
|
21349
|
+
For INGRESS rule, if all the <code>srcSecureTag</code> are INEFFECTIVE,
|
21350
|
+
and there is no <code>srcIpRange</code>, this rule will be ignored.
|
21351
|
+
Maximum number of source tag values allowed is 256.
|
21352
|
+
Structure is documented below.
|
21353
|
+
|
21354
|
+
|
21355
|
+
<a name="nested_layer4_config"></a>The `layer4_config` block supports:
|
19608
21356
|
"""
|
19609
21357
|
src_threat_intelligences: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
19610
21358
|
"""
|
19611
|
-
|
19612
|
-
|
19613
|
-
The `layer4_configs` block supports:
|
21359
|
+
Names of Network Threat Intelligence lists.
|
21360
|
+
The IPs in these lists will be matched against traffic source.
|
19614
21361
|
"""
|
19615
21362
|
elif False:
|
19616
|
-
|
21363
|
+
NetworkFirewallPolicyWithRulesRuleMatchArgsDict: TypeAlias = Mapping[str, Any]
|
19617
21364
|
|
19618
21365
|
@pulumi.input_type
|
19619
|
-
class
|
21366
|
+
class NetworkFirewallPolicyWithRulesRuleMatchArgs:
|
19620
21367
|
def __init__(__self__, *,
|
19621
|
-
layer4_configs: pulumi.Input[Sequence[pulumi.Input['
|
21368
|
+
layer4_configs: pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigArgs']]],
|
19622
21369
|
dest_address_groups: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
19623
21370
|
dest_fqdns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
19624
21371
|
dest_ip_ranges: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
@@ -19628,23 +21375,44 @@ class NetworkFirewallPolicyRuleMatchArgs:
|
|
19628
21375
|
src_fqdns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
19629
21376
|
src_ip_ranges: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
19630
21377
|
src_region_codes: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
19631
|
-
src_secure_tags: Optional[pulumi.Input[Sequence[pulumi.Input['
|
21378
|
+
src_secure_tags: Optional[pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagArgs']]]] = None,
|
19632
21379
|
src_threat_intelligences: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
|
19633
21380
|
"""
|
19634
|
-
:param pulumi.Input[Sequence[pulumi.Input['
|
19635
|
-
|
19636
|
-
:param pulumi.Input[Sequence[pulumi.Input[str]]]
|
19637
|
-
|
19638
|
-
:param pulumi.Input[Sequence[pulumi.Input[str]]]
|
19639
|
-
|
19640
|
-
:param pulumi.Input[Sequence[pulumi.Input[str]]]
|
19641
|
-
|
19642
|
-
:param pulumi.Input[Sequence[pulumi.Input[str]]]
|
19643
|
-
|
19644
|
-
|
19645
|
-
|
21381
|
+
:param pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigArgs']]] layer4_configs: Pairs of IP protocols and ports that the rule should match.
|
21382
|
+
Structure is documented below.
|
21383
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] dest_address_groups: Address groups which should be matched against the traffic destination.
|
21384
|
+
Maximum number of destination address groups is 10.
|
21385
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] dest_fqdns: Fully Qualified Domain Name (FQDN) which should be matched against
|
21386
|
+
traffic destination. Maximum number of destination fqdn allowed is 100.
|
21387
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] dest_ip_ranges: Destination IP address range in CIDR format. Required for
|
21388
|
+
EGRESS rules.
|
21389
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] dest_region_codes: Region codes whose IP addresses will be used to match for destination
|
21390
|
+
of traffic. Should be specified as 2 letter country code defined as per
|
21391
|
+
ISO 3166 alpha-2 country codes. ex."US"
|
21392
|
+
Maximum number of destination region codes allowed is 5000.
|
21393
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] dest_threat_intelligences: Names of Network Threat Intelligence lists.
|
21394
|
+
The IPs in these lists will be matched against traffic destination.
|
21395
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] src_address_groups: Address groups which should be matched against the traffic source.
|
21396
|
+
Maximum number of source address groups is 10.
|
21397
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] src_fqdns: Fully Qualified Domain Name (FQDN) which should be matched against
|
21398
|
+
traffic source. Maximum number of source fqdn allowed is 100.
|
21399
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] src_ip_ranges: Source IP address range in CIDR format. Required for
|
21400
|
+
INGRESS rules.
|
21401
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] src_region_codes: Region codes whose IP addresses will be used to match for source
|
21402
|
+
of traffic. Should be specified as 2 letter country code defined as per
|
21403
|
+
ISO 3166 alpha-2 country codes. ex."US"
|
21404
|
+
Maximum number of source region codes allowed is 5000.
|
21405
|
+
:param pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagArgs']]] src_secure_tags: List of secure tag values, which should be matched at the source
|
21406
|
+
of the traffic.
|
21407
|
+
For INGRESS rule, if all the <code>srcSecureTag</code> are INEFFECTIVE,
|
21408
|
+
and there is no <code>srcIpRange</code>, this rule will be ignored.
|
21409
|
+
Maximum number of source tag values allowed is 256.
|
21410
|
+
Structure is documented below.
|
19646
21411
|
|
19647
|
-
|
21412
|
+
|
21413
|
+
<a name="nested_layer4_config"></a>The `layer4_config` block supports:
|
21414
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] src_threat_intelligences: Names of Network Threat Intelligence lists.
|
21415
|
+
The IPs in these lists will be matched against traffic source.
|
19648
21416
|
"""
|
19649
21417
|
pulumi.set(__self__, "layer4_configs", layer4_configs)
|
19650
21418
|
if dest_address_groups is not None:
|
@@ -19672,21 +21440,23 @@ class NetworkFirewallPolicyRuleMatchArgs:
|
|
19672
21440
|
|
19673
21441
|
@property
|
19674
21442
|
@pulumi.getter(name="layer4Configs")
|
19675
|
-
def layer4_configs(self) -> pulumi.Input[Sequence[pulumi.Input['
|
21443
|
+
def layer4_configs(self) -> pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigArgs']]]:
|
19676
21444
|
"""
|
19677
21445
|
Pairs of IP protocols and ports that the rule should match.
|
21446
|
+
Structure is documented below.
|
19678
21447
|
"""
|
19679
21448
|
return pulumi.get(self, "layer4_configs")
|
19680
21449
|
|
19681
21450
|
@layer4_configs.setter
|
19682
|
-
def layer4_configs(self, value: pulumi.Input[Sequence[pulumi.Input['
|
21451
|
+
def layer4_configs(self, value: pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigArgs']]]):
|
19683
21452
|
pulumi.set(self, "layer4_configs", value)
|
19684
21453
|
|
19685
21454
|
@property
|
19686
21455
|
@pulumi.getter(name="destAddressGroups")
|
19687
21456
|
def dest_address_groups(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
19688
21457
|
"""
|
19689
|
-
Address groups which should be matched against the traffic destination.
|
21458
|
+
Address groups which should be matched against the traffic destination.
|
21459
|
+
Maximum number of destination address groups is 10.
|
19690
21460
|
"""
|
19691
21461
|
return pulumi.get(self, "dest_address_groups")
|
19692
21462
|
|
@@ -19698,7 +21468,8 @@ class NetworkFirewallPolicyRuleMatchArgs:
|
|
19698
21468
|
@pulumi.getter(name="destFqdns")
|
19699
21469
|
def dest_fqdns(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
19700
21470
|
"""
|
19701
|
-
|
21471
|
+
Fully Qualified Domain Name (FQDN) which should be matched against
|
21472
|
+
traffic destination. Maximum number of destination fqdn allowed is 100.
|
19702
21473
|
"""
|
19703
21474
|
return pulumi.get(self, "dest_fqdns")
|
19704
21475
|
|
@@ -19710,7 +21481,8 @@ class NetworkFirewallPolicyRuleMatchArgs:
|
|
19710
21481
|
@pulumi.getter(name="destIpRanges")
|
19711
21482
|
def dest_ip_ranges(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
19712
21483
|
"""
|
19713
|
-
|
21484
|
+
Destination IP address range in CIDR format. Required for
|
21485
|
+
EGRESS rules.
|
19714
21486
|
"""
|
19715
21487
|
return pulumi.get(self, "dest_ip_ranges")
|
19716
21488
|
|
@@ -19722,7 +21494,10 @@ class NetworkFirewallPolicyRuleMatchArgs:
|
|
19722
21494
|
@pulumi.getter(name="destRegionCodes")
|
19723
21495
|
def dest_region_codes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
19724
21496
|
"""
|
19725
|
-
|
21497
|
+
Region codes whose IP addresses will be used to match for destination
|
21498
|
+
of traffic. Should be specified as 2 letter country code defined as per
|
21499
|
+
ISO 3166 alpha-2 country codes. ex."US"
|
21500
|
+
Maximum number of destination region codes allowed is 5000.
|
19726
21501
|
"""
|
19727
21502
|
return pulumi.get(self, "dest_region_codes")
|
19728
21503
|
|
@@ -19734,7 +21509,8 @@ class NetworkFirewallPolicyRuleMatchArgs:
|
|
19734
21509
|
@pulumi.getter(name="destThreatIntelligences")
|
19735
21510
|
def dest_threat_intelligences(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
19736
21511
|
"""
|
19737
|
-
|
21512
|
+
Names of Network Threat Intelligence lists.
|
21513
|
+
The IPs in these lists will be matched against traffic destination.
|
19738
21514
|
"""
|
19739
21515
|
return pulumi.get(self, "dest_threat_intelligences")
|
19740
21516
|
|
@@ -19746,7 +21522,8 @@ class NetworkFirewallPolicyRuleMatchArgs:
|
|
19746
21522
|
@pulumi.getter(name="srcAddressGroups")
|
19747
21523
|
def src_address_groups(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
19748
21524
|
"""
|
19749
|
-
Address groups which should be matched against the traffic source.
|
21525
|
+
Address groups which should be matched against the traffic source.
|
21526
|
+
Maximum number of source address groups is 10.
|
19750
21527
|
"""
|
19751
21528
|
return pulumi.get(self, "src_address_groups")
|
19752
21529
|
|
@@ -19758,7 +21535,8 @@ class NetworkFirewallPolicyRuleMatchArgs:
|
|
19758
21535
|
@pulumi.getter(name="srcFqdns")
|
19759
21536
|
def src_fqdns(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
19760
21537
|
"""
|
19761
|
-
|
21538
|
+
Fully Qualified Domain Name (FQDN) which should be matched against
|
21539
|
+
traffic source. Maximum number of source fqdn allowed is 100.
|
19762
21540
|
"""
|
19763
21541
|
return pulumi.get(self, "src_fqdns")
|
19764
21542
|
|
@@ -19770,7 +21548,8 @@ class NetworkFirewallPolicyRuleMatchArgs:
|
|
19770
21548
|
@pulumi.getter(name="srcIpRanges")
|
19771
21549
|
def src_ip_ranges(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
19772
21550
|
"""
|
19773
|
-
|
21551
|
+
Source IP address range in CIDR format. Required for
|
21552
|
+
INGRESS rules.
|
19774
21553
|
"""
|
19775
21554
|
return pulumi.get(self, "src_ip_ranges")
|
19776
21555
|
|
@@ -19782,7 +21561,10 @@ class NetworkFirewallPolicyRuleMatchArgs:
|
|
19782
21561
|
@pulumi.getter(name="srcRegionCodes")
|
19783
21562
|
def src_region_codes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
19784
21563
|
"""
|
19785
|
-
|
21564
|
+
Region codes whose IP addresses will be used to match for source
|
21565
|
+
of traffic. Should be specified as 2 letter country code defined as per
|
21566
|
+
ISO 3166 alpha-2 country codes. ex."US"
|
21567
|
+
Maximum number of source region codes allowed is 5000.
|
19786
21568
|
"""
|
19787
21569
|
return pulumi.get(self, "src_region_codes")
|
19788
21570
|
|
@@ -19792,23 +21574,30 @@ class NetworkFirewallPolicyRuleMatchArgs:
|
|
19792
21574
|
|
19793
21575
|
@property
|
19794
21576
|
@pulumi.getter(name="srcSecureTags")
|
19795
|
-
def src_secure_tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['
|
21577
|
+
def src_secure_tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagArgs']]]]:
|
19796
21578
|
"""
|
19797
|
-
List of secure tag values, which should be matched at the source
|
21579
|
+
List of secure tag values, which should be matched at the source
|
21580
|
+
of the traffic.
|
21581
|
+
For INGRESS rule, if all the <code>srcSecureTag</code> are INEFFECTIVE,
|
21582
|
+
and there is no <code>srcIpRange</code>, this rule will be ignored.
|
21583
|
+
Maximum number of source tag values allowed is 256.
|
21584
|
+
Structure is documented below.
|
21585
|
+
|
21586
|
+
|
21587
|
+
<a name="nested_layer4_config"></a>The `layer4_config` block supports:
|
19798
21588
|
"""
|
19799
21589
|
return pulumi.get(self, "src_secure_tags")
|
19800
21590
|
|
19801
21591
|
@src_secure_tags.setter
|
19802
|
-
def src_secure_tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['
|
21592
|
+
def src_secure_tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagArgs']]]]):
|
19803
21593
|
pulumi.set(self, "src_secure_tags", value)
|
19804
21594
|
|
19805
21595
|
@property
|
19806
21596
|
@pulumi.getter(name="srcThreatIntelligences")
|
19807
21597
|
def src_threat_intelligences(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
19808
21598
|
"""
|
19809
|
-
|
19810
|
-
|
19811
|
-
The `layer4_configs` block supports:
|
21599
|
+
Names of Network Threat Intelligence lists.
|
21600
|
+
The IPs in these lists will be matched against traffic source.
|
19812
21601
|
"""
|
19813
21602
|
return pulumi.get(self, "src_threat_intelligences")
|
19814
21603
|
|
@@ -19818,26 +21607,48 @@ class NetworkFirewallPolicyRuleMatchArgs:
|
|
19818
21607
|
|
19819
21608
|
|
19820
21609
|
if not MYPY:
|
19821
|
-
class
|
21610
|
+
class NetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigArgsDict(TypedDict):
|
19822
21611
|
ip_protocol: pulumi.Input[str]
|
19823
21612
|
"""
|
19824
|
-
|
21613
|
+
(Output)
|
21614
|
+
The IP protocol to which this rule applies. The protocol
|
21615
|
+
type is required when creating a firewall rule.
|
21616
|
+
This value can either be one of the following well
|
21617
|
+
known protocol strings (tcp, udp, icmp, esp, ah, ipip, sctp),
|
21618
|
+
or the IP protocol number.
|
19825
21619
|
"""
|
19826
21620
|
ports: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
19827
21621
|
"""
|
19828
|
-
|
21622
|
+
(Output)
|
21623
|
+
An optional list of ports to which this rule applies. This field
|
21624
|
+
is only applicable for UDP or TCP protocol. Each entry must be
|
21625
|
+
either an integer or a range. If not specified, this rule
|
21626
|
+
applies to connections through any port.
|
21627
|
+
Example inputs include: ["22"], ["80","443"], and
|
21628
|
+
["12345-12349"].
|
19829
21629
|
"""
|
19830
21630
|
elif False:
|
19831
|
-
|
21631
|
+
NetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigArgsDict: TypeAlias = Mapping[str, Any]
|
19832
21632
|
|
19833
21633
|
@pulumi.input_type
|
19834
|
-
class
|
21634
|
+
class NetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigArgs:
|
19835
21635
|
def __init__(__self__, *,
|
19836
21636
|
ip_protocol: pulumi.Input[str],
|
19837
21637
|
ports: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
|
19838
21638
|
"""
|
19839
|
-
:param pulumi.Input[str] ip_protocol:
|
19840
|
-
|
21639
|
+
:param pulumi.Input[str] ip_protocol: (Output)
|
21640
|
+
The IP protocol to which this rule applies. The protocol
|
21641
|
+
type is required when creating a firewall rule.
|
21642
|
+
This value can either be one of the following well
|
21643
|
+
known protocol strings (tcp, udp, icmp, esp, ah, ipip, sctp),
|
21644
|
+
or the IP protocol number.
|
21645
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] ports: (Output)
|
21646
|
+
An optional list of ports to which this rule applies. This field
|
21647
|
+
is only applicable for UDP or TCP protocol. Each entry must be
|
21648
|
+
either an integer or a range. If not specified, this rule
|
21649
|
+
applies to connections through any port.
|
21650
|
+
Example inputs include: ["22"], ["80","443"], and
|
21651
|
+
["12345-12349"].
|
19841
21652
|
"""
|
19842
21653
|
pulumi.set(__self__, "ip_protocol", ip_protocol)
|
19843
21654
|
if ports is not None:
|
@@ -19847,7 +21658,12 @@ class NetworkFirewallPolicyRuleMatchLayer4ConfigArgs:
|
|
19847
21658
|
@pulumi.getter(name="ipProtocol")
|
19848
21659
|
def ip_protocol(self) -> pulumi.Input[str]:
|
19849
21660
|
"""
|
19850
|
-
|
21661
|
+
(Output)
|
21662
|
+
The IP protocol to which this rule applies. The protocol
|
21663
|
+
type is required when creating a firewall rule.
|
21664
|
+
This value can either be one of the following well
|
21665
|
+
known protocol strings (tcp, udp, icmp, esp, ah, ipip, sctp),
|
21666
|
+
or the IP protocol number.
|
19851
21667
|
"""
|
19852
21668
|
return pulumi.get(self, "ip_protocol")
|
19853
21669
|
|
@@ -19859,7 +21675,13 @@ class NetworkFirewallPolicyRuleMatchLayer4ConfigArgs:
|
|
19859
21675
|
@pulumi.getter
|
19860
21676
|
def ports(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
19861
21677
|
"""
|
19862
|
-
|
21678
|
+
(Output)
|
21679
|
+
An optional list of ports to which this rule applies. This field
|
21680
|
+
is only applicable for UDP or TCP protocol. Each entry must be
|
21681
|
+
either an integer or a range. If not specified, this rule
|
21682
|
+
applies to connections through any port.
|
21683
|
+
Example inputs include: ["22"], ["80","443"], and
|
21684
|
+
["12345-12349"].
|
19863
21685
|
"""
|
19864
21686
|
return pulumi.get(self, "ports")
|
19865
21687
|
|
@@ -19869,48 +21691,61 @@ class NetworkFirewallPolicyRuleMatchLayer4ConfigArgs:
|
|
19869
21691
|
|
19870
21692
|
|
19871
21693
|
if not MYPY:
|
19872
|
-
class
|
19873
|
-
name: pulumi.Input[str]
|
21694
|
+
class NetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagArgsDict(TypedDict):
|
21695
|
+
name: NotRequired[pulumi.Input[str]]
|
19874
21696
|
"""
|
19875
|
-
Name of the secure tag, created with TagManager's TagValue API.
|
21697
|
+
Name of the secure tag, created with TagManager's TagValue API.
|
21698
|
+
@pattern tagValues/[0-9]+
|
19876
21699
|
"""
|
19877
21700
|
state: NotRequired[pulumi.Input[str]]
|
19878
21701
|
"""
|
19879
|
-
|
21702
|
+
(Output)
|
21703
|
+
[Output Only] State of the secure tag, either `EFFECTIVE` or
|
21704
|
+
`INEFFECTIVE`. A secure tag is `INEFFECTIVE` when it is deleted
|
21705
|
+
or its network is deleted.
|
19880
21706
|
"""
|
19881
21707
|
elif False:
|
19882
|
-
|
21708
|
+
NetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagArgsDict: TypeAlias = Mapping[str, Any]
|
19883
21709
|
|
19884
21710
|
@pulumi.input_type
|
19885
|
-
class
|
21711
|
+
class NetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagArgs:
|
19886
21712
|
def __init__(__self__, *,
|
19887
|
-
name: pulumi.Input[str],
|
21713
|
+
name: Optional[pulumi.Input[str]] = None,
|
19888
21714
|
state: Optional[pulumi.Input[str]] = None):
|
19889
21715
|
"""
|
19890
|
-
:param pulumi.Input[str] name: Name of the secure tag, created with TagManager's TagValue API.
|
19891
|
-
|
21716
|
+
:param pulumi.Input[str] name: Name of the secure tag, created with TagManager's TagValue API.
|
21717
|
+
@pattern tagValues/[0-9]+
|
21718
|
+
:param pulumi.Input[str] state: (Output)
|
21719
|
+
[Output Only] State of the secure tag, either `EFFECTIVE` or
|
21720
|
+
`INEFFECTIVE`. A secure tag is `INEFFECTIVE` when it is deleted
|
21721
|
+
or its network is deleted.
|
19892
21722
|
"""
|
19893
|
-
|
21723
|
+
if name is not None:
|
21724
|
+
pulumi.set(__self__, "name", name)
|
19894
21725
|
if state is not None:
|
19895
21726
|
pulumi.set(__self__, "state", state)
|
19896
21727
|
|
19897
21728
|
@property
|
19898
21729
|
@pulumi.getter
|
19899
|
-
def name(self) -> pulumi.Input[str]:
|
21730
|
+
def name(self) -> Optional[pulumi.Input[str]]:
|
19900
21731
|
"""
|
19901
|
-
Name of the secure tag, created with TagManager's TagValue API.
|
21732
|
+
Name of the secure tag, created with TagManager's TagValue API.
|
21733
|
+
@pattern tagValues/[0-9]+
|
19902
21734
|
"""
|
19903
21735
|
return pulumi.get(self, "name")
|
19904
21736
|
|
19905
21737
|
@name.setter
|
19906
|
-
def name(self, value: pulumi.Input[str]):
|
21738
|
+
def name(self, value: Optional[pulumi.Input[str]]):
|
19907
21739
|
pulumi.set(self, "name", value)
|
19908
21740
|
|
19909
21741
|
@property
|
19910
21742
|
@pulumi.getter
|
19911
21743
|
def state(self) -> Optional[pulumi.Input[str]]:
|
19912
21744
|
"""
|
19913
|
-
|
21745
|
+
(Output)
|
21746
|
+
[Output Only] State of the secure tag, either `EFFECTIVE` or
|
21747
|
+
`INEFFECTIVE`. A secure tag is `INEFFECTIVE` when it is deleted
|
21748
|
+
or its network is deleted.
|
19914
21749
|
"""
|
19915
21750
|
return pulumi.get(self, "state")
|
19916
21751
|
|
@@ -19920,48 +21755,67 @@ class NetworkFirewallPolicyRuleMatchSrcSecureTagArgs:
|
|
19920
21755
|
|
19921
21756
|
|
19922
21757
|
if not MYPY:
|
19923
|
-
class
|
19924
|
-
name: pulumi.Input[str]
|
21758
|
+
class NetworkFirewallPolicyWithRulesRuleTargetSecureTagArgsDict(TypedDict):
|
21759
|
+
name: NotRequired[pulumi.Input[str]]
|
19925
21760
|
"""
|
19926
|
-
Name of the secure tag, created with TagManager's TagValue API.
|
21761
|
+
Name of the secure tag, created with TagManager's TagValue API.
|
21762
|
+
@pattern tagValues/[0-9]+
|
19927
21763
|
"""
|
19928
21764
|
state: NotRequired[pulumi.Input[str]]
|
19929
21765
|
"""
|
19930
|
-
|
21766
|
+
(Output)
|
21767
|
+
[Output Only] State of the secure tag, either `EFFECTIVE` or
|
21768
|
+
`INEFFECTIVE`. A secure tag is `INEFFECTIVE` when it is deleted
|
21769
|
+
or its network is deleted.
|
21770
|
+
|
21771
|
+
- - -
|
19931
21772
|
"""
|
19932
21773
|
elif False:
|
19933
|
-
|
21774
|
+
NetworkFirewallPolicyWithRulesRuleTargetSecureTagArgsDict: TypeAlias = Mapping[str, Any]
|
19934
21775
|
|
19935
21776
|
@pulumi.input_type
|
19936
|
-
class
|
21777
|
+
class NetworkFirewallPolicyWithRulesRuleTargetSecureTagArgs:
|
19937
21778
|
def __init__(__self__, *,
|
19938
|
-
name: pulumi.Input[str],
|
21779
|
+
name: Optional[pulumi.Input[str]] = None,
|
19939
21780
|
state: Optional[pulumi.Input[str]] = None):
|
19940
21781
|
"""
|
19941
|
-
:param pulumi.Input[str] name: Name of the secure tag, created with TagManager's TagValue API.
|
19942
|
-
|
21782
|
+
:param pulumi.Input[str] name: Name of the secure tag, created with TagManager's TagValue API.
|
21783
|
+
@pattern tagValues/[0-9]+
|
21784
|
+
:param pulumi.Input[str] state: (Output)
|
21785
|
+
[Output Only] State of the secure tag, either `EFFECTIVE` or
|
21786
|
+
`INEFFECTIVE`. A secure tag is `INEFFECTIVE` when it is deleted
|
21787
|
+
or its network is deleted.
|
21788
|
+
|
21789
|
+
- - -
|
19943
21790
|
"""
|
19944
|
-
|
21791
|
+
if name is not None:
|
21792
|
+
pulumi.set(__self__, "name", name)
|
19945
21793
|
if state is not None:
|
19946
21794
|
pulumi.set(__self__, "state", state)
|
19947
21795
|
|
19948
21796
|
@property
|
19949
21797
|
@pulumi.getter
|
19950
|
-
def name(self) -> pulumi.Input[str]:
|
21798
|
+
def name(self) -> Optional[pulumi.Input[str]]:
|
19951
21799
|
"""
|
19952
|
-
Name of the secure tag, created with TagManager's TagValue API.
|
21800
|
+
Name of the secure tag, created with TagManager's TagValue API.
|
21801
|
+
@pattern tagValues/[0-9]+
|
19953
21802
|
"""
|
19954
21803
|
return pulumi.get(self, "name")
|
19955
21804
|
|
19956
21805
|
@name.setter
|
19957
|
-
def name(self, value: pulumi.Input[str]):
|
21806
|
+
def name(self, value: Optional[pulumi.Input[str]]):
|
19958
21807
|
pulumi.set(self, "name", value)
|
19959
21808
|
|
19960
21809
|
@property
|
19961
21810
|
@pulumi.getter
|
19962
21811
|
def state(self) -> Optional[pulumi.Input[str]]:
|
19963
21812
|
"""
|
19964
|
-
|
21813
|
+
(Output)
|
21814
|
+
[Output Only] State of the secure tag, either `EFFECTIVE` or
|
21815
|
+
`INEFFECTIVE`. A secure tag is `INEFFECTIVE` when it is deleted
|
21816
|
+
or its network is deleted.
|
21817
|
+
|
21818
|
+
- - -
|
19965
21819
|
"""
|
19966
21820
|
return pulumi.get(self, "state")
|
19967
21821
|
|
@@ -45186,11 +47040,26 @@ class SecurityScanConfigScheduleArgs:
|
|
45186
47040
|
|
45187
47041
|
if not MYPY:
|
45188
47042
|
class ServiceAttachmentConnectedEndpointArgsDict(TypedDict):
|
47043
|
+
consumer_network: NotRequired[pulumi.Input[str]]
|
47044
|
+
"""
|
47045
|
+
(Output)
|
47046
|
+
The url of the consumer network.
|
47047
|
+
"""
|
45189
47048
|
endpoint: NotRequired[pulumi.Input[str]]
|
45190
47049
|
"""
|
45191
47050
|
(Output)
|
45192
47051
|
The URL of the consumer forwarding rule.
|
45193
47052
|
"""
|
47053
|
+
propagated_connection_count: NotRequired[pulumi.Input[int]]
|
47054
|
+
"""
|
47055
|
+
(Output, Beta)
|
47056
|
+
The number of consumer Network Connectivity Center spokes that the connected Private Service Connect endpoint has propagated to.
|
47057
|
+
"""
|
47058
|
+
psc_connection_id: NotRequired[pulumi.Input[str]]
|
47059
|
+
"""
|
47060
|
+
(Output)
|
47061
|
+
The PSC connection id of the connected endpoint.
|
47062
|
+
"""
|
45194
47063
|
status: NotRequired[pulumi.Input[str]]
|
45195
47064
|
"""
|
45196
47065
|
(Output)
|
@@ -45203,20 +47072,48 @@ elif False:
|
|
45203
47072
|
@pulumi.input_type
|
45204
47073
|
class ServiceAttachmentConnectedEndpointArgs:
|
45205
47074
|
def __init__(__self__, *,
|
47075
|
+
consumer_network: Optional[pulumi.Input[str]] = None,
|
45206
47076
|
endpoint: Optional[pulumi.Input[str]] = None,
|
47077
|
+
propagated_connection_count: Optional[pulumi.Input[int]] = None,
|
47078
|
+
psc_connection_id: Optional[pulumi.Input[str]] = None,
|
45207
47079
|
status: Optional[pulumi.Input[str]] = None):
|
45208
47080
|
"""
|
47081
|
+
:param pulumi.Input[str] consumer_network: (Output)
|
47082
|
+
The url of the consumer network.
|
45209
47083
|
:param pulumi.Input[str] endpoint: (Output)
|
45210
47084
|
The URL of the consumer forwarding rule.
|
47085
|
+
:param pulumi.Input[int] propagated_connection_count: (Output, Beta)
|
47086
|
+
The number of consumer Network Connectivity Center spokes that the connected Private Service Connect endpoint has propagated to.
|
47087
|
+
:param pulumi.Input[str] psc_connection_id: (Output)
|
47088
|
+
The PSC connection id of the connected endpoint.
|
45211
47089
|
:param pulumi.Input[str] status: (Output)
|
45212
47090
|
The status of the connection from the consumer forwarding rule to
|
45213
47091
|
this service attachment.
|
45214
47092
|
"""
|
47093
|
+
if consumer_network is not None:
|
47094
|
+
pulumi.set(__self__, "consumer_network", consumer_network)
|
45215
47095
|
if endpoint is not None:
|
45216
47096
|
pulumi.set(__self__, "endpoint", endpoint)
|
47097
|
+
if propagated_connection_count is not None:
|
47098
|
+
pulumi.set(__self__, "propagated_connection_count", propagated_connection_count)
|
47099
|
+
if psc_connection_id is not None:
|
47100
|
+
pulumi.set(__self__, "psc_connection_id", psc_connection_id)
|
45217
47101
|
if status is not None:
|
45218
47102
|
pulumi.set(__self__, "status", status)
|
45219
47103
|
|
47104
|
+
@property
|
47105
|
+
@pulumi.getter(name="consumerNetwork")
|
47106
|
+
def consumer_network(self) -> Optional[pulumi.Input[str]]:
|
47107
|
+
"""
|
47108
|
+
(Output)
|
47109
|
+
The url of the consumer network.
|
47110
|
+
"""
|
47111
|
+
return pulumi.get(self, "consumer_network")
|
47112
|
+
|
47113
|
+
@consumer_network.setter
|
47114
|
+
def consumer_network(self, value: Optional[pulumi.Input[str]]):
|
47115
|
+
pulumi.set(self, "consumer_network", value)
|
47116
|
+
|
45220
47117
|
@property
|
45221
47118
|
@pulumi.getter
|
45222
47119
|
def endpoint(self) -> Optional[pulumi.Input[str]]:
|
@@ -45230,6 +47127,32 @@ class ServiceAttachmentConnectedEndpointArgs:
|
|
45230
47127
|
def endpoint(self, value: Optional[pulumi.Input[str]]):
|
45231
47128
|
pulumi.set(self, "endpoint", value)
|
45232
47129
|
|
47130
|
+
@property
|
47131
|
+
@pulumi.getter(name="propagatedConnectionCount")
|
47132
|
+
def propagated_connection_count(self) -> Optional[pulumi.Input[int]]:
|
47133
|
+
"""
|
47134
|
+
(Output, Beta)
|
47135
|
+
The number of consumer Network Connectivity Center spokes that the connected Private Service Connect endpoint has propagated to.
|
47136
|
+
"""
|
47137
|
+
return pulumi.get(self, "propagated_connection_count")
|
47138
|
+
|
47139
|
+
@propagated_connection_count.setter
|
47140
|
+
def propagated_connection_count(self, value: Optional[pulumi.Input[int]]):
|
47141
|
+
pulumi.set(self, "propagated_connection_count", value)
|
47142
|
+
|
47143
|
+
@property
|
47144
|
+
@pulumi.getter(name="pscConnectionId")
|
47145
|
+
def psc_connection_id(self) -> Optional[pulumi.Input[str]]:
|
47146
|
+
"""
|
47147
|
+
(Output)
|
47148
|
+
The PSC connection id of the connected endpoint.
|
47149
|
+
"""
|
47150
|
+
return pulumi.get(self, "psc_connection_id")
|
47151
|
+
|
47152
|
+
@psc_connection_id.setter
|
47153
|
+
def psc_connection_id(self, value: Optional[pulumi.Input[str]]):
|
47154
|
+
pulumi.set(self, "psc_connection_id", value)
|
47155
|
+
|
45233
47156
|
@property
|
45234
47157
|
@pulumi.getter
|
45235
47158
|
def status(self) -> Optional[pulumi.Input[str]]:
|