pulumi-gcp 8.1.0a1726293903__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 +62 -0
- pulumi_gcp/alloydb/_inputs.py +94 -0
- pulumi_gcp/alloydb/cluster.py +94 -1
- pulumi_gcp/alloydb/outputs.py +79 -0
- pulumi_gcp/assuredworkloads/workload.py +135 -16
- pulumi_gcp/backupdisasterrecovery/__init__.py +1 -0
- pulumi_gcp/backupdisasterrecovery/backup_vault.py +1203 -0
- pulumi_gcp/bigquery/__init__.py +1 -0
- pulumi_gcp/bigquery/_inputs.py +33 -0
- pulumi_gcp/bigquery/data_transfer_config.py +134 -6
- pulumi_gcp/bigquery/get_tables.py +143 -0
- pulumi_gcp/bigquery/outputs.py +66 -0
- pulumi_gcp/bigqueryanalyticshub/_inputs.py +169 -7
- pulumi_gcp/bigqueryanalyticshub/data_exchange.py +96 -3
- pulumi_gcp/bigqueryanalyticshub/listing.py +114 -0
- pulumi_gcp/bigqueryanalyticshub/outputs.py +138 -5
- pulumi_gcp/bigtable/_inputs.py +21 -1
- pulumi_gcp/bigtable/outputs.py +13 -1
- pulumi_gcp/bigtable/table.py +34 -0
- pulumi_gcp/certificateauthority/authority.py +14 -7
- pulumi_gcp/certificatemanager/__init__.py +1 -0
- pulumi_gcp/certificatemanager/certificate.py +28 -0
- pulumi_gcp/certificatemanager/get_certificates.py +150 -0
- pulumi_gcp/certificatemanager/outputs.py +322 -0
- pulumi_gcp/cloudbuild/_inputs.py +6 -6
- pulumi_gcp/cloudbuild/outputs.py +4 -4
- pulumi_gcp/cloudrun/_inputs.py +6 -12
- pulumi_gcp/cloudrun/outputs.py +8 -16
- pulumi_gcp/cloudrunv2/_inputs.py +72 -15
- pulumi_gcp/cloudrunv2/outputs.py +82 -16
- pulumi_gcp/cloudrunv2/service.py +50 -4
- pulumi_gcp/cloudtasks/_inputs.py +630 -0
- pulumi_gcp/cloudtasks/outputs.py +479 -0
- pulumi_gcp/cloudtasks/queue.py +238 -0
- pulumi_gcp/compute/__init__.py +1 -0
- pulumi_gcp/compute/_inputs.py +2300 -257
- pulumi_gcp/compute/get_instance.py +4 -1
- pulumi_gcp/compute/health_check.py +114 -0
- pulumi_gcp/compute/instance.py +86 -4
- pulumi_gcp/compute/instance_template.py +66 -0
- pulumi_gcp/compute/interconnect.py +28 -21
- pulumi_gcp/compute/network_firewall_policy_with_rules.py +826 -0
- pulumi_gcp/compute/node_template.py +93 -0
- pulumi_gcp/compute/outputs.py +1491 -6
- 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 +77 -28
- pulumi_gcp/config/__init__.pyi +4 -0
- pulumi_gcp/config/vars.py +8 -0
- pulumi_gcp/container/_inputs.py +236 -3
- pulumi_gcp/container/attached_cluster.py +61 -8
- pulumi_gcp/container/outputs.py +276 -2
- pulumi_gcp/databasemigrationservice/_inputs.py +176 -148
- pulumi_gcp/databasemigrationservice/connection_profile.py +206 -0
- pulumi_gcp/databasemigrationservice/outputs.py +109 -87
- pulumi_gcp/dataloss/_inputs.py +353 -1
- pulumi_gcp/dataloss/outputs.py +274 -3
- pulumi_gcp/dataproc/_inputs.py +27 -27
- pulumi_gcp/dataproc/metastore_federation.py +8 -8
- pulumi_gcp/dataproc/metastore_service.py +2 -0
- pulumi_gcp/dataproc/outputs.py +18 -18
- pulumi_gcp/datastream/_inputs.py +69 -1
- pulumi_gcp/datastream/outputs.py +44 -2
- pulumi_gcp/datastream/stream.py +201 -7
- 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/discoveryengine/_inputs.py +188 -0
- pulumi_gcp/discoveryengine/data_store.py +14 -14
- pulumi_gcp/discoveryengine/outputs.py +153 -1
- pulumi_gcp/firebase/database_instance.py +7 -7
- pulumi_gcp/gkehub/_inputs.py +25 -1
- pulumi_gcp/gkehub/feature_membership.py +12 -6
- pulumi_gcp/gkehub/outputs.py +17 -1
- pulumi_gcp/gkeonprem/_inputs.py +3 -3
- pulumi_gcp/gkeonprem/outputs.py +2 -2
- pulumi_gcp/iam/_inputs.py +196 -0
- pulumi_gcp/iam/get_workload_identity_pool_provider.py +13 -3
- pulumi_gcp/iam/outputs.py +295 -0
- pulumi_gcp/iam/workload_identity_pool_provider.py +164 -3
- pulumi_gcp/kms/__init__.py +2 -0
- pulumi_gcp/kms/autokey_config.py +10 -2
- pulumi_gcp/kms/get_crypto_key_latest_version.py +222 -0
- pulumi_gcp/kms/get_crypto_key_versions.py +175 -0
- pulumi_gcp/kms/outputs.py +164 -0
- 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/active_directory.py +6 -6
- pulumi_gcp/netapp/backup.py +6 -6
- pulumi_gcp/netapp/backup_policy.py +6 -6
- pulumi_gcp/netapp/backup_vault.py +6 -6
- pulumi_gcp/netapp/storage_pool.py +4 -4
- pulumi_gcp/netapp/volume.py +108 -0
- pulumi_gcp/networkconnectivity/_inputs.py +21 -1
- pulumi_gcp/networkconnectivity/outputs.py +15 -1
- pulumi_gcp/networkconnectivity/spoke.py +8 -0
- pulumi_gcp/networksecurity/client_tls_policy.py +24 -22
- pulumi_gcp/networksecurity/server_tls_policy.py +20 -32
- pulumi_gcp/organizations/folder.py +52 -33
- pulumi_gcp/organizations/get_project.py +13 -3
- pulumi_gcp/organizations/project.py +88 -3
- pulumi_gcp/parallelstore/instance.py +121 -121
- pulumi_gcp/projects/iam_member_remove.py +26 -0
- pulumi_gcp/projects/usage_export_bucket.py +38 -0
- pulumi_gcp/provider.py +40 -0
- pulumi_gcp/pubsub/_inputs.py +40 -0
- pulumi_gcp/pubsub/outputs.py +51 -1
- pulumi_gcp/pubsub/subscription.py +6 -0
- pulumi_gcp/pulumi-plugin.json +1 -1
- pulumi_gcp/redis/_inputs.py +419 -0
- pulumi_gcp/redis/cluster.py +123 -0
- pulumi_gcp/redis/outputs.py +315 -0
- pulumi_gcp/securitycenter/__init__.py +2 -0
- pulumi_gcp/securitycenter/v2_folder_scc_big_query_export.py +857 -0
- pulumi_gcp/securitycenter/v2_organization_scc_big_query_exports.py +4 -4
- pulumi_gcp/securitycenter/v2_project_mute_config.py +2 -2
- pulumi_gcp/securitycenter/v2_project_scc_big_query_export.py +796 -0
- pulumi_gcp/vpcaccess/connector.py +21 -28
- {pulumi_gcp-8.1.0a1726293903.dist-info → pulumi_gcp-8.2.0.dist-info}/METADATA +1 -1
- {pulumi_gcp-8.1.0a1726293903.dist-info → pulumi_gcp-8.2.0.dist-info}/RECORD +128 -111
- {pulumi_gcp-8.1.0a1726293903.dist-info → pulumi_gcp-8.2.0.dist-info}/WHEEL +1 -1
- {pulumi_gcp-8.1.0a1726293903.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',
|
@@ -407,6 +427,8 @@ __all__ = [
|
|
407
427
|
'NodeGroupShareSettingsArgsDict',
|
408
428
|
'NodeGroupShareSettingsProjectMapArgs',
|
409
429
|
'NodeGroupShareSettingsProjectMapArgsDict',
|
430
|
+
'NodeTemplateAcceleratorArgs',
|
431
|
+
'NodeTemplateAcceleratorArgsDict',
|
410
432
|
'NodeTemplateNodeTypeFlexibilityArgs',
|
411
433
|
'NodeTemplateNodeTypeFlexibilityArgsDict',
|
412
434
|
'NodeTemplateServerBindingArgs',
|
@@ -5952,7 +5974,7 @@ if not MYPY:
|
|
5952
5974
|
is only applicable for UDP or TCP protocol. Each entry must be
|
5953
5975
|
either an integer or a range. If not specified, this rule
|
5954
5976
|
applies to connections through any port.
|
5955
|
-
Example inputs include: [
|
5977
|
+
Example inputs include: [22], [80, 443], and
|
5956
5978
|
["12345-12349"].
|
5957
5979
|
"""
|
5958
5980
|
elif False:
|
@@ -5972,7 +5994,7 @@ class FirewallAllowArgs:
|
|
5972
5994
|
is only applicable for UDP or TCP protocol. Each entry must be
|
5973
5995
|
either an integer or a range. If not specified, this rule
|
5974
5996
|
applies to connections through any port.
|
5975
|
-
Example inputs include: [
|
5997
|
+
Example inputs include: [22], [80, 443], and
|
5976
5998
|
["12345-12349"].
|
5977
5999
|
"""
|
5978
6000
|
pulumi.set(__self__, "protocol", protocol)
|
@@ -6002,7 +6024,7 @@ class FirewallAllowArgs:
|
|
6002
6024
|
is only applicable for UDP or TCP protocol. Each entry must be
|
6003
6025
|
either an integer or a range. If not specified, this rule
|
6004
6026
|
applies to connections through any port.
|
6005
|
-
Example inputs include: [
|
6027
|
+
Example inputs include: [22], [80, 443], and
|
6006
6028
|
["12345-12349"].
|
6007
6029
|
"""
|
6008
6030
|
return pulumi.get(self, "ports")
|
@@ -6027,7 +6049,7 @@ if not MYPY:
|
|
6027
6049
|
is only applicable for UDP or TCP protocol. Each entry must be
|
6028
6050
|
either an integer or a range. If not specified, this rule
|
6029
6051
|
applies to connections through any port.
|
6030
|
-
Example inputs include: [
|
6052
|
+
Example inputs include: [22], [80, 443], and
|
6031
6053
|
["12345-12349"].
|
6032
6054
|
"""
|
6033
6055
|
elif False:
|
@@ -6047,7 +6069,7 @@ class FirewallDenyArgs:
|
|
6047
6069
|
is only applicable for UDP or TCP protocol. Each entry must be
|
6048
6070
|
either an integer or a range. If not specified, this rule
|
6049
6071
|
applies to connections through any port.
|
6050
|
-
Example inputs include: [
|
6072
|
+
Example inputs include: [22], [80, 443], and
|
6051
6073
|
["12345-12349"].
|
6052
6074
|
"""
|
6053
6075
|
pulumi.set(__self__, "protocol", protocol)
|
@@ -6077,7 +6099,7 @@ class FirewallDenyArgs:
|
|
6077
6099
|
is only applicable for UDP or TCP protocol. Each entry must be
|
6078
6100
|
either an integer or a range. If not specified, this rule
|
6079
6101
|
applies to connections through any port.
|
6080
|
-
Example inputs include: [
|
6102
|
+
Example inputs include: [22], [80, 443], and
|
6081
6103
|
["12345-12349"].
|
6082
6104
|
"""
|
6083
6105
|
return pulumi.get(self, "ports")
|
@@ -8568,6 +8590,10 @@ if not MYPY:
|
|
8568
8590
|
alongside the new instance. Either `initialize_params` or `source` must be set.
|
8569
8591
|
Structure is documented below.
|
8570
8592
|
"""
|
8593
|
+
interface: NotRequired[pulumi.Input[str]]
|
8594
|
+
"""
|
8595
|
+
The disk interface used for attaching this disk. One of SCSI or NVME. (This field is shared with attached_disk and only used for specific cases, please don't specify this field without advice from Google.)
|
8596
|
+
"""
|
8571
8597
|
kms_key_self_link: NotRequired[pulumi.Input[str]]
|
8572
8598
|
"""
|
8573
8599
|
The self_link of the encryption key that is
|
@@ -8596,6 +8622,7 @@ class InstanceBootDiskArgs:
|
|
8596
8622
|
disk_encryption_key_raw: Optional[pulumi.Input[str]] = None,
|
8597
8623
|
disk_encryption_key_sha256: Optional[pulumi.Input[str]] = None,
|
8598
8624
|
initialize_params: Optional[pulumi.Input['InstanceBootDiskInitializeParamsArgs']] = None,
|
8625
|
+
interface: Optional[pulumi.Input[str]] = None,
|
8599
8626
|
kms_key_self_link: Optional[pulumi.Input[str]] = None,
|
8600
8627
|
mode: Optional[pulumi.Input[str]] = None,
|
8601
8628
|
source: Optional[pulumi.Input[str]] = None):
|
@@ -8615,6 +8642,7 @@ class InstanceBootDiskArgs:
|
|
8615
8642
|
:param pulumi.Input['InstanceBootDiskInitializeParamsArgs'] initialize_params: Parameters for a new disk that will be created
|
8616
8643
|
alongside the new instance. Either `initialize_params` or `source` must be set.
|
8617
8644
|
Structure is documented below.
|
8645
|
+
:param pulumi.Input[str] interface: The disk interface used for attaching this disk. One of SCSI or NVME. (This field is shared with attached_disk and only used for specific cases, please don't specify this field without advice from Google.)
|
8618
8646
|
:param pulumi.Input[str] kms_key_self_link: The self_link of the encryption key that is
|
8619
8647
|
stored in Google Cloud KMS to encrypt this disk. Only one of `kms_key_self_link`
|
8620
8648
|
and `disk_encryption_key_raw` may be set.
|
@@ -8634,6 +8662,8 @@ class InstanceBootDiskArgs:
|
|
8634
8662
|
pulumi.set(__self__, "disk_encryption_key_sha256", disk_encryption_key_sha256)
|
8635
8663
|
if initialize_params is not None:
|
8636
8664
|
pulumi.set(__self__, "initialize_params", initialize_params)
|
8665
|
+
if interface is not None:
|
8666
|
+
pulumi.set(__self__, "interface", interface)
|
8637
8667
|
if kms_key_self_link is not None:
|
8638
8668
|
pulumi.set(__self__, "kms_key_self_link", kms_key_self_link)
|
8639
8669
|
if mode is not None:
|
@@ -8711,6 +8741,18 @@ class InstanceBootDiskArgs:
|
|
8711
8741
|
def initialize_params(self, value: Optional[pulumi.Input['InstanceBootDiskInitializeParamsArgs']]):
|
8712
8742
|
pulumi.set(self, "initialize_params", value)
|
8713
8743
|
|
8744
|
+
@property
|
8745
|
+
@pulumi.getter
|
8746
|
+
def interface(self) -> Optional[pulumi.Input[str]]:
|
8747
|
+
"""
|
8748
|
+
The disk interface used for attaching this disk. One of SCSI or NVME. (This field is shared with attached_disk and only used for specific cases, please don't specify this field without advice from Google.)
|
8749
|
+
"""
|
8750
|
+
return pulumi.get(self, "interface")
|
8751
|
+
|
8752
|
+
@interface.setter
|
8753
|
+
def interface(self, value: Optional[pulumi.Input[str]]):
|
8754
|
+
pulumi.set(self, "interface", value)
|
8755
|
+
|
8714
8756
|
@property
|
8715
8757
|
@pulumi.getter(name="kmsKeySelfLink")
|
8716
8758
|
def kms_key_self_link(self) -> Optional[pulumi.Input[str]]:
|
@@ -8801,6 +8843,10 @@ if not MYPY:
|
|
8801
8843
|
"""
|
8802
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.
|
8803
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
|
+
"""
|
8804
8850
|
size: NotRequired[pulumi.Input[int]]
|
8805
8851
|
"""
|
8806
8852
|
The size of the image in gigabytes. If not specified, it
|
@@ -8829,6 +8875,7 @@ class InstanceBootDiskInitializeParamsArgs:
|
|
8829
8875
|
provisioned_iops: Optional[pulumi.Input[int]] = None,
|
8830
8876
|
provisioned_throughput: Optional[pulumi.Input[int]] = None,
|
8831
8877
|
resource_manager_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
8878
|
+
resource_policies: Optional[pulumi.Input[str]] = None,
|
8832
8879
|
size: Optional[pulumi.Input[int]] = None,
|
8833
8880
|
storage_pool: Optional[pulumi.Input[str]] = None,
|
8834
8881
|
type: Optional[pulumi.Input[str]] = None):
|
@@ -8861,6 +8908,7 @@ class InstanceBootDiskInitializeParamsArgs:
|
|
8861
8908
|
for an update of throughput every 4 hours. To update your hyperdisk more
|
8862
8909
|
frequently, you'll need to manually delete and recreate it.
|
8863
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.
|
8864
8912
|
:param pulumi.Input[int] size: The size of the image in gigabytes. If not specified, it
|
8865
8913
|
will inherit the size of its base image.
|
8866
8914
|
:param pulumi.Input[str] storage_pool: The URL of the storage pool in which the new disk is created.
|
@@ -8881,6 +8929,8 @@ class InstanceBootDiskInitializeParamsArgs:
|
|
8881
8929
|
pulumi.set(__self__, "provisioned_throughput", provisioned_throughput)
|
8882
8930
|
if resource_manager_tags is not None:
|
8883
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)
|
8884
8934
|
if size is not None:
|
8885
8935
|
pulumi.set(__self__, "size", size)
|
8886
8936
|
if storage_pool is not None:
|
@@ -8982,6 +9032,18 @@ class InstanceBootDiskInitializeParamsArgs:
|
|
8982
9032
|
def resource_manager_tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
|
8983
9033
|
pulumi.set(self, "resource_manager_tags", value)
|
8984
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
|
+
|
8985
9047
|
@property
|
8986
9048
|
@pulumi.getter
|
8987
9049
|
def size(self) -> Optional[pulumi.Input[int]]:
|
@@ -9300,6 +9362,10 @@ if not MYPY:
|
|
9300
9362
|
"""
|
9301
9363
|
Parameters with which a disk was created alongside the instance.
|
9302
9364
|
"""
|
9365
|
+
interface: NotRequired[pulumi.Input[str]]
|
9366
|
+
"""
|
9367
|
+
The disk interface used for attaching this disk. One of SCSI or NVME. (This field is shared with attached_disk and only used for specific cases, please don't specify this field without advice from Google.)
|
9368
|
+
"""
|
9303
9369
|
kms_key_self_link: NotRequired[pulumi.Input[str]]
|
9304
9370
|
"""
|
9305
9371
|
The self_link of the encryption key that is stored in Google Cloud KMS to encrypt this disk. Only one of kms_key_self_link and disk_encryption_key_raw may be set.
|
@@ -9323,6 +9389,7 @@ class InstanceFromMachineImageBootDiskArgs:
|
|
9323
9389
|
disk_encryption_key_raw: Optional[pulumi.Input[str]] = None,
|
9324
9390
|
disk_encryption_key_sha256: Optional[pulumi.Input[str]] = None,
|
9325
9391
|
initialize_params: Optional[pulumi.Input['InstanceFromMachineImageBootDiskInitializeParamsArgs']] = None,
|
9392
|
+
interface: Optional[pulumi.Input[str]] = None,
|
9326
9393
|
kms_key_self_link: Optional[pulumi.Input[str]] = None,
|
9327
9394
|
mode: Optional[pulumi.Input[str]] = None,
|
9328
9395
|
source: Optional[pulumi.Input[str]] = None):
|
@@ -9332,6 +9399,7 @@ class InstanceFromMachineImageBootDiskArgs:
|
|
9332
9399
|
:param pulumi.Input[str] disk_encryption_key_raw: A 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to encrypt this disk. Only one of kms_key_self_link and disk_encryption_key_raw may be set.
|
9333
9400
|
:param pulumi.Input[str] disk_encryption_key_sha256: The RFC 4648 base64 encoded SHA-256 hash of the customer-supplied encryption key that protects this resource.
|
9334
9401
|
:param pulumi.Input['InstanceFromMachineImageBootDiskInitializeParamsArgs'] initialize_params: Parameters with which a disk was created alongside the instance.
|
9402
|
+
:param pulumi.Input[str] interface: The disk interface used for attaching this disk. One of SCSI or NVME. (This field is shared with attached_disk and only used for specific cases, please don't specify this field without advice from Google.)
|
9335
9403
|
:param pulumi.Input[str] kms_key_self_link: The self_link of the encryption key that is stored in Google Cloud KMS to encrypt this disk. Only one of kms_key_self_link and disk_encryption_key_raw may be set.
|
9336
9404
|
:param pulumi.Input[str] mode: Read/write mode for the disk. One of "READ_ONLY" or "READ_WRITE".
|
9337
9405
|
:param pulumi.Input[str] source: The name or self_link of the disk attached to this instance.
|
@@ -9346,6 +9414,8 @@ class InstanceFromMachineImageBootDiskArgs:
|
|
9346
9414
|
pulumi.set(__self__, "disk_encryption_key_sha256", disk_encryption_key_sha256)
|
9347
9415
|
if initialize_params is not None:
|
9348
9416
|
pulumi.set(__self__, "initialize_params", initialize_params)
|
9417
|
+
if interface is not None:
|
9418
|
+
pulumi.set(__self__, "interface", interface)
|
9349
9419
|
if kms_key_self_link is not None:
|
9350
9420
|
pulumi.set(__self__, "kms_key_self_link", kms_key_self_link)
|
9351
9421
|
if mode is not None:
|
@@ -9413,6 +9483,18 @@ class InstanceFromMachineImageBootDiskArgs:
|
|
9413
9483
|
def initialize_params(self, value: Optional[pulumi.Input['InstanceFromMachineImageBootDiskInitializeParamsArgs']]):
|
9414
9484
|
pulumi.set(self, "initialize_params", value)
|
9415
9485
|
|
9486
|
+
@property
|
9487
|
+
@pulumi.getter
|
9488
|
+
def interface(self) -> Optional[pulumi.Input[str]]:
|
9489
|
+
"""
|
9490
|
+
The disk interface used for attaching this disk. One of SCSI or NVME. (This field is shared with attached_disk and only used for specific cases, please don't specify this field without advice from Google.)
|
9491
|
+
"""
|
9492
|
+
return pulumi.get(self, "interface")
|
9493
|
+
|
9494
|
+
@interface.setter
|
9495
|
+
def interface(self, value: Optional[pulumi.Input[str]]):
|
9496
|
+
pulumi.set(self, "interface", value)
|
9497
|
+
|
9416
9498
|
@property
|
9417
9499
|
@pulumi.getter(name="kmsKeySelfLink")
|
9418
9500
|
def kms_key_self_link(self) -> Optional[pulumi.Input[str]]:
|
@@ -9476,6 +9558,10 @@ if not MYPY:
|
|
9476
9558
|
"""
|
9477
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.
|
9478
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
|
+
"""
|
9479
9565
|
size: NotRequired[pulumi.Input[int]]
|
9480
9566
|
"""
|
9481
9567
|
The size of the image in gigabytes.
|
@@ -9500,6 +9586,7 @@ class InstanceFromMachineImageBootDiskInitializeParamsArgs:
|
|
9500
9586
|
provisioned_iops: Optional[pulumi.Input[int]] = None,
|
9501
9587
|
provisioned_throughput: Optional[pulumi.Input[int]] = None,
|
9502
9588
|
resource_manager_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
9589
|
+
resource_policies: Optional[pulumi.Input[str]] = None,
|
9503
9590
|
size: Optional[pulumi.Input[int]] = None,
|
9504
9591
|
storage_pool: Optional[pulumi.Input[str]] = None,
|
9505
9592
|
type: Optional[pulumi.Input[str]] = None):
|
@@ -9510,6 +9597,7 @@ class InstanceFromMachineImageBootDiskInitializeParamsArgs:
|
|
9510
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.
|
9511
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.
|
9512
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.
|
9513
9601
|
:param pulumi.Input[int] size: The size of the image in gigabytes.
|
9514
9602
|
:param pulumi.Input[str] storage_pool: The URL of the storage pool in which the new disk is created
|
9515
9603
|
:param pulumi.Input[str] type: The Google Compute Engine disk type. Such as pd-standard, pd-ssd or pd-balanced.
|
@@ -9526,6 +9614,8 @@ class InstanceFromMachineImageBootDiskInitializeParamsArgs:
|
|
9526
9614
|
pulumi.set(__self__, "provisioned_throughput", provisioned_throughput)
|
9527
9615
|
if resource_manager_tags is not None:
|
9528
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)
|
9529
9619
|
if size is not None:
|
9530
9620
|
pulumi.set(__self__, "size", size)
|
9531
9621
|
if storage_pool is not None:
|
@@ -9605,6 +9695,18 @@ class InstanceFromMachineImageBootDiskInitializeParamsArgs:
|
|
9605
9695
|
def resource_manager_tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
|
9606
9696
|
pulumi.set(self, "resource_manager_tags", value)
|
9607
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
|
+
|
9608
9710
|
@property
|
9609
9711
|
@pulumi.getter
|
9610
9712
|
def size(self) -> Optional[pulumi.Input[int]]:
|
@@ -11386,6 +11488,10 @@ if not MYPY:
|
|
11386
11488
|
"""
|
11387
11489
|
Parameters with which a disk was created alongside the instance.
|
11388
11490
|
"""
|
11491
|
+
interface: NotRequired[pulumi.Input[str]]
|
11492
|
+
"""
|
11493
|
+
The disk interface used for attaching this disk. One of SCSI or NVME. (This field is shared with attached_disk and only used for specific cases, please don't specify this field without advice from Google.)
|
11494
|
+
"""
|
11389
11495
|
kms_key_self_link: NotRequired[pulumi.Input[str]]
|
11390
11496
|
"""
|
11391
11497
|
The self_link of the encryption key that is stored in Google Cloud KMS to encrypt this disk. Only one of kms_key_self_link and disk_encryption_key_raw may be set.
|
@@ -11409,6 +11515,7 @@ class InstanceFromTemplateBootDiskArgs:
|
|
11409
11515
|
disk_encryption_key_raw: Optional[pulumi.Input[str]] = None,
|
11410
11516
|
disk_encryption_key_sha256: Optional[pulumi.Input[str]] = None,
|
11411
11517
|
initialize_params: Optional[pulumi.Input['InstanceFromTemplateBootDiskInitializeParamsArgs']] = None,
|
11518
|
+
interface: Optional[pulumi.Input[str]] = None,
|
11412
11519
|
kms_key_self_link: Optional[pulumi.Input[str]] = None,
|
11413
11520
|
mode: Optional[pulumi.Input[str]] = None,
|
11414
11521
|
source: Optional[pulumi.Input[str]] = None):
|
@@ -11418,6 +11525,7 @@ class InstanceFromTemplateBootDiskArgs:
|
|
11418
11525
|
:param pulumi.Input[str] disk_encryption_key_raw: A 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to encrypt this disk. Only one of kms_key_self_link and disk_encryption_key_raw may be set.
|
11419
11526
|
:param pulumi.Input[str] disk_encryption_key_sha256: The RFC 4648 base64 encoded SHA-256 hash of the customer-supplied encryption key that protects this resource.
|
11420
11527
|
:param pulumi.Input['InstanceFromTemplateBootDiskInitializeParamsArgs'] initialize_params: Parameters with which a disk was created alongside the instance.
|
11528
|
+
:param pulumi.Input[str] interface: The disk interface used for attaching this disk. One of SCSI or NVME. (This field is shared with attached_disk and only used for specific cases, please don't specify this field without advice from Google.)
|
11421
11529
|
:param pulumi.Input[str] kms_key_self_link: The self_link of the encryption key that is stored in Google Cloud KMS to encrypt this disk. Only one of kms_key_self_link and disk_encryption_key_raw may be set.
|
11422
11530
|
:param pulumi.Input[str] mode: Read/write mode for the disk. One of "READ_ONLY" or "READ_WRITE".
|
11423
11531
|
:param pulumi.Input[str] source: The name or self_link of the disk attached to this instance.
|
@@ -11432,6 +11540,8 @@ class InstanceFromTemplateBootDiskArgs:
|
|
11432
11540
|
pulumi.set(__self__, "disk_encryption_key_sha256", disk_encryption_key_sha256)
|
11433
11541
|
if initialize_params is not None:
|
11434
11542
|
pulumi.set(__self__, "initialize_params", initialize_params)
|
11543
|
+
if interface is not None:
|
11544
|
+
pulumi.set(__self__, "interface", interface)
|
11435
11545
|
if kms_key_self_link is not None:
|
11436
11546
|
pulumi.set(__self__, "kms_key_self_link", kms_key_self_link)
|
11437
11547
|
if mode is not None:
|
@@ -11499,6 +11609,18 @@ class InstanceFromTemplateBootDiskArgs:
|
|
11499
11609
|
def initialize_params(self, value: Optional[pulumi.Input['InstanceFromTemplateBootDiskInitializeParamsArgs']]):
|
11500
11610
|
pulumi.set(self, "initialize_params", value)
|
11501
11611
|
|
11612
|
+
@property
|
11613
|
+
@pulumi.getter
|
11614
|
+
def interface(self) -> Optional[pulumi.Input[str]]:
|
11615
|
+
"""
|
11616
|
+
The disk interface used for attaching this disk. One of SCSI or NVME. (This field is shared with attached_disk and only used for specific cases, please don't specify this field without advice from Google.)
|
11617
|
+
"""
|
11618
|
+
return pulumi.get(self, "interface")
|
11619
|
+
|
11620
|
+
@interface.setter
|
11621
|
+
def interface(self, value: Optional[pulumi.Input[str]]):
|
11622
|
+
pulumi.set(self, "interface", value)
|
11623
|
+
|
11502
11624
|
@property
|
11503
11625
|
@pulumi.getter(name="kmsKeySelfLink")
|
11504
11626
|
def kms_key_self_link(self) -> Optional[pulumi.Input[str]]:
|
@@ -11562,6 +11684,10 @@ if not MYPY:
|
|
11562
11684
|
"""
|
11563
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.
|
11564
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
|
+
"""
|
11565
11691
|
size: NotRequired[pulumi.Input[int]]
|
11566
11692
|
"""
|
11567
11693
|
The size of the image in gigabytes.
|
@@ -11586,6 +11712,7 @@ class InstanceFromTemplateBootDiskInitializeParamsArgs:
|
|
11586
11712
|
provisioned_iops: Optional[pulumi.Input[int]] = None,
|
11587
11713
|
provisioned_throughput: Optional[pulumi.Input[int]] = None,
|
11588
11714
|
resource_manager_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
11715
|
+
resource_policies: Optional[pulumi.Input[str]] = None,
|
11589
11716
|
size: Optional[pulumi.Input[int]] = None,
|
11590
11717
|
storage_pool: Optional[pulumi.Input[str]] = None,
|
11591
11718
|
type: Optional[pulumi.Input[str]] = None):
|
@@ -11596,6 +11723,7 @@ class InstanceFromTemplateBootDiskInitializeParamsArgs:
|
|
11596
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.
|
11597
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.
|
11598
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.
|
11599
11727
|
:param pulumi.Input[int] size: The size of the image in gigabytes.
|
11600
11728
|
:param pulumi.Input[str] storage_pool: The URL of the storage pool in which the new disk is created
|
11601
11729
|
:param pulumi.Input[str] type: The Google Compute Engine disk type. Such as pd-standard, pd-ssd or pd-balanced.
|
@@ -11612,6 +11740,8 @@ class InstanceFromTemplateBootDiskInitializeParamsArgs:
|
|
11612
11740
|
pulumi.set(__self__, "provisioned_throughput", provisioned_throughput)
|
11613
11741
|
if resource_manager_tags is not None:
|
11614
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)
|
11615
11745
|
if size is not None:
|
11616
11746
|
pulumi.set(__self__, "size", size)
|
11617
11747
|
if storage_pool is not None:
|
@@ -11691,6 +11821,18 @@ class InstanceFromTemplateBootDiskInitializeParamsArgs:
|
|
11691
11821
|
def resource_manager_tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
|
11692
11822
|
pulumi.set(self, "resource_manager_tags", value)
|
11693
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
|
+
|
11694
11836
|
@property
|
11695
11837
|
@pulumi.getter
|
11696
11838
|
def size(self) -> Optional[pulumi.Input[int]]:
|
@@ -14649,7 +14791,7 @@ if not MYPY:
|
|
14649
14791
|
subnetwork_project: NotRequired[pulumi.Input[str]]
|
14650
14792
|
"""
|
14651
14793
|
The project in which the subnetwork belongs.
|
14652
|
-
If the `subnetwork` is a self_link, this field is
|
14794
|
+
If the `subnetwork` is a self_link, this field is set to the project
|
14653
14795
|
defined in the subnetwork self_link. If the `subnetwork` is a name and this
|
14654
14796
|
field is not provided, the provider project is used.
|
14655
14797
|
"""
|
@@ -14707,7 +14849,7 @@ class InstanceNetworkInterfaceArgs:
|
|
14707
14849
|
network is in auto subnet mode, specifying the subnetwork is optional. If the network is
|
14708
14850
|
in custom subnet mode, specifying the subnetwork is required.
|
14709
14851
|
:param pulumi.Input[str] subnetwork_project: The project in which the subnetwork belongs.
|
14710
|
-
If the `subnetwork` is a self_link, this field is
|
14852
|
+
If the `subnetwork` is a self_link, this field is set to the project
|
14711
14853
|
defined in the subnetwork self_link. If the `subnetwork` is a name and this
|
14712
14854
|
field is not provided, the provider project is used.
|
14713
14855
|
"""
|
@@ -14944,7 +15086,7 @@ class InstanceNetworkInterfaceArgs:
|
|
14944
15086
|
def subnetwork_project(self) -> Optional[pulumi.Input[str]]:
|
14945
15087
|
"""
|
14946
15088
|
The project in which the subnetwork belongs.
|
14947
|
-
If the `subnetwork` is a self_link, this field is
|
15089
|
+
If the `subnetwork` is a self_link, this field is set to the project
|
14948
15090
|
defined in the subnetwork self_link. If the `subnetwork` is a name and this
|
14949
15091
|
field is not provided, the provider project is used.
|
14950
15092
|
"""
|
@@ -19252,311 +19394,1978 @@ if not MYPY:
|
|
19252
19394
|
class MangedSslCertificateManagedArgsDict(TypedDict):
|
19253
19395
|
domains: pulumi.Input[Sequence[pulumi.Input[str]]]
|
19254
19396
|
"""
|
19255
|
-
Domains for which a managed SSL certificate will be valid. Currently,
|
19256
|
-
there can be up to 100 domains in this list.
|
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]]:
|
20876
|
+
"""
|
20877
|
+
(Output)
|
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.
|
20881
|
+
"""
|
20882
|
+
return pulumi.get(self, "state")
|
20883
|
+
|
20884
|
+
@state.setter
|
20885
|
+
def state(self, value: Optional[pulumi.Input[str]]):
|
20886
|
+
pulumi.set(self, "state", value)
|
20887
|
+
|
20888
|
+
|
20889
|
+
if not MYPY:
|
20890
|
+
class NetworkFirewallPolicyWithRulesPredefinedRuleTargetSecureTagArgsDict(TypedDict):
|
20891
|
+
name: NotRequired[pulumi.Input[str]]
|
20892
|
+
"""
|
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
|
+
- - -
|
19257
20904
|
"""
|
19258
20905
|
elif False:
|
19259
|
-
|
20906
|
+
NetworkFirewallPolicyWithRulesPredefinedRuleTargetSecureTagArgsDict: TypeAlias = Mapping[str, Any]
|
19260
20907
|
|
19261
20908
|
@pulumi.input_type
|
19262
|
-
class
|
20909
|
+
class NetworkFirewallPolicyWithRulesPredefinedRuleTargetSecureTagArgs:
|
19263
20910
|
def __init__(__self__, *,
|
19264
|
-
|
20911
|
+
name: Optional[pulumi.Input[str]] = None,
|
20912
|
+
state: Optional[pulumi.Input[str]] = None):
|
19265
20913
|
"""
|
19266
|
-
:param pulumi.Input[
|
19267
|
-
|
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
|
+
- - -
|
19268
20922
|
"""
|
19269
|
-
|
20923
|
+
if name is not None:
|
20924
|
+
pulumi.set(__self__, "name", name)
|
20925
|
+
if state is not None:
|
20926
|
+
pulumi.set(__self__, "state", state)
|
19270
20927
|
|
19271
20928
|
@property
|
19272
20929
|
@pulumi.getter
|
19273
|
-
def
|
20930
|
+
def name(self) -> Optional[pulumi.Input[str]]:
|
19274
20931
|
"""
|
19275
|
-
|
19276
|
-
|
20932
|
+
Name of the secure tag, created with TagManager's TagValue API.
|
20933
|
+
@pattern tagValues/[0-9]+
|
19277
20934
|
"""
|
19278
|
-
return pulumi.get(self, "
|
20935
|
+
return pulumi.get(self, "name")
|
19279
20936
|
|
19280
|
-
@
|
19281
|
-
def
|
19282
|
-
pulumi.set(self, "
|
20937
|
+
@name.setter
|
20938
|
+
def name(self, value: Optional[pulumi.Input[str]]):
|
20939
|
+
pulumi.set(self, "name", value)
|
20940
|
+
|
20941
|
+
@property
|
20942
|
+
@pulumi.getter
|
20943
|
+
def state(self) -> Optional[pulumi.Input[str]]:
|
20944
|
+
"""
|
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
|
+
- - -
|
20951
|
+
"""
|
20952
|
+
return pulumi.get(self, "state")
|
20953
|
+
|
20954
|
+
@state.setter
|
20955
|
+
def state(self, value: Optional[pulumi.Input[str]]):
|
20956
|
+
pulumi.set(self, "state", value)
|
19283
20957
|
|
19284
20958
|
|
19285
20959
|
if not MYPY:
|
19286
|
-
class
|
19287
|
-
|
20960
|
+
class NetworkFirewallPolicyWithRulesRuleArgsDict(TypedDict):
|
20961
|
+
action: pulumi.Input[str]
|
19288
20962
|
"""
|
19289
|
-
|
19290
|
-
|
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".
|
19291
20965
|
"""
|
19292
|
-
|
20966
|
+
match: pulumi.Input['NetworkFirewallPolicyWithRulesRuleMatchArgsDict']
|
19293
20967
|
"""
|
19294
|
-
|
19295
|
-
|
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.
|
19296
20970
|
"""
|
19297
|
-
|
20971
|
+
priority: pulumi.Input[int]
|
19298
20972
|
"""
|
19299
|
-
|
19300
|
-
|
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.
|
19301
20976
|
"""
|
19302
|
-
|
20977
|
+
description: NotRequired[pulumi.Input[str]]
|
19303
20978
|
"""
|
19304
|
-
|
19305
|
-
The status of a connected endpoint to this network attachment.
|
20979
|
+
A description of the rule.
|
19306
20980
|
"""
|
19307
|
-
|
20981
|
+
direction: NotRequired[pulumi.Input[str]]
|
19308
20982
|
"""
|
19309
|
-
|
19310
|
-
|
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.
|
19311
21035
|
"""
|
19312
21036
|
elif False:
|
19313
|
-
|
21037
|
+
NetworkFirewallPolicyWithRulesRuleArgsDict: TypeAlias = Mapping[str, Any]
|
19314
21038
|
|
19315
21039
|
@pulumi.input_type
|
19316
|
-
class
|
21040
|
+
class NetworkFirewallPolicyWithRulesRuleArgs:
|
19317
21041
|
def __init__(__self__, *,
|
19318
|
-
|
19319
|
-
|
19320
|
-
|
19321
|
-
|
19322
|
-
|
19323
|
-
|
19324
|
-
|
19325
|
-
|
19326
|
-
|
19327
|
-
|
19328
|
-
|
19329
|
-
|
19330
|
-
|
19331
|
-
|
19332
|
-
|
19333
|
-
|
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.
|
19334
21094
|
"""
|
19335
|
-
|
19336
|
-
|
19337
|
-
|
19338
|
-
|
19339
|
-
|
19340
|
-
|
19341
|
-
|
19342
|
-
|
19343
|
-
|
19344
|
-
|
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)
|
19345
21116
|
|
19346
21117
|
@property
|
19347
|
-
@pulumi.getter
|
19348
|
-
def
|
21118
|
+
@pulumi.getter
|
21119
|
+
def action(self) -> pulumi.Input[str]:
|
19349
21120
|
"""
|
19350
|
-
|
19351
|
-
|
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".
|
19352
21123
|
"""
|
19353
|
-
return pulumi.get(self, "
|
21124
|
+
return pulumi.get(self, "action")
|
19354
21125
|
|
19355
|
-
@
|
19356
|
-
def
|
19357
|
-
pulumi.set(self, "
|
21126
|
+
@action.setter
|
21127
|
+
def action(self, value: pulumi.Input[str]):
|
21128
|
+
pulumi.set(self, "action", value)
|
19358
21129
|
|
19359
21130
|
@property
|
19360
|
-
@pulumi.getter
|
19361
|
-
def
|
21131
|
+
@pulumi.getter
|
21132
|
+
def match(self) -> pulumi.Input['NetworkFirewallPolicyWithRulesRuleMatchArgs']:
|
19362
21133
|
"""
|
19363
|
-
|
19364
|
-
|
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.
|
19365
21136
|
"""
|
19366
|
-
return pulumi.get(self, "
|
21137
|
+
return pulumi.get(self, "match")
|
19367
21138
|
|
19368
|
-
@
|
19369
|
-
def
|
19370
|
-
pulumi.set(self, "
|
21139
|
+
@match.setter
|
21140
|
+
def match(self, value: pulumi.Input['NetworkFirewallPolicyWithRulesRuleMatchArgs']):
|
21141
|
+
pulumi.set(self, "match", value)
|
19371
21142
|
|
19372
21143
|
@property
|
19373
|
-
@pulumi.getter
|
19374
|
-
def
|
21144
|
+
@pulumi.getter
|
21145
|
+
def priority(self) -> pulumi.Input[int]:
|
19375
21146
|
"""
|
19376
|
-
|
19377
|
-
|
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.
|
19378
21150
|
"""
|
19379
|
-
return pulumi.get(self, "
|
21151
|
+
return pulumi.get(self, "priority")
|
19380
21152
|
|
19381
|
-
@
|
19382
|
-
def
|
19383
|
-
pulumi.set(self, "
|
21153
|
+
@priority.setter
|
21154
|
+
def priority(self, value: pulumi.Input[int]):
|
21155
|
+
pulumi.set(self, "priority", value)
|
19384
21156
|
|
19385
21157
|
@property
|
19386
21158
|
@pulumi.getter
|
19387
|
-
def
|
21159
|
+
def description(self) -> Optional[pulumi.Input[str]]:
|
19388
21160
|
"""
|
19389
|
-
|
19390
|
-
The status of a connected endpoint to this network attachment.
|
21161
|
+
A description of the rule.
|
19391
21162
|
"""
|
19392
|
-
return pulumi.get(self, "
|
21163
|
+
return pulumi.get(self, "description")
|
19393
21164
|
|
19394
|
-
@
|
19395
|
-
def
|
19396
|
-
pulumi.set(self, "
|
21165
|
+
@description.setter
|
21166
|
+
def description(self, value: Optional[pulumi.Input[str]]):
|
21167
|
+
pulumi.set(self, "description", value)
|
19397
21168
|
|
19398
21169
|
@property
|
19399
21170
|
@pulumi.getter
|
19400
|
-
def
|
21171
|
+
def direction(self) -> Optional[pulumi.Input[str]]:
|
19401
21172
|
"""
|
19402
|
-
|
19403
|
-
|
21173
|
+
The direction in which this rule applies. If unspecified an INGRESS rule is created.
|
21174
|
+
Possible values are: `INGRESS`, `EGRESS`.
|
19404
21175
|
"""
|
19405
|
-
return pulumi.get(self, "
|
19406
|
-
|
19407
|
-
@subnetwork.setter
|
19408
|
-
def subnetwork(self, value: Optional[pulumi.Input[str]]):
|
19409
|
-
pulumi.set(self, "subnetwork", value)
|
21176
|
+
return pulumi.get(self, "direction")
|
19410
21177
|
|
21178
|
+
@direction.setter
|
21179
|
+
def direction(self, value: Optional[pulumi.Input[str]]):
|
21180
|
+
pulumi.set(self, "direction", value)
|
19411
21181
|
|
19412
|
-
|
19413
|
-
|
19414
|
-
|
21182
|
+
@property
|
21183
|
+
@pulumi.getter
|
21184
|
+
def disabled(self) -> Optional[pulumi.Input[bool]]:
|
19415
21185
|
"""
|
19416
|
-
|
19417
|
-
|
19418
|
-
|
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.
|
19419
21190
|
"""
|
19420
|
-
|
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]]:
|
19421
21200
|
"""
|
19422
|
-
|
19423
|
-
|
19424
|
-
|
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.
|
19425
21204
|
"""
|
19426
|
-
|
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]]:
|
19427
21214
|
"""
|
19428
|
-
|
19429
|
-
|
19430
|
-
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.
|
19431
21217
|
"""
|
19432
|
-
|
19433
|
-
NetworkEndpointListNetworkEndpointArgsDict: TypeAlias = Mapping[str, Any]
|
21218
|
+
return pulumi.get(self, "rule_name")
|
19434
21219
|
|
19435
|
-
@
|
19436
|
-
|
19437
|
-
|
19438
|
-
|
19439
|
-
|
19440
|
-
|
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]]:
|
19441
21227
|
"""
|
19442
|
-
|
19443
|
-
|
19444
|
-
|
19445
|
-
|
19446
|
-
This is required for network endpoints of type GCE_VM_IP_PORT.
|
19447
|
-
The instance must be in the same zone as the network endpoint group.
|
19448
|
-
:param pulumi.Input[int] port: Port number of network endpoint.
|
19449
|
-
**Note** `port` is required unless the Network Endpoint Group is created
|
19450
|
-
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'.
|
19451
21232
|
"""
|
19452
|
-
pulumi.
|
19453
|
-
|
19454
|
-
|
19455
|
-
|
19456
|
-
|
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)
|
19457
21238
|
|
19458
21239
|
@property
|
19459
|
-
@pulumi.getter(name="
|
19460
|
-
def
|
21240
|
+
@pulumi.getter(name="targetSecureTags")
|
21241
|
+
def target_secure_tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesRuleTargetSecureTagArgs']]]]:
|
19461
21242
|
"""
|
19462
|
-
|
19463
|
-
to
|
19464
|
-
|
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.
|
19465
21255
|
"""
|
19466
|
-
return pulumi.get(self, "
|
21256
|
+
return pulumi.get(self, "target_secure_tags")
|
19467
21257
|
|
19468
|
-
@
|
19469
|
-
def
|
19470
|
-
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)
|
19471
21261
|
|
19472
21262
|
@property
|
19473
|
-
@pulumi.getter
|
19474
|
-
def
|
21263
|
+
@pulumi.getter(name="targetServiceAccounts")
|
21264
|
+
def target_service_accounts(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
19475
21265
|
"""
|
19476
|
-
|
19477
|
-
|
19478
|
-
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.
|
19479
21268
|
"""
|
19480
|
-
return pulumi.get(self, "
|
21269
|
+
return pulumi.get(self, "target_service_accounts")
|
19481
21270
|
|
19482
|
-
@
|
19483
|
-
def
|
19484
|
-
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)
|
19485
21274
|
|
19486
21275
|
@property
|
19487
|
-
@pulumi.getter
|
19488
|
-
def
|
21276
|
+
@pulumi.getter(name="tlsInspect")
|
21277
|
+
def tls_inspect(self) -> Optional[pulumi.Input[bool]]:
|
19489
21278
|
"""
|
19490
|
-
|
19491
|
-
|
19492
|
-
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.
|
19493
21281
|
"""
|
19494
|
-
return pulumi.get(self, "
|
21282
|
+
return pulumi.get(self, "tls_inspect")
|
19495
21283
|
|
19496
|
-
@
|
19497
|
-
def
|
19498
|
-
pulumi.set(self, "
|
21284
|
+
@tls_inspect.setter
|
21285
|
+
def tls_inspect(self, value: Optional[pulumi.Input[bool]]):
|
21286
|
+
pulumi.set(self, "tls_inspect", value)
|
19499
21287
|
|
19500
21288
|
|
19501
21289
|
if not MYPY:
|
19502
|
-
class
|
19503
|
-
layer4_configs: pulumi.Input[Sequence[pulumi.Input['
|
21290
|
+
class NetworkFirewallPolicyWithRulesRuleMatchArgsDict(TypedDict):
|
21291
|
+
layer4_configs: pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigArgsDict']]]
|
19504
21292
|
"""
|
19505
21293
|
Pairs of IP protocols and ports that the rule should match.
|
21294
|
+
Structure is documented below.
|
19506
21295
|
"""
|
19507
21296
|
dest_address_groups: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
19508
21297
|
"""
|
19509
|
-
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.
|
19510
21300
|
"""
|
19511
21301
|
dest_fqdns: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
19512
21302
|
"""
|
19513
|
-
|
21303
|
+
Fully Qualified Domain Name (FQDN) which should be matched against
|
21304
|
+
traffic destination. Maximum number of destination fqdn allowed is 100.
|
19514
21305
|
"""
|
19515
21306
|
dest_ip_ranges: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
19516
21307
|
"""
|
19517
|
-
|
21308
|
+
Destination IP address range in CIDR format. Required for
|
21309
|
+
EGRESS rules.
|
19518
21310
|
"""
|
19519
21311
|
dest_region_codes: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
19520
21312
|
"""
|
19521
|
-
|
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.
|
19522
21317
|
"""
|
19523
21318
|
dest_threat_intelligences: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
19524
21319
|
"""
|
19525
|
-
|
21320
|
+
Names of Network Threat Intelligence lists.
|
21321
|
+
The IPs in these lists will be matched against traffic destination.
|
19526
21322
|
"""
|
19527
21323
|
src_address_groups: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
19528
21324
|
"""
|
19529
|
-
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.
|
19530
21327
|
"""
|
19531
21328
|
src_fqdns: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
19532
21329
|
"""
|
19533
|
-
|
21330
|
+
Fully Qualified Domain Name (FQDN) which should be matched against
|
21331
|
+
traffic source. Maximum number of source fqdn allowed is 100.
|
19534
21332
|
"""
|
19535
21333
|
src_ip_ranges: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
19536
21334
|
"""
|
19537
|
-
|
21335
|
+
Source IP address range in CIDR format. Required for
|
21336
|
+
INGRESS rules.
|
19538
21337
|
"""
|
19539
21338
|
src_region_codes: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
19540
21339
|
"""
|
19541
|
-
|
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.
|
19542
21344
|
"""
|
19543
|
-
src_secure_tags: NotRequired[pulumi.Input[Sequence[pulumi.Input['
|
21345
|
+
src_secure_tags: NotRequired[pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagArgsDict']]]]
|
19544
21346
|
"""
|
19545
|
-
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:
|
19546
21356
|
"""
|
19547
21357
|
src_threat_intelligences: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
19548
21358
|
"""
|
19549
|
-
|
19550
|
-
|
19551
|
-
The `layer4_configs` block supports:
|
21359
|
+
Names of Network Threat Intelligence lists.
|
21360
|
+
The IPs in these lists will be matched against traffic source.
|
19552
21361
|
"""
|
19553
21362
|
elif False:
|
19554
|
-
|
21363
|
+
NetworkFirewallPolicyWithRulesRuleMatchArgsDict: TypeAlias = Mapping[str, Any]
|
19555
21364
|
|
19556
21365
|
@pulumi.input_type
|
19557
|
-
class
|
21366
|
+
class NetworkFirewallPolicyWithRulesRuleMatchArgs:
|
19558
21367
|
def __init__(__self__, *,
|
19559
|
-
layer4_configs: pulumi.Input[Sequence[pulumi.Input['
|
21368
|
+
layer4_configs: pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigArgs']]],
|
19560
21369
|
dest_address_groups: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
19561
21370
|
dest_fqdns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
19562
21371
|
dest_ip_ranges: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
@@ -19566,23 +21375,44 @@ class NetworkFirewallPolicyRuleMatchArgs:
|
|
19566
21375
|
src_fqdns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
19567
21376
|
src_ip_ranges: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
19568
21377
|
src_region_codes: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
19569
|
-
src_secure_tags: Optional[pulumi.Input[Sequence[pulumi.Input['
|
21378
|
+
src_secure_tags: Optional[pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagArgs']]]] = None,
|
19570
21379
|
src_threat_intelligences: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
|
19571
21380
|
"""
|
19572
|
-
:param pulumi.Input[Sequence[pulumi.Input['
|
19573
|
-
|
19574
|
-
:param pulumi.Input[Sequence[pulumi.Input[str]]]
|
19575
|
-
|
19576
|
-
:param pulumi.Input[Sequence[pulumi.Input[str]]]
|
19577
|
-
|
19578
|
-
:param pulumi.Input[Sequence[pulumi.Input[str]]]
|
19579
|
-
|
19580
|
-
:param pulumi.Input[Sequence[pulumi.Input[str]]]
|
19581
|
-
|
19582
|
-
|
19583
|
-
|
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.
|
19584
21411
|
|
19585
|
-
|
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.
|
19586
21416
|
"""
|
19587
21417
|
pulumi.set(__self__, "layer4_configs", layer4_configs)
|
19588
21418
|
if dest_address_groups is not None:
|
@@ -19610,21 +21440,23 @@ class NetworkFirewallPolicyRuleMatchArgs:
|
|
19610
21440
|
|
19611
21441
|
@property
|
19612
21442
|
@pulumi.getter(name="layer4Configs")
|
19613
|
-
def layer4_configs(self) -> pulumi.Input[Sequence[pulumi.Input['
|
21443
|
+
def layer4_configs(self) -> pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigArgs']]]:
|
19614
21444
|
"""
|
19615
21445
|
Pairs of IP protocols and ports that the rule should match.
|
21446
|
+
Structure is documented below.
|
19616
21447
|
"""
|
19617
21448
|
return pulumi.get(self, "layer4_configs")
|
19618
21449
|
|
19619
21450
|
@layer4_configs.setter
|
19620
|
-
def layer4_configs(self, value: pulumi.Input[Sequence[pulumi.Input['
|
21451
|
+
def layer4_configs(self, value: pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigArgs']]]):
|
19621
21452
|
pulumi.set(self, "layer4_configs", value)
|
19622
21453
|
|
19623
21454
|
@property
|
19624
21455
|
@pulumi.getter(name="destAddressGroups")
|
19625
21456
|
def dest_address_groups(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
19626
21457
|
"""
|
19627
|
-
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.
|
19628
21460
|
"""
|
19629
21461
|
return pulumi.get(self, "dest_address_groups")
|
19630
21462
|
|
@@ -19636,7 +21468,8 @@ class NetworkFirewallPolicyRuleMatchArgs:
|
|
19636
21468
|
@pulumi.getter(name="destFqdns")
|
19637
21469
|
def dest_fqdns(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
19638
21470
|
"""
|
19639
|
-
|
21471
|
+
Fully Qualified Domain Name (FQDN) which should be matched against
|
21472
|
+
traffic destination. Maximum number of destination fqdn allowed is 100.
|
19640
21473
|
"""
|
19641
21474
|
return pulumi.get(self, "dest_fqdns")
|
19642
21475
|
|
@@ -19648,7 +21481,8 @@ class NetworkFirewallPolicyRuleMatchArgs:
|
|
19648
21481
|
@pulumi.getter(name="destIpRanges")
|
19649
21482
|
def dest_ip_ranges(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
19650
21483
|
"""
|
19651
|
-
|
21484
|
+
Destination IP address range in CIDR format. Required for
|
21485
|
+
EGRESS rules.
|
19652
21486
|
"""
|
19653
21487
|
return pulumi.get(self, "dest_ip_ranges")
|
19654
21488
|
|
@@ -19660,7 +21494,10 @@ class NetworkFirewallPolicyRuleMatchArgs:
|
|
19660
21494
|
@pulumi.getter(name="destRegionCodes")
|
19661
21495
|
def dest_region_codes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
19662
21496
|
"""
|
19663
|
-
|
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.
|
19664
21501
|
"""
|
19665
21502
|
return pulumi.get(self, "dest_region_codes")
|
19666
21503
|
|
@@ -19672,7 +21509,8 @@ class NetworkFirewallPolicyRuleMatchArgs:
|
|
19672
21509
|
@pulumi.getter(name="destThreatIntelligences")
|
19673
21510
|
def dest_threat_intelligences(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
19674
21511
|
"""
|
19675
|
-
|
21512
|
+
Names of Network Threat Intelligence lists.
|
21513
|
+
The IPs in these lists will be matched against traffic destination.
|
19676
21514
|
"""
|
19677
21515
|
return pulumi.get(self, "dest_threat_intelligences")
|
19678
21516
|
|
@@ -19684,7 +21522,8 @@ class NetworkFirewallPolicyRuleMatchArgs:
|
|
19684
21522
|
@pulumi.getter(name="srcAddressGroups")
|
19685
21523
|
def src_address_groups(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
19686
21524
|
"""
|
19687
|
-
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.
|
19688
21527
|
"""
|
19689
21528
|
return pulumi.get(self, "src_address_groups")
|
19690
21529
|
|
@@ -19696,7 +21535,8 @@ class NetworkFirewallPolicyRuleMatchArgs:
|
|
19696
21535
|
@pulumi.getter(name="srcFqdns")
|
19697
21536
|
def src_fqdns(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
19698
21537
|
"""
|
19699
|
-
|
21538
|
+
Fully Qualified Domain Name (FQDN) which should be matched against
|
21539
|
+
traffic source. Maximum number of source fqdn allowed is 100.
|
19700
21540
|
"""
|
19701
21541
|
return pulumi.get(self, "src_fqdns")
|
19702
21542
|
|
@@ -19708,7 +21548,8 @@ class NetworkFirewallPolicyRuleMatchArgs:
|
|
19708
21548
|
@pulumi.getter(name="srcIpRanges")
|
19709
21549
|
def src_ip_ranges(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
19710
21550
|
"""
|
19711
|
-
|
21551
|
+
Source IP address range in CIDR format. Required for
|
21552
|
+
INGRESS rules.
|
19712
21553
|
"""
|
19713
21554
|
return pulumi.get(self, "src_ip_ranges")
|
19714
21555
|
|
@@ -19720,7 +21561,10 @@ class NetworkFirewallPolicyRuleMatchArgs:
|
|
19720
21561
|
@pulumi.getter(name="srcRegionCodes")
|
19721
21562
|
def src_region_codes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
19722
21563
|
"""
|
19723
|
-
|
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.
|
19724
21568
|
"""
|
19725
21569
|
return pulumi.get(self, "src_region_codes")
|
19726
21570
|
|
@@ -19730,23 +21574,30 @@ class NetworkFirewallPolicyRuleMatchArgs:
|
|
19730
21574
|
|
19731
21575
|
@property
|
19732
21576
|
@pulumi.getter(name="srcSecureTags")
|
19733
|
-
def src_secure_tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['
|
21577
|
+
def src_secure_tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['NetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagArgs']]]]:
|
19734
21578
|
"""
|
19735
|
-
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:
|
19736
21588
|
"""
|
19737
21589
|
return pulumi.get(self, "src_secure_tags")
|
19738
21590
|
|
19739
21591
|
@src_secure_tags.setter
|
19740
|
-
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']]]]):
|
19741
21593
|
pulumi.set(self, "src_secure_tags", value)
|
19742
21594
|
|
19743
21595
|
@property
|
19744
21596
|
@pulumi.getter(name="srcThreatIntelligences")
|
19745
21597
|
def src_threat_intelligences(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
19746
21598
|
"""
|
19747
|
-
|
19748
|
-
|
19749
|
-
The `layer4_configs` block supports:
|
21599
|
+
Names of Network Threat Intelligence lists.
|
21600
|
+
The IPs in these lists will be matched against traffic source.
|
19750
21601
|
"""
|
19751
21602
|
return pulumi.get(self, "src_threat_intelligences")
|
19752
21603
|
|
@@ -19756,26 +21607,48 @@ class NetworkFirewallPolicyRuleMatchArgs:
|
|
19756
21607
|
|
19757
21608
|
|
19758
21609
|
if not MYPY:
|
19759
|
-
class
|
21610
|
+
class NetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigArgsDict(TypedDict):
|
19760
21611
|
ip_protocol: pulumi.Input[str]
|
19761
21612
|
"""
|
19762
|
-
|
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.
|
19763
21619
|
"""
|
19764
21620
|
ports: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
19765
21621
|
"""
|
19766
|
-
|
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"].
|
19767
21629
|
"""
|
19768
21630
|
elif False:
|
19769
|
-
|
21631
|
+
NetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigArgsDict: TypeAlias = Mapping[str, Any]
|
19770
21632
|
|
19771
21633
|
@pulumi.input_type
|
19772
|
-
class
|
21634
|
+
class NetworkFirewallPolicyWithRulesRuleMatchLayer4ConfigArgs:
|
19773
21635
|
def __init__(__self__, *,
|
19774
21636
|
ip_protocol: pulumi.Input[str],
|
19775
21637
|
ports: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
|
19776
21638
|
"""
|
19777
|
-
:param pulumi.Input[str] ip_protocol:
|
19778
|
-
|
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"].
|
19779
21652
|
"""
|
19780
21653
|
pulumi.set(__self__, "ip_protocol", ip_protocol)
|
19781
21654
|
if ports is not None:
|
@@ -19785,7 +21658,12 @@ class NetworkFirewallPolicyRuleMatchLayer4ConfigArgs:
|
|
19785
21658
|
@pulumi.getter(name="ipProtocol")
|
19786
21659
|
def ip_protocol(self) -> pulumi.Input[str]:
|
19787
21660
|
"""
|
19788
|
-
|
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.
|
19789
21667
|
"""
|
19790
21668
|
return pulumi.get(self, "ip_protocol")
|
19791
21669
|
|
@@ -19797,7 +21675,13 @@ class NetworkFirewallPolicyRuleMatchLayer4ConfigArgs:
|
|
19797
21675
|
@pulumi.getter
|
19798
21676
|
def ports(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
19799
21677
|
"""
|
19800
|
-
|
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"].
|
19801
21685
|
"""
|
19802
21686
|
return pulumi.get(self, "ports")
|
19803
21687
|
|
@@ -19807,48 +21691,61 @@ class NetworkFirewallPolicyRuleMatchLayer4ConfigArgs:
|
|
19807
21691
|
|
19808
21692
|
|
19809
21693
|
if not MYPY:
|
19810
|
-
class
|
19811
|
-
name: pulumi.Input[str]
|
21694
|
+
class NetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagArgsDict(TypedDict):
|
21695
|
+
name: NotRequired[pulumi.Input[str]]
|
19812
21696
|
"""
|
19813
|
-
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]+
|
19814
21699
|
"""
|
19815
21700
|
state: NotRequired[pulumi.Input[str]]
|
19816
21701
|
"""
|
19817
|
-
|
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.
|
19818
21706
|
"""
|
19819
21707
|
elif False:
|
19820
|
-
|
21708
|
+
NetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagArgsDict: TypeAlias = Mapping[str, Any]
|
19821
21709
|
|
19822
21710
|
@pulumi.input_type
|
19823
|
-
class
|
21711
|
+
class NetworkFirewallPolicyWithRulesRuleMatchSrcSecureTagArgs:
|
19824
21712
|
def __init__(__self__, *,
|
19825
|
-
name: pulumi.Input[str],
|
21713
|
+
name: Optional[pulumi.Input[str]] = None,
|
19826
21714
|
state: Optional[pulumi.Input[str]] = None):
|
19827
21715
|
"""
|
19828
|
-
:param pulumi.Input[str] name: Name of the secure tag, created with TagManager's TagValue API.
|
19829
|
-
|
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.
|
19830
21722
|
"""
|
19831
|
-
|
21723
|
+
if name is not None:
|
21724
|
+
pulumi.set(__self__, "name", name)
|
19832
21725
|
if state is not None:
|
19833
21726
|
pulumi.set(__self__, "state", state)
|
19834
21727
|
|
19835
21728
|
@property
|
19836
21729
|
@pulumi.getter
|
19837
|
-
def name(self) -> pulumi.Input[str]:
|
21730
|
+
def name(self) -> Optional[pulumi.Input[str]]:
|
19838
21731
|
"""
|
19839
|
-
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]+
|
19840
21734
|
"""
|
19841
21735
|
return pulumi.get(self, "name")
|
19842
21736
|
|
19843
21737
|
@name.setter
|
19844
|
-
def name(self, value: pulumi.Input[str]):
|
21738
|
+
def name(self, value: Optional[pulumi.Input[str]]):
|
19845
21739
|
pulumi.set(self, "name", value)
|
19846
21740
|
|
19847
21741
|
@property
|
19848
21742
|
@pulumi.getter
|
19849
21743
|
def state(self) -> Optional[pulumi.Input[str]]:
|
19850
21744
|
"""
|
19851
|
-
|
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.
|
19852
21749
|
"""
|
19853
21750
|
return pulumi.get(self, "state")
|
19854
21751
|
|
@@ -19858,48 +21755,67 @@ class NetworkFirewallPolicyRuleMatchSrcSecureTagArgs:
|
|
19858
21755
|
|
19859
21756
|
|
19860
21757
|
if not MYPY:
|
19861
|
-
class
|
19862
|
-
name: pulumi.Input[str]
|
21758
|
+
class NetworkFirewallPolicyWithRulesRuleTargetSecureTagArgsDict(TypedDict):
|
21759
|
+
name: NotRequired[pulumi.Input[str]]
|
19863
21760
|
"""
|
19864
|
-
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]+
|
19865
21763
|
"""
|
19866
21764
|
state: NotRequired[pulumi.Input[str]]
|
19867
21765
|
"""
|
19868
|
-
|
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
|
+
- - -
|
19869
21772
|
"""
|
19870
21773
|
elif False:
|
19871
|
-
|
21774
|
+
NetworkFirewallPolicyWithRulesRuleTargetSecureTagArgsDict: TypeAlias = Mapping[str, Any]
|
19872
21775
|
|
19873
21776
|
@pulumi.input_type
|
19874
|
-
class
|
21777
|
+
class NetworkFirewallPolicyWithRulesRuleTargetSecureTagArgs:
|
19875
21778
|
def __init__(__self__, *,
|
19876
|
-
name: pulumi.Input[str],
|
21779
|
+
name: Optional[pulumi.Input[str]] = None,
|
19877
21780
|
state: Optional[pulumi.Input[str]] = None):
|
19878
21781
|
"""
|
19879
|
-
:param pulumi.Input[str] name: Name of the secure tag, created with TagManager's TagValue API.
|
19880
|
-
|
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
|
+
- - -
|
19881
21790
|
"""
|
19882
|
-
|
21791
|
+
if name is not None:
|
21792
|
+
pulumi.set(__self__, "name", name)
|
19883
21793
|
if state is not None:
|
19884
21794
|
pulumi.set(__self__, "state", state)
|
19885
21795
|
|
19886
21796
|
@property
|
19887
21797
|
@pulumi.getter
|
19888
|
-
def name(self) -> pulumi.Input[str]:
|
21798
|
+
def name(self) -> Optional[pulumi.Input[str]]:
|
19889
21799
|
"""
|
19890
|
-
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]+
|
19891
21802
|
"""
|
19892
21803
|
return pulumi.get(self, "name")
|
19893
21804
|
|
19894
21805
|
@name.setter
|
19895
|
-
def name(self, value: pulumi.Input[str]):
|
21806
|
+
def name(self, value: Optional[pulumi.Input[str]]):
|
19896
21807
|
pulumi.set(self, "name", value)
|
19897
21808
|
|
19898
21809
|
@property
|
19899
21810
|
@pulumi.getter
|
19900
21811
|
def state(self) -> Optional[pulumi.Input[str]]:
|
19901
21812
|
"""
|
19902
|
-
|
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
|
+
- - -
|
19903
21819
|
"""
|
19904
21820
|
return pulumi.get(self, "state")
|
19905
21821
|
|
@@ -20142,6 +22058,64 @@ class NodeGroupShareSettingsProjectMapArgs:
|
|
20142
22058
|
pulumi.set(self, "project_id", value)
|
20143
22059
|
|
20144
22060
|
|
22061
|
+
if not MYPY:
|
22062
|
+
class NodeTemplateAcceleratorArgsDict(TypedDict):
|
22063
|
+
accelerator_count: NotRequired[pulumi.Input[int]]
|
22064
|
+
"""
|
22065
|
+
The number of the guest accelerator cards exposed to this
|
22066
|
+
node template.
|
22067
|
+
"""
|
22068
|
+
accelerator_type: NotRequired[pulumi.Input[str]]
|
22069
|
+
"""
|
22070
|
+
Full or partial URL of the accelerator type resource to expose
|
22071
|
+
to this node template.
|
22072
|
+
"""
|
22073
|
+
elif False:
|
22074
|
+
NodeTemplateAcceleratorArgsDict: TypeAlias = Mapping[str, Any]
|
22075
|
+
|
22076
|
+
@pulumi.input_type
|
22077
|
+
class NodeTemplateAcceleratorArgs:
|
22078
|
+
def __init__(__self__, *,
|
22079
|
+
accelerator_count: Optional[pulumi.Input[int]] = None,
|
22080
|
+
accelerator_type: Optional[pulumi.Input[str]] = None):
|
22081
|
+
"""
|
22082
|
+
:param pulumi.Input[int] accelerator_count: The number of the guest accelerator cards exposed to this
|
22083
|
+
node template.
|
22084
|
+
:param pulumi.Input[str] accelerator_type: Full or partial URL of the accelerator type resource to expose
|
22085
|
+
to this node template.
|
22086
|
+
"""
|
22087
|
+
if accelerator_count is not None:
|
22088
|
+
pulumi.set(__self__, "accelerator_count", accelerator_count)
|
22089
|
+
if accelerator_type is not None:
|
22090
|
+
pulumi.set(__self__, "accelerator_type", accelerator_type)
|
22091
|
+
|
22092
|
+
@property
|
22093
|
+
@pulumi.getter(name="acceleratorCount")
|
22094
|
+
def accelerator_count(self) -> Optional[pulumi.Input[int]]:
|
22095
|
+
"""
|
22096
|
+
The number of the guest accelerator cards exposed to this
|
22097
|
+
node template.
|
22098
|
+
"""
|
22099
|
+
return pulumi.get(self, "accelerator_count")
|
22100
|
+
|
22101
|
+
@accelerator_count.setter
|
22102
|
+
def accelerator_count(self, value: Optional[pulumi.Input[int]]):
|
22103
|
+
pulumi.set(self, "accelerator_count", value)
|
22104
|
+
|
22105
|
+
@property
|
22106
|
+
@pulumi.getter(name="acceleratorType")
|
22107
|
+
def accelerator_type(self) -> Optional[pulumi.Input[str]]:
|
22108
|
+
"""
|
22109
|
+
Full or partial URL of the accelerator type resource to expose
|
22110
|
+
to this node template.
|
22111
|
+
"""
|
22112
|
+
return pulumi.get(self, "accelerator_type")
|
22113
|
+
|
22114
|
+
@accelerator_type.setter
|
22115
|
+
def accelerator_type(self, value: Optional[pulumi.Input[str]]):
|
22116
|
+
pulumi.set(self, "accelerator_type", value)
|
22117
|
+
|
22118
|
+
|
20145
22119
|
if not MYPY:
|
20146
22120
|
class NodeTemplateNodeTypeFlexibilityArgsDict(TypedDict):
|
20147
22121
|
cpus: NotRequired[pulumi.Input[str]]
|
@@ -45066,11 +47040,26 @@ class SecurityScanConfigScheduleArgs:
|
|
45066
47040
|
|
45067
47041
|
if not MYPY:
|
45068
47042
|
class ServiceAttachmentConnectedEndpointArgsDict(TypedDict):
|
47043
|
+
consumer_network: NotRequired[pulumi.Input[str]]
|
47044
|
+
"""
|
47045
|
+
(Output)
|
47046
|
+
The url of the consumer network.
|
47047
|
+
"""
|
45069
47048
|
endpoint: NotRequired[pulumi.Input[str]]
|
45070
47049
|
"""
|
45071
47050
|
(Output)
|
45072
47051
|
The URL of the consumer forwarding rule.
|
45073
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
|
+
"""
|
45074
47063
|
status: NotRequired[pulumi.Input[str]]
|
45075
47064
|
"""
|
45076
47065
|
(Output)
|
@@ -45083,20 +47072,48 @@ elif False:
|
|
45083
47072
|
@pulumi.input_type
|
45084
47073
|
class ServiceAttachmentConnectedEndpointArgs:
|
45085
47074
|
def __init__(__self__, *,
|
47075
|
+
consumer_network: Optional[pulumi.Input[str]] = None,
|
45086
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,
|
45087
47079
|
status: Optional[pulumi.Input[str]] = None):
|
45088
47080
|
"""
|
47081
|
+
:param pulumi.Input[str] consumer_network: (Output)
|
47082
|
+
The url of the consumer network.
|
45089
47083
|
:param pulumi.Input[str] endpoint: (Output)
|
45090
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.
|
45091
47089
|
:param pulumi.Input[str] status: (Output)
|
45092
47090
|
The status of the connection from the consumer forwarding rule to
|
45093
47091
|
this service attachment.
|
45094
47092
|
"""
|
47093
|
+
if consumer_network is not None:
|
47094
|
+
pulumi.set(__self__, "consumer_network", consumer_network)
|
45095
47095
|
if endpoint is not None:
|
45096
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)
|
45097
47101
|
if status is not None:
|
45098
47102
|
pulumi.set(__self__, "status", status)
|
45099
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
|
+
|
45100
47117
|
@property
|
45101
47118
|
@pulumi.getter
|
45102
47119
|
def endpoint(self) -> Optional[pulumi.Input[str]]:
|
@@ -45110,6 +47127,32 @@ class ServiceAttachmentConnectedEndpointArgs:
|
|
45110
47127
|
def endpoint(self, value: Optional[pulumi.Input[str]]):
|
45111
47128
|
pulumi.set(self, "endpoint", value)
|
45112
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
|
+
|
45113
47156
|
@property
|
45114
47157
|
@pulumi.getter
|
45115
47158
|
def status(self) -> Optional[pulumi.Input[str]]:
|