pulumi-gcp 7.23.0a1715695885__py3-none-any.whl → 7.24.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 +40 -0
- pulumi_gcp/accesscontextmanager/access_policy_iam_binding.py +12 -12
- pulumi_gcp/accesscontextmanager/access_policy_iam_member.py +12 -12
- pulumi_gcp/accesscontextmanager/access_policy_iam_policy.py +12 -12
- pulumi_gcp/apigateway/api_config_iam_binding.py +8 -8
- pulumi_gcp/apigateway/api_config_iam_member.py +8 -8
- pulumi_gcp/apigateway/api_config_iam_policy.py +8 -8
- pulumi_gcp/apigateway/api_iam_binding.py +8 -8
- pulumi_gcp/apigateway/api_iam_member.py +8 -8
- pulumi_gcp/apigateway/api_iam_policy.py +8 -8
- pulumi_gcp/apigateway/gateway_iam_binding.py +8 -8
- pulumi_gcp/apigateway/gateway_iam_member.py +8 -8
- pulumi_gcp/apigateway/gateway_iam_policy.py +8 -8
- pulumi_gcp/apigee/environment_iam_binding.py +12 -12
- pulumi_gcp/apigee/environment_iam_member.py +12 -12
- pulumi_gcp/apigee/environment_iam_policy.py +12 -12
- pulumi_gcp/artifactregistry/repository_iam_binding.py +12 -12
- pulumi_gcp/artifactregistry/repository_iam_member.py +12 -12
- pulumi_gcp/artifactregistry/repository_iam_policy.py +12 -12
- pulumi_gcp/bigquery/_inputs.py +16 -0
- pulumi_gcp/bigquery/connection.py +126 -0
- pulumi_gcp/bigquery/connection_iam_binding.py +12 -12
- pulumi_gcp/bigquery/connection_iam_member.py +12 -12
- pulumi_gcp/bigquery/connection_iam_policy.py +12 -12
- pulumi_gcp/bigquery/dataset_access.py +56 -0
- pulumi_gcp/bigquery/dataset_iam_binding.py +12 -12
- pulumi_gcp/bigquery/dataset_iam_member.py +12 -12
- pulumi_gcp/bigquery/dataset_iam_policy.py +12 -12
- pulumi_gcp/bigquery/iam_binding.py +12 -12
- pulumi_gcp/bigquery/iam_member.py +12 -12
- pulumi_gcp/bigquery/iam_policy.py +12 -12
- pulumi_gcp/bigquery/outputs.py +16 -0
- pulumi_gcp/bigquery/routine.py +2 -2
- pulumi_gcp/bigquery/table.py +47 -0
- pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_binding.py +12 -12
- pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_member.py +12 -12
- pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_policy.py +12 -12
- pulumi_gcp/bigqueryanalyticshub/listing_iam_binding.py +12 -12
- pulumi_gcp/bigqueryanalyticshub/listing_iam_member.py +12 -12
- pulumi_gcp/bigqueryanalyticshub/listing_iam_policy.py +12 -12
- pulumi_gcp/bigquerydatapolicy/data_policy_iam_binding.py +12 -12
- pulumi_gcp/bigquerydatapolicy/data_policy_iam_member.py +12 -12
- pulumi_gcp/bigquerydatapolicy/data_policy_iam_policy.py +12 -12
- pulumi_gcp/bigtable/__init__.py +1 -0
- pulumi_gcp/bigtable/_inputs.py +101 -0
- pulumi_gcp/bigtable/authorized_view.py +440 -0
- pulumi_gcp/bigtable/instance_iam_binding.py +12 -12
- pulumi_gcp/bigtable/instance_iam_member.py +12 -12
- pulumi_gcp/bigtable/instance_iam_policy.py +12 -12
- pulumi_gcp/bigtable/outputs.py +119 -0
- pulumi_gcp/bigtable/table_iam_binding.py +12 -12
- pulumi_gcp/bigtable/table_iam_member.py +12 -12
- pulumi_gcp/bigtable/table_iam_policy.py +12 -12
- pulumi_gcp/billing/account_iam_binding.py +12 -12
- pulumi_gcp/billing/account_iam_member.py +12 -12
- pulumi_gcp/billing/account_iam_policy.py +12 -12
- pulumi_gcp/billing/project_info.py +4 -4
- pulumi_gcp/binaryauthorization/attestor_iam_binding.py +12 -12
- pulumi_gcp/binaryauthorization/attestor_iam_member.py +12 -12
- pulumi_gcp/binaryauthorization/attestor_iam_policy.py +12 -12
- pulumi_gcp/certificateauthority/ca_pool_iam_binding.py +12 -12
- pulumi_gcp/certificateauthority/ca_pool_iam_member.py +12 -12
- pulumi_gcp/certificateauthority/ca_pool_iam_policy.py +12 -12
- pulumi_gcp/certificateauthority/certificate_template.py +70 -0
- pulumi_gcp/certificateauthority/certificate_template_iam_binding.py +12 -12
- pulumi_gcp/certificateauthority/certificate_template_iam_member.py +12 -12
- pulumi_gcp/certificateauthority/certificate_template_iam_policy.py +12 -12
- pulumi_gcp/cloudasset/__init__.py +1 -0
- pulumi_gcp/cloudasset/get_search_all_resources.py +197 -0
- pulumi_gcp/cloudasset/outputs.py +184 -0
- pulumi_gcp/cloudbuildv2/connection_iam_binding.py +12 -12
- pulumi_gcp/cloudbuildv2/connection_iam_member.py +12 -12
- pulumi_gcp/cloudbuildv2/connection_iam_policy.py +12 -12
- pulumi_gcp/cloudbuildv2/repository.py +2 -2
- pulumi_gcp/clouddeploy/_inputs.py +96 -0
- pulumi_gcp/clouddeploy/custom_target_type.py +46 -0
- pulumi_gcp/clouddeploy/delivery_pipeline.py +7 -7
- pulumi_gcp/clouddeploy/outputs.py +96 -1
- pulumi_gcp/clouddeploy/target.py +54 -7
- pulumi_gcp/cloudfunctions/function.py +21 -0
- pulumi_gcp/cloudfunctions/function_iam_binding.py +12 -12
- pulumi_gcp/cloudfunctions/function_iam_member.py +12 -12
- pulumi_gcp/cloudfunctions/function_iam_policy.py +12 -12
- pulumi_gcp/cloudfunctionsv2/function_iam_binding.py +12 -12
- pulumi_gcp/cloudfunctionsv2/function_iam_member.py +12 -12
- pulumi_gcp/cloudfunctionsv2/function_iam_policy.py +12 -12
- pulumi_gcp/cloudrun/iam_binding.py +12 -12
- pulumi_gcp/cloudrun/iam_member.py +12 -12
- pulumi_gcp/cloudrun/iam_policy.py +12 -12
- pulumi_gcp/cloudrunv2/job_iam_binding.py +12 -12
- pulumi_gcp/cloudrunv2/job_iam_member.py +12 -12
- pulumi_gcp/cloudrunv2/job_iam_policy.py +12 -12
- pulumi_gcp/cloudrunv2/service_iam_binding.py +12 -12
- pulumi_gcp/cloudrunv2/service_iam_member.py +12 -12
- pulumi_gcp/cloudrunv2/service_iam_policy.py +12 -12
- pulumi_gcp/cloudtasks/queue_iam_binding.py +12 -12
- pulumi_gcp/cloudtasks/queue_iam_member.py +12 -12
- pulumi_gcp/cloudtasks/queue_iam_policy.py +12 -12
- pulumi_gcp/compute/__init__.py +1 -0
- pulumi_gcp/compute/_inputs.py +1412 -42
- pulumi_gcp/compute/backend_service.py +315 -0
- pulumi_gcp/compute/disk_iam_binding.py +12 -12
- pulumi_gcp/compute/disk_iam_member.py +12 -12
- pulumi_gcp/compute/disk_iam_policy.py +12 -12
- pulumi_gcp/compute/firewall_policy_rule.py +125 -10
- pulumi_gcp/compute/forwarding_rule.py +6 -6
- pulumi_gcp/compute/get_network_endpoint_group.py +2 -2
- pulumi_gcp/compute/get_region_network_endpoint_group.py +2 -2
- pulumi_gcp/compute/get_router_nat.py +11 -1
- pulumi_gcp/compute/get_snapshot.py +2 -0
- pulumi_gcp/compute/image_iam_binding.py +12 -12
- pulumi_gcp/compute/image_iam_member.py +12 -12
- pulumi_gcp/compute/image_iam_policy.py +12 -12
- pulumi_gcp/compute/instance_iam_binding.py +12 -12
- pulumi_gcp/compute/instance_iam_member.py +12 -12
- pulumi_gcp/compute/instance_iam_policy.py +12 -12
- pulumi_gcp/compute/interconnect.py +1683 -0
- pulumi_gcp/compute/machine_image_iam_binding.py +8 -8
- pulumi_gcp/compute/machine_image_iam_member.py +8 -8
- pulumi_gcp/compute/machine_image_iam_policy.py +8 -8
- pulumi_gcp/compute/network_firewall_policy_rule.py +125 -10
- pulumi_gcp/compute/outputs.py +1385 -0
- pulumi_gcp/compute/region_backend_service.py +315 -0
- pulumi_gcp/compute/region_disk_iam_binding.py +12 -12
- pulumi_gcp/compute/region_disk_iam_member.py +12 -12
- pulumi_gcp/compute/region_disk_iam_policy.py +12 -12
- pulumi_gcp/compute/region_network_firewall_policy_rule.py +125 -10
- pulumi_gcp/compute/region_security_policy_rule.py +230 -1
- pulumi_gcp/compute/router_nat.py +68 -0
- pulumi_gcp/compute/router_peer.py +88 -0
- pulumi_gcp/compute/security_policy.py +49 -0
- pulumi_gcp/compute/snapshot_iam_binding.py +12 -12
- pulumi_gcp/compute/snapshot_iam_member.py +12 -12
- pulumi_gcp/compute/snapshot_iam_policy.py +12 -12
- pulumi_gcp/compute/subnetwork_iam_binding.py +12 -12
- pulumi_gcp/compute/subnetwork_iam_member.py +12 -12
- pulumi_gcp/compute/subnetwork_iam_policy.py +12 -12
- pulumi_gcp/compute/target_instance.py +4 -4
- pulumi_gcp/compute/target_pool.py +21 -21
- pulumi_gcp/container/_inputs.py +81 -5
- pulumi_gcp/container/outputs.py +109 -8
- pulumi_gcp/containeranalysis/note_iam_binding.py +12 -12
- pulumi_gcp/containeranalysis/note_iam_member.py +12 -12
- pulumi_gcp/containeranalysis/note_iam_policy.py +12 -12
- pulumi_gcp/databasemigrationservice/connection_profile.py +6 -6
- pulumi_gcp/datacatalog/entry_group_iam_binding.py +12 -12
- pulumi_gcp/datacatalog/entry_group_iam_member.py +12 -12
- pulumi_gcp/datacatalog/entry_group_iam_policy.py +12 -12
- pulumi_gcp/datacatalog/policy_tag_iam_binding.py +12 -12
- pulumi_gcp/datacatalog/policy_tag_iam_member.py +12 -12
- pulumi_gcp/datacatalog/policy_tag_iam_policy.py +12 -12
- pulumi_gcp/datacatalog/tag_template_iam_binding.py +12 -12
- pulumi_gcp/datacatalog/tag_template_iam_member.py +12 -12
- pulumi_gcp/datacatalog/tag_template_iam_policy.py +12 -12
- pulumi_gcp/datacatalog/taxonomy_iam_binding.py +12 -12
- pulumi_gcp/datacatalog/taxonomy_iam_member.py +12 -12
- pulumi_gcp/datacatalog/taxonomy_iam_policy.py +12 -12
- pulumi_gcp/dataflow/flex_template_job.py +7 -7
- pulumi_gcp/dataflow/job.py +7 -7
- pulumi_gcp/dataloss/_inputs.py +420 -13
- pulumi_gcp/dataloss/outputs.py +439 -13
- pulumi_gcp/dataplex/asset_iam_binding.py +12 -12
- pulumi_gcp/dataplex/asset_iam_member.py +12 -12
- pulumi_gcp/dataplex/asset_iam_policy.py +12 -12
- pulumi_gcp/dataplex/datascan_iam_binding.py +12 -12
- pulumi_gcp/dataplex/datascan_iam_member.py +12 -12
- pulumi_gcp/dataplex/datascan_iam_policy.py +12 -12
- pulumi_gcp/dataplex/lake_iam_binding.py +12 -12
- pulumi_gcp/dataplex/lake_iam_member.py +12 -12
- pulumi_gcp/dataplex/lake_iam_policy.py +12 -12
- pulumi_gcp/dataplex/task.py +16 -16
- pulumi_gcp/dataplex/task_iam_binding.py +12 -12
- pulumi_gcp/dataplex/task_iam_member.py +12 -12
- pulumi_gcp/dataplex/task_iam_policy.py +12 -12
- pulumi_gcp/dataplex/zone_iam_binding.py +12 -12
- pulumi_gcp/dataplex/zone_iam_member.py +12 -12
- pulumi_gcp/dataplex/zone_iam_policy.py +12 -12
- pulumi_gcp/dataproc/_inputs.py +190 -46
- pulumi_gcp/dataproc/autoscaling_policy_iam_binding.py +12 -12
- pulumi_gcp/dataproc/autoscaling_policy_iam_member.py +12 -12
- pulumi_gcp/dataproc/autoscaling_policy_iam_policy.py +12 -12
- pulumi_gcp/dataproc/cluster_iam_binding.py +12 -12
- pulumi_gcp/dataproc/cluster_iam_member.py +12 -12
- pulumi_gcp/dataproc/cluster_iam_policy.py +12 -12
- pulumi_gcp/dataproc/get_metastore_federation_iam_policy.py +26 -2
- pulumi_gcp/dataproc/job_iam_binding.py +12 -12
- pulumi_gcp/dataproc/job_iam_member.py +12 -12
- pulumi_gcp/dataproc/job_iam_policy.py +12 -12
- pulumi_gcp/dataproc/metastore_federation.py +4 -0
- pulumi_gcp/dataproc/metastore_federation_iam_binding.py +208 -0
- pulumi_gcp/dataproc/metastore_federation_iam_member.py +208 -0
- pulumi_gcp/dataproc/metastore_federation_iam_policy.py +208 -0
- pulumi_gcp/dataproc/metastore_service_iam_binding.py +12 -12
- pulumi_gcp/dataproc/metastore_service_iam_member.py +12 -12
- pulumi_gcp/dataproc/metastore_service_iam_policy.py +12 -12
- pulumi_gcp/dataproc/outputs.py +182 -46
- pulumi_gcp/datastream/_inputs.py +1789 -820
- pulumi_gcp/datastream/connection_profile.py +163 -3
- pulumi_gcp/datastream/outputs.py +864 -5
- pulumi_gcp/datastream/stream.py +174 -0
- pulumi_gcp/dns/dns_managed_zone_iam_binding.py +12 -12
- pulumi_gcp/dns/dns_managed_zone_iam_member.py +12 -12
- pulumi_gcp/dns/dns_managed_zone_iam_policy.py +12 -12
- pulumi_gcp/endpoints/service_iam_binding.py +12 -12
- pulumi_gcp/endpoints/service_iam_member.py +12 -12
- pulumi_gcp/endpoints/service_iam_policy.py +12 -12
- pulumi_gcp/firestore/field.py +4 -4
- pulumi_gcp/folder/iam_audit_config.py +23 -23
- pulumi_gcp/folder/iam_member.py +16 -16
- pulumi_gcp/folder/iam_policy.py +16 -16
- pulumi_gcp/gkebackup/backup_plan_iam_binding.py +12 -12
- pulumi_gcp/gkebackup/backup_plan_iam_member.py +12 -12
- pulumi_gcp/gkebackup/backup_plan_iam_policy.py +12 -12
- pulumi_gcp/gkehub/feature_iam_binding.py +12 -12
- pulumi_gcp/gkehub/feature_iam_member.py +12 -12
- pulumi_gcp/gkehub/feature_iam_policy.py +12 -12
- pulumi_gcp/gkehub/membership_binding.py +6 -6
- pulumi_gcp/gkehub/membership_iam_binding.py +12 -12
- pulumi_gcp/gkehub/membership_iam_member.py +12 -12
- pulumi_gcp/gkehub/membership_iam_policy.py +12 -12
- pulumi_gcp/gkehub/membership_rbac_role_binding.py +4 -4
- pulumi_gcp/gkehub/namespace.py +4 -4
- pulumi_gcp/gkehub/scope_iam_binding.py +12 -12
- pulumi_gcp/gkehub/scope_iam_member.py +12 -12
- pulumi_gcp/gkehub/scope_iam_policy.py +12 -12
- pulumi_gcp/gkehub/scope_rbac_role_binding.py +4 -4
- pulumi_gcp/healthcare/consent_store_iam_binding.py +12 -12
- pulumi_gcp/healthcare/consent_store_iam_member.py +12 -12
- pulumi_gcp/healthcare/consent_store_iam_policy.py +12 -12
- pulumi_gcp/healthcare/dataset_iam_binding.py +12 -12
- pulumi_gcp/healthcare/dataset_iam_member.py +12 -12
- pulumi_gcp/healthcare/dataset_iam_policy.py +12 -12
- pulumi_gcp/healthcare/dicom_store_iam_binding.py +12 -12
- pulumi_gcp/healthcare/dicom_store_iam_member.py +12 -12
- pulumi_gcp/healthcare/dicom_store_iam_policy.py +12 -12
- pulumi_gcp/healthcare/fhir_store_iam_binding.py +12 -12
- pulumi_gcp/healthcare/fhir_store_iam_member.py +12 -12
- pulumi_gcp/healthcare/fhir_store_iam_policy.py +12 -12
- pulumi_gcp/healthcare/hl7_store_iam_binding.py +12 -12
- pulumi_gcp/healthcare/hl7_store_iam_member.py +12 -12
- pulumi_gcp/healthcare/hl7_store_iam_policy.py +12 -12
- pulumi_gcp/iam/_inputs.py +191 -2
- pulumi_gcp/iam/outputs.py +197 -2
- pulumi_gcp/iam/workforce_pool_provider.py +245 -0
- pulumi_gcp/iap/app_engine_service_iam_binding.py +12 -12
- pulumi_gcp/iap/app_engine_service_iam_member.py +12 -12
- pulumi_gcp/iap/app_engine_service_iam_policy.py +12 -12
- pulumi_gcp/iap/app_engine_version_iam_binding.py +12 -12
- pulumi_gcp/iap/app_engine_version_iam_member.py +12 -12
- pulumi_gcp/iap/app_engine_version_iam_policy.py +12 -12
- pulumi_gcp/iap/tunnel_dest_group.py +2 -2
- pulumi_gcp/iap/tunnel_dest_group_iam_binding.py +12 -12
- pulumi_gcp/iap/tunnel_dest_group_iam_member.py +12 -12
- pulumi_gcp/iap/tunnel_dest_group_iam_policy.py +12 -12
- pulumi_gcp/iap/tunnel_iam_binding.py +12 -12
- pulumi_gcp/iap/tunnel_iam_member.py +12 -12
- pulumi_gcp/iap/tunnel_iam_policy.py +12 -12
- pulumi_gcp/iap/tunnel_instance_iam_binding.py +12 -12
- pulumi_gcp/iap/tunnel_instance_iam_member.py +12 -12
- pulumi_gcp/iap/tunnel_instance_iam_policy.py +12 -12
- pulumi_gcp/iap/web_backend_service_iam_binding.py +12 -12
- pulumi_gcp/iap/web_backend_service_iam_member.py +12 -12
- pulumi_gcp/iap/web_backend_service_iam_policy.py +12 -12
- pulumi_gcp/iap/web_iam_binding.py +12 -12
- pulumi_gcp/iap/web_iam_member.py +12 -12
- pulumi_gcp/iap/web_iam_policy.py +12 -12
- pulumi_gcp/iap/web_region_backend_service_iam_binding.py +12 -12
- pulumi_gcp/iap/web_region_backend_service_iam_member.py +12 -12
- pulumi_gcp/iap/web_region_backend_service_iam_policy.py +12 -12
- pulumi_gcp/iap/web_type_app_enging_iam_binding.py +12 -12
- pulumi_gcp/iap/web_type_app_enging_iam_member.py +12 -12
- pulumi_gcp/iap/web_type_app_enging_iam_policy.py +12 -12
- pulumi_gcp/iap/web_type_compute_iam_binding.py +12 -12
- pulumi_gcp/iap/web_type_compute_iam_member.py +12 -12
- pulumi_gcp/iap/web_type_compute_iam_policy.py +12 -12
- pulumi_gcp/integrationconnectors/__init__.py +1 -0
- pulumi_gcp/integrationconnectors/managed_zone.py +753 -0
- pulumi_gcp/kms/key_ring_iam_binding.py +12 -12
- pulumi_gcp/kms/key_ring_iam_member.py +12 -12
- pulumi_gcp/kms/key_ring_iam_policy.py +12 -12
- pulumi_gcp/netapp/storage_pool.py +7 -7
- pulumi_gcp/netapp/volume.py +4 -4
- pulumi_gcp/networkconnectivity/__init__.py +1 -0
- pulumi_gcp/networkconnectivity/regional_endpoint.py +946 -0
- pulumi_gcp/networksecurity/firewall_endpoint.py +34 -0
- pulumi_gcp/networksecurity/firewall_endpoint_association.py +24 -0
- pulumi_gcp/networksecurity/gateway_security_policy.py +4 -4
- pulumi_gcp/networksecurity/security_profile.py +16 -0
- pulumi_gcp/networksecurity/security_profile_group.py +18 -0
- pulumi_gcp/networksecurity/tls_inspection_policy.py +435 -5
- pulumi_gcp/networkservices/__init__.py +1 -0
- pulumi_gcp/networkservices/_inputs.py +254 -0
- pulumi_gcp/networkservices/lb_traffic_extension.py +1181 -0
- pulumi_gcp/networkservices/outputs.py +265 -0
- pulumi_gcp/notebooks/instance_iam_binding.py +12 -12
- pulumi_gcp/notebooks/instance_iam_member.py +12 -12
- pulumi_gcp/notebooks/instance_iam_policy.py +12 -12
- pulumi_gcp/notebooks/runtime_iam_binding.py +12 -12
- pulumi_gcp/notebooks/runtime_iam_member.py +12 -12
- pulumi_gcp/notebooks/runtime_iam_policy.py +12 -12
- pulumi_gcp/organizations/_inputs.py +10 -0
- pulumi_gcp/organizations/iam_member.py +16 -16
- pulumi_gcp/organizations/iam_policy.py +16 -16
- pulumi_gcp/organizations/outputs.py +10 -0
- pulumi_gcp/orgpolicy/policy.py +2 -2
- pulumi_gcp/projects/iam_audit_config.py +23 -23
- pulumi_gcp/projects/iam_binding.py +23 -23
- pulumi_gcp/projects/iam_member.py +23 -23
- pulumi_gcp/projects/iam_policy.py +16 -16
- pulumi_gcp/projects/service.py +2 -43
- pulumi_gcp/pubsub/schema_iam_binding.py +12 -12
- pulumi_gcp/pubsub/schema_iam_member.py +12 -12
- pulumi_gcp/pubsub/schema_iam_policy.py +12 -12
- pulumi_gcp/pubsub/subscription.py +4 -4
- pulumi_gcp/pubsub/subscription_iam_binding.py +12 -12
- pulumi_gcp/pubsub/subscription_iam_member.py +12 -12
- pulumi_gcp/pubsub/subscription_iam_policy.py +12 -12
- pulumi_gcp/pubsub/topic_iam_binding.py +12 -12
- pulumi_gcp/pubsub/topic_iam_member.py +12 -12
- pulumi_gcp/pubsub/topic_iam_policy.py +12 -12
- pulumi_gcp/pulumi-plugin.json +1 -1
- pulumi_gcp/secretmanager/secret_iam_binding.py +12 -12
- pulumi_gcp/secretmanager/secret_iam_member.py +12 -12
- pulumi_gcp/secretmanager/secret_iam_policy.py +12 -12
- pulumi_gcp/servicedirectory/namespace_iam_binding.py +8 -8
- pulumi_gcp/servicedirectory/namespace_iam_member.py +8 -8
- pulumi_gcp/servicedirectory/namespace_iam_policy.py +8 -8
- pulumi_gcp/servicedirectory/service_iam_binding.py +8 -8
- pulumi_gcp/servicedirectory/service_iam_member.py +8 -8
- pulumi_gcp/servicedirectory/service_iam_policy.py +8 -8
- pulumi_gcp/sourcerepo/repository_iam_binding.py +12 -12
- pulumi_gcp/sourcerepo/repository_iam_member.py +12 -12
- pulumi_gcp/sourcerepo/repository_iam_policy.py +12 -12
- pulumi_gcp/spanner/database_iam_binding.py +12 -12
- pulumi_gcp/spanner/database_iam_member.py +12 -12
- pulumi_gcp/spanner/database_iam_policy.py +12 -12
- pulumi_gcp/spanner/instance_iam_binding.py +12 -12
- pulumi_gcp/spanner/instance_iam_member.py +12 -12
- pulumi_gcp/spanner/instance_iam_policy.py +12 -12
- pulumi_gcp/storage/_inputs.py +12 -10
- pulumi_gcp/storage/bucket.py +44 -0
- pulumi_gcp/storage/bucket_iam_binding.py +12 -12
- pulumi_gcp/storage/bucket_iam_member.py +12 -12
- pulumi_gcp/storage/bucket_iam_policy.py +12 -12
- pulumi_gcp/storage/outputs.py +12 -10
- pulumi_gcp/tags/tag_key_iam_binding.py +12 -12
- pulumi_gcp/tags/tag_key_iam_member.py +12 -12
- pulumi_gcp/tags/tag_key_iam_policy.py +12 -12
- pulumi_gcp/tags/tag_value_iam_binding.py +12 -12
- pulumi_gcp/tags/tag_value_iam_member.py +12 -12
- pulumi_gcp/tags/tag_value_iam_policy.py +12 -12
- {pulumi_gcp-7.23.0a1715695885.dist-info → pulumi_gcp-7.24.0.dist-info}/METADATA +1 -1
- {pulumi_gcp-7.23.0a1715695885.dist-info → pulumi_gcp-7.24.0.dist-info}/RECORD +355 -349
- {pulumi_gcp-7.23.0a1715695885.dist-info → pulumi_gcp-7.24.0.dist-info}/WHEEL +0 -0
- {pulumi_gcp-7.23.0a1715695885.dist-info → pulumi_gcp-7.24.0.dist-info}/top_level.txt +0 -0
@@ -23,8 +23,10 @@ class RegionSecurityPolicyRuleArgs:
|
|
23
23
|
description: Optional[pulumi.Input[str]] = None,
|
24
24
|
match: Optional[pulumi.Input['RegionSecurityPolicyRuleMatchArgs']] = None,
|
25
25
|
network_match: Optional[pulumi.Input['RegionSecurityPolicyRuleNetworkMatchArgs']] = None,
|
26
|
+
preconfigured_waf_config: Optional[pulumi.Input['RegionSecurityPolicyRulePreconfiguredWafConfigArgs']] = None,
|
26
27
|
preview: Optional[pulumi.Input[bool]] = None,
|
27
|
-
project: Optional[pulumi.Input[str]] = None
|
28
|
+
project: Optional[pulumi.Input[str]] = None,
|
29
|
+
rate_limit_options: Optional[pulumi.Input['RegionSecurityPolicyRuleRateLimitOptionsArgs']] = None):
|
28
30
|
"""
|
29
31
|
The set of arguments for constructing a RegionSecurityPolicyRule resource.
|
30
32
|
:param pulumi.Input[str] action: The Action to perform when the rule is matched. The following are the valid actions:
|
@@ -54,9 +56,14 @@ class RegionSecurityPolicyRuleArgs:
|
|
54
56
|
networkMatch: srcIpRanges: - "192.0.2.0/24" - "198.51.100.0/24" userDefinedFields: - name: "ipv4_fragment_offset" values: - "1-0x1fff"
|
55
57
|
The above match condition matches packets with a source IP in 192.0.2.0/24 or 198.51.100.0/24 and a user-defined field named "ipv4_fragment_offset" with a value between 1 and 0x1fff inclusive
|
56
58
|
Structure is documented below.
|
59
|
+
:param pulumi.Input['RegionSecurityPolicyRulePreconfiguredWafConfigArgs'] preconfigured_waf_config: Preconfigured WAF configuration to be applied for the rule.
|
60
|
+
If the rule does not evaluate preconfigured WAF rules, i.e., if evaluatePreconfiguredWaf() is not used, this field will have no effect.
|
61
|
+
Structure is documented below.
|
57
62
|
:param pulumi.Input[bool] preview: If set to true, the specified action is not enforced.
|
58
63
|
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
59
64
|
If it is not provided, the provider project is used.
|
65
|
+
:param pulumi.Input['RegionSecurityPolicyRuleRateLimitOptionsArgs'] rate_limit_options: Must be specified if the action is "rate_based_ban" or "throttle". Cannot be specified for any other actions.
|
66
|
+
Structure is documented below.
|
60
67
|
"""
|
61
68
|
pulumi.set(__self__, "action", action)
|
62
69
|
pulumi.set(__self__, "priority", priority)
|
@@ -68,10 +75,14 @@ class RegionSecurityPolicyRuleArgs:
|
|
68
75
|
pulumi.set(__self__, "match", match)
|
69
76
|
if network_match is not None:
|
70
77
|
pulumi.set(__self__, "network_match", network_match)
|
78
|
+
if preconfigured_waf_config is not None:
|
79
|
+
pulumi.set(__self__, "preconfigured_waf_config", preconfigured_waf_config)
|
71
80
|
if preview is not None:
|
72
81
|
pulumi.set(__self__, "preview", preview)
|
73
82
|
if project is not None:
|
74
83
|
pulumi.set(__self__, "project", project)
|
84
|
+
if rate_limit_options is not None:
|
85
|
+
pulumi.set(__self__, "rate_limit_options", rate_limit_options)
|
75
86
|
|
76
87
|
@property
|
77
88
|
@pulumi.getter
|
@@ -177,6 +188,20 @@ class RegionSecurityPolicyRuleArgs:
|
|
177
188
|
def network_match(self, value: Optional[pulumi.Input['RegionSecurityPolicyRuleNetworkMatchArgs']]):
|
178
189
|
pulumi.set(self, "network_match", value)
|
179
190
|
|
191
|
+
@property
|
192
|
+
@pulumi.getter(name="preconfiguredWafConfig")
|
193
|
+
def preconfigured_waf_config(self) -> Optional[pulumi.Input['RegionSecurityPolicyRulePreconfiguredWafConfigArgs']]:
|
194
|
+
"""
|
195
|
+
Preconfigured WAF configuration to be applied for the rule.
|
196
|
+
If the rule does not evaluate preconfigured WAF rules, i.e., if evaluatePreconfiguredWaf() is not used, this field will have no effect.
|
197
|
+
Structure is documented below.
|
198
|
+
"""
|
199
|
+
return pulumi.get(self, "preconfigured_waf_config")
|
200
|
+
|
201
|
+
@preconfigured_waf_config.setter
|
202
|
+
def preconfigured_waf_config(self, value: Optional[pulumi.Input['RegionSecurityPolicyRulePreconfiguredWafConfigArgs']]):
|
203
|
+
pulumi.set(self, "preconfigured_waf_config", value)
|
204
|
+
|
180
205
|
@property
|
181
206
|
@pulumi.getter
|
182
207
|
def preview(self) -> Optional[pulumi.Input[bool]]:
|
@@ -202,6 +227,19 @@ class RegionSecurityPolicyRuleArgs:
|
|
202
227
|
def project(self, value: Optional[pulumi.Input[str]]):
|
203
228
|
pulumi.set(self, "project", value)
|
204
229
|
|
230
|
+
@property
|
231
|
+
@pulumi.getter(name="rateLimitOptions")
|
232
|
+
def rate_limit_options(self) -> Optional[pulumi.Input['RegionSecurityPolicyRuleRateLimitOptionsArgs']]:
|
233
|
+
"""
|
234
|
+
Must be specified if the action is "rate_based_ban" or "throttle". Cannot be specified for any other actions.
|
235
|
+
Structure is documented below.
|
236
|
+
"""
|
237
|
+
return pulumi.get(self, "rate_limit_options")
|
238
|
+
|
239
|
+
@rate_limit_options.setter
|
240
|
+
def rate_limit_options(self, value: Optional[pulumi.Input['RegionSecurityPolicyRuleRateLimitOptionsArgs']]):
|
241
|
+
pulumi.set(self, "rate_limit_options", value)
|
242
|
+
|
205
243
|
|
206
244
|
@pulumi.input_type
|
207
245
|
class _RegionSecurityPolicyRuleState:
|
@@ -210,9 +248,11 @@ class _RegionSecurityPolicyRuleState:
|
|
210
248
|
description: Optional[pulumi.Input[str]] = None,
|
211
249
|
match: Optional[pulumi.Input['RegionSecurityPolicyRuleMatchArgs']] = None,
|
212
250
|
network_match: Optional[pulumi.Input['RegionSecurityPolicyRuleNetworkMatchArgs']] = None,
|
251
|
+
preconfigured_waf_config: Optional[pulumi.Input['RegionSecurityPolicyRulePreconfiguredWafConfigArgs']] = None,
|
213
252
|
preview: Optional[pulumi.Input[bool]] = None,
|
214
253
|
priority: Optional[pulumi.Input[int]] = None,
|
215
254
|
project: Optional[pulumi.Input[str]] = None,
|
255
|
+
rate_limit_options: Optional[pulumi.Input['RegionSecurityPolicyRuleRateLimitOptionsArgs']] = None,
|
216
256
|
region: Optional[pulumi.Input[str]] = None,
|
217
257
|
security_policy: Optional[pulumi.Input[str]] = None):
|
218
258
|
"""
|
@@ -236,12 +276,17 @@ class _RegionSecurityPolicyRuleState:
|
|
236
276
|
networkMatch: srcIpRanges: - "192.0.2.0/24" - "198.51.100.0/24" userDefinedFields: - name: "ipv4_fragment_offset" values: - "1-0x1fff"
|
237
277
|
The above match condition matches packets with a source IP in 192.0.2.0/24 or 198.51.100.0/24 and a user-defined field named "ipv4_fragment_offset" with a value between 1 and 0x1fff inclusive
|
238
278
|
Structure is documented below.
|
279
|
+
:param pulumi.Input['RegionSecurityPolicyRulePreconfiguredWafConfigArgs'] preconfigured_waf_config: Preconfigured WAF configuration to be applied for the rule.
|
280
|
+
If the rule does not evaluate preconfigured WAF rules, i.e., if evaluatePreconfiguredWaf() is not used, this field will have no effect.
|
281
|
+
Structure is documented below.
|
239
282
|
:param pulumi.Input[bool] preview: If set to true, the specified action is not enforced.
|
240
283
|
:param pulumi.Input[int] priority: An integer indicating the priority of a rule in the list.
|
241
284
|
The priority must be a positive value between 0 and 2147483647.
|
242
285
|
Rules are evaluated from highest to lowest priority where 0 is the highest priority and 2147483647 is the lowest priority.
|
243
286
|
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
244
287
|
If it is not provided, the provider project is used.
|
288
|
+
:param pulumi.Input['RegionSecurityPolicyRuleRateLimitOptionsArgs'] rate_limit_options: Must be specified if the action is "rate_based_ban" or "throttle". Cannot be specified for any other actions.
|
289
|
+
Structure is documented below.
|
245
290
|
:param pulumi.Input[str] region: The Region in which the created Region Security Policy rule should reside.
|
246
291
|
:param pulumi.Input[str] security_policy: The name of the security policy this rule belongs to.
|
247
292
|
|
@@ -256,12 +301,16 @@ class _RegionSecurityPolicyRuleState:
|
|
256
301
|
pulumi.set(__self__, "match", match)
|
257
302
|
if network_match is not None:
|
258
303
|
pulumi.set(__self__, "network_match", network_match)
|
304
|
+
if preconfigured_waf_config is not None:
|
305
|
+
pulumi.set(__self__, "preconfigured_waf_config", preconfigured_waf_config)
|
259
306
|
if preview is not None:
|
260
307
|
pulumi.set(__self__, "preview", preview)
|
261
308
|
if priority is not None:
|
262
309
|
pulumi.set(__self__, "priority", priority)
|
263
310
|
if project is not None:
|
264
311
|
pulumi.set(__self__, "project", project)
|
312
|
+
if rate_limit_options is not None:
|
313
|
+
pulumi.set(__self__, "rate_limit_options", rate_limit_options)
|
265
314
|
if region is not None:
|
266
315
|
pulumi.set(__self__, "region", region)
|
267
316
|
if security_policy is not None:
|
@@ -330,6 +379,20 @@ class _RegionSecurityPolicyRuleState:
|
|
330
379
|
def network_match(self, value: Optional[pulumi.Input['RegionSecurityPolicyRuleNetworkMatchArgs']]):
|
331
380
|
pulumi.set(self, "network_match", value)
|
332
381
|
|
382
|
+
@property
|
383
|
+
@pulumi.getter(name="preconfiguredWafConfig")
|
384
|
+
def preconfigured_waf_config(self) -> Optional[pulumi.Input['RegionSecurityPolicyRulePreconfiguredWafConfigArgs']]:
|
385
|
+
"""
|
386
|
+
Preconfigured WAF configuration to be applied for the rule.
|
387
|
+
If the rule does not evaluate preconfigured WAF rules, i.e., if evaluatePreconfiguredWaf() is not used, this field will have no effect.
|
388
|
+
Structure is documented below.
|
389
|
+
"""
|
390
|
+
return pulumi.get(self, "preconfigured_waf_config")
|
391
|
+
|
392
|
+
@preconfigured_waf_config.setter
|
393
|
+
def preconfigured_waf_config(self, value: Optional[pulumi.Input['RegionSecurityPolicyRulePreconfiguredWafConfigArgs']]):
|
394
|
+
pulumi.set(self, "preconfigured_waf_config", value)
|
395
|
+
|
333
396
|
@property
|
334
397
|
@pulumi.getter
|
335
398
|
def preview(self) -> Optional[pulumi.Input[bool]]:
|
@@ -369,6 +432,19 @@ class _RegionSecurityPolicyRuleState:
|
|
369
432
|
def project(self, value: Optional[pulumi.Input[str]]):
|
370
433
|
pulumi.set(self, "project", value)
|
371
434
|
|
435
|
+
@property
|
436
|
+
@pulumi.getter(name="rateLimitOptions")
|
437
|
+
def rate_limit_options(self) -> Optional[pulumi.Input['RegionSecurityPolicyRuleRateLimitOptionsArgs']]:
|
438
|
+
"""
|
439
|
+
Must be specified if the action is "rate_based_ban" or "throttle". Cannot be specified for any other actions.
|
440
|
+
Structure is documented below.
|
441
|
+
"""
|
442
|
+
return pulumi.get(self, "rate_limit_options")
|
443
|
+
|
444
|
+
@rate_limit_options.setter
|
445
|
+
def rate_limit_options(self, value: Optional[pulumi.Input['RegionSecurityPolicyRuleRateLimitOptionsArgs']]):
|
446
|
+
pulumi.set(self, "rate_limit_options", value)
|
447
|
+
|
372
448
|
@property
|
373
449
|
@pulumi.getter
|
374
450
|
def region(self) -> Optional[pulumi.Input[str]]:
|
@@ -406,9 +482,11 @@ class RegionSecurityPolicyRule(pulumi.CustomResource):
|
|
406
482
|
description: Optional[pulumi.Input[str]] = None,
|
407
483
|
match: Optional[pulumi.Input[pulumi.InputType['RegionSecurityPolicyRuleMatchArgs']]] = None,
|
408
484
|
network_match: Optional[pulumi.Input[pulumi.InputType['RegionSecurityPolicyRuleNetworkMatchArgs']]] = None,
|
485
|
+
preconfigured_waf_config: Optional[pulumi.Input[pulumi.InputType['RegionSecurityPolicyRulePreconfiguredWafConfigArgs']]] = None,
|
409
486
|
preview: Optional[pulumi.Input[bool]] = None,
|
410
487
|
priority: Optional[pulumi.Input[int]] = None,
|
411
488
|
project: Optional[pulumi.Input[str]] = None,
|
489
|
+
rate_limit_options: Optional[pulumi.Input[pulumi.InputType['RegionSecurityPolicyRuleRateLimitOptionsArgs']]] = None,
|
412
490
|
region: Optional[pulumi.Input[str]] = None,
|
413
491
|
security_policy: Optional[pulumi.Input[str]] = None,
|
414
492
|
__props__=None):
|
@@ -481,6 +559,63 @@ class RegionSecurityPolicyRule(pulumi.CustomResource):
|
|
481
559
|
action="allow",
|
482
560
|
preview=True)
|
483
561
|
```
|
562
|
+
### Region Security Policy Rule With Preconfigured Waf Config
|
563
|
+
|
564
|
+
```python
|
565
|
+
import pulumi
|
566
|
+
import pulumi_gcp as gcp
|
567
|
+
|
568
|
+
default = gcp.compute.RegionSecurityPolicy("default",
|
569
|
+
region="asia-southeast1",
|
570
|
+
name="policyruletest",
|
571
|
+
description="basic region security policy",
|
572
|
+
type="CLOUD_ARMOR")
|
573
|
+
policy_rule = gcp.compute.RegionSecurityPolicyRule("policy_rule",
|
574
|
+
region="asia-southeast1",
|
575
|
+
security_policy=default.name,
|
576
|
+
description="new rule",
|
577
|
+
priority=100,
|
578
|
+
match=gcp.compute.RegionSecurityPolicyRuleMatchArgs(
|
579
|
+
versioned_expr="SRC_IPS_V1",
|
580
|
+
config=gcp.compute.RegionSecurityPolicyRuleMatchConfigArgs(
|
581
|
+
src_ip_ranges=["10.10.0.0/16"],
|
582
|
+
),
|
583
|
+
),
|
584
|
+
preconfigured_waf_config=gcp.compute.RegionSecurityPolicyRulePreconfiguredWafConfigArgs(
|
585
|
+
exclusions=[
|
586
|
+
gcp.compute.RegionSecurityPolicyRulePreconfiguredWafConfigExclusionArgs(
|
587
|
+
request_uris=[gcp.compute.RegionSecurityPolicyRulePreconfiguredWafConfigExclusionRequestUriArgs(
|
588
|
+
operator="STARTS_WITH",
|
589
|
+
value="/admin",
|
590
|
+
)],
|
591
|
+
target_rule_set="rce-stable",
|
592
|
+
),
|
593
|
+
gcp.compute.RegionSecurityPolicyRulePreconfiguredWafConfigExclusionArgs(
|
594
|
+
request_query_params=[
|
595
|
+
gcp.compute.RegionSecurityPolicyRulePreconfiguredWafConfigExclusionRequestQueryParamArgs(
|
596
|
+
operator="CONTAINS",
|
597
|
+
value="password",
|
598
|
+
),
|
599
|
+
gcp.compute.RegionSecurityPolicyRulePreconfiguredWafConfigExclusionRequestQueryParamArgs(
|
600
|
+
operator="STARTS_WITH",
|
601
|
+
value="freeform",
|
602
|
+
),
|
603
|
+
gcp.compute.RegionSecurityPolicyRulePreconfiguredWafConfigExclusionRequestQueryParamArgs(
|
604
|
+
operator="EQUALS",
|
605
|
+
value="description",
|
606
|
+
),
|
607
|
+
],
|
608
|
+
target_rule_set="xss-stable",
|
609
|
+
target_rule_ids=[
|
610
|
+
"owasp-crs-v030001-id941330-xss",
|
611
|
+
"owasp-crs-v030001-id941340-xss",
|
612
|
+
],
|
613
|
+
),
|
614
|
+
],
|
615
|
+
),
|
616
|
+
action="allow",
|
617
|
+
preview=True)
|
618
|
+
```
|
484
619
|
### Region Security Policy Rule With Network Match
|
485
620
|
|
486
621
|
```python
|
@@ -581,12 +716,17 @@ class RegionSecurityPolicyRule(pulumi.CustomResource):
|
|
581
716
|
networkMatch: srcIpRanges: - "192.0.2.0/24" - "198.51.100.0/24" userDefinedFields: - name: "ipv4_fragment_offset" values: - "1-0x1fff"
|
582
717
|
The above match condition matches packets with a source IP in 192.0.2.0/24 or 198.51.100.0/24 and a user-defined field named "ipv4_fragment_offset" with a value between 1 and 0x1fff inclusive
|
583
718
|
Structure is documented below.
|
719
|
+
:param pulumi.Input[pulumi.InputType['RegionSecurityPolicyRulePreconfiguredWafConfigArgs']] preconfigured_waf_config: Preconfigured WAF configuration to be applied for the rule.
|
720
|
+
If the rule does not evaluate preconfigured WAF rules, i.e., if evaluatePreconfiguredWaf() is not used, this field will have no effect.
|
721
|
+
Structure is documented below.
|
584
722
|
:param pulumi.Input[bool] preview: If set to true, the specified action is not enforced.
|
585
723
|
:param pulumi.Input[int] priority: An integer indicating the priority of a rule in the list.
|
586
724
|
The priority must be a positive value between 0 and 2147483647.
|
587
725
|
Rules are evaluated from highest to lowest priority where 0 is the highest priority and 2147483647 is the lowest priority.
|
588
726
|
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
589
727
|
If it is not provided, the provider project is used.
|
728
|
+
:param pulumi.Input[pulumi.InputType['RegionSecurityPolicyRuleRateLimitOptionsArgs']] rate_limit_options: Must be specified if the action is "rate_based_ban" or "throttle". Cannot be specified for any other actions.
|
729
|
+
Structure is documented below.
|
590
730
|
:param pulumi.Input[str] region: The Region in which the created Region Security Policy rule should reside.
|
591
731
|
:param pulumi.Input[str] security_policy: The name of the security policy this rule belongs to.
|
592
732
|
|
@@ -668,6 +808,63 @@ class RegionSecurityPolicyRule(pulumi.CustomResource):
|
|
668
808
|
action="allow",
|
669
809
|
preview=True)
|
670
810
|
```
|
811
|
+
### Region Security Policy Rule With Preconfigured Waf Config
|
812
|
+
|
813
|
+
```python
|
814
|
+
import pulumi
|
815
|
+
import pulumi_gcp as gcp
|
816
|
+
|
817
|
+
default = gcp.compute.RegionSecurityPolicy("default",
|
818
|
+
region="asia-southeast1",
|
819
|
+
name="policyruletest",
|
820
|
+
description="basic region security policy",
|
821
|
+
type="CLOUD_ARMOR")
|
822
|
+
policy_rule = gcp.compute.RegionSecurityPolicyRule("policy_rule",
|
823
|
+
region="asia-southeast1",
|
824
|
+
security_policy=default.name,
|
825
|
+
description="new rule",
|
826
|
+
priority=100,
|
827
|
+
match=gcp.compute.RegionSecurityPolicyRuleMatchArgs(
|
828
|
+
versioned_expr="SRC_IPS_V1",
|
829
|
+
config=gcp.compute.RegionSecurityPolicyRuleMatchConfigArgs(
|
830
|
+
src_ip_ranges=["10.10.0.0/16"],
|
831
|
+
),
|
832
|
+
),
|
833
|
+
preconfigured_waf_config=gcp.compute.RegionSecurityPolicyRulePreconfiguredWafConfigArgs(
|
834
|
+
exclusions=[
|
835
|
+
gcp.compute.RegionSecurityPolicyRulePreconfiguredWafConfigExclusionArgs(
|
836
|
+
request_uris=[gcp.compute.RegionSecurityPolicyRulePreconfiguredWafConfigExclusionRequestUriArgs(
|
837
|
+
operator="STARTS_WITH",
|
838
|
+
value="/admin",
|
839
|
+
)],
|
840
|
+
target_rule_set="rce-stable",
|
841
|
+
),
|
842
|
+
gcp.compute.RegionSecurityPolicyRulePreconfiguredWafConfigExclusionArgs(
|
843
|
+
request_query_params=[
|
844
|
+
gcp.compute.RegionSecurityPolicyRulePreconfiguredWafConfigExclusionRequestQueryParamArgs(
|
845
|
+
operator="CONTAINS",
|
846
|
+
value="password",
|
847
|
+
),
|
848
|
+
gcp.compute.RegionSecurityPolicyRulePreconfiguredWafConfigExclusionRequestQueryParamArgs(
|
849
|
+
operator="STARTS_WITH",
|
850
|
+
value="freeform",
|
851
|
+
),
|
852
|
+
gcp.compute.RegionSecurityPolicyRulePreconfiguredWafConfigExclusionRequestQueryParamArgs(
|
853
|
+
operator="EQUALS",
|
854
|
+
value="description",
|
855
|
+
),
|
856
|
+
],
|
857
|
+
target_rule_set="xss-stable",
|
858
|
+
target_rule_ids=[
|
859
|
+
"owasp-crs-v030001-id941330-xss",
|
860
|
+
"owasp-crs-v030001-id941340-xss",
|
861
|
+
],
|
862
|
+
),
|
863
|
+
],
|
864
|
+
),
|
865
|
+
action="allow",
|
866
|
+
preview=True)
|
867
|
+
```
|
671
868
|
### Region Security Policy Rule With Network Match
|
672
869
|
|
673
870
|
```python
|
@@ -766,9 +963,11 @@ class RegionSecurityPolicyRule(pulumi.CustomResource):
|
|
766
963
|
description: Optional[pulumi.Input[str]] = None,
|
767
964
|
match: Optional[pulumi.Input[pulumi.InputType['RegionSecurityPolicyRuleMatchArgs']]] = None,
|
768
965
|
network_match: Optional[pulumi.Input[pulumi.InputType['RegionSecurityPolicyRuleNetworkMatchArgs']]] = None,
|
966
|
+
preconfigured_waf_config: Optional[pulumi.Input[pulumi.InputType['RegionSecurityPolicyRulePreconfiguredWafConfigArgs']]] = None,
|
769
967
|
preview: Optional[pulumi.Input[bool]] = None,
|
770
968
|
priority: Optional[pulumi.Input[int]] = None,
|
771
969
|
project: Optional[pulumi.Input[str]] = None,
|
970
|
+
rate_limit_options: Optional[pulumi.Input[pulumi.InputType['RegionSecurityPolicyRuleRateLimitOptionsArgs']]] = None,
|
772
971
|
region: Optional[pulumi.Input[str]] = None,
|
773
972
|
security_policy: Optional[pulumi.Input[str]] = None,
|
774
973
|
__props__=None):
|
@@ -786,11 +985,13 @@ class RegionSecurityPolicyRule(pulumi.CustomResource):
|
|
786
985
|
__props__.__dict__["description"] = description
|
787
986
|
__props__.__dict__["match"] = match
|
788
987
|
__props__.__dict__["network_match"] = network_match
|
988
|
+
__props__.__dict__["preconfigured_waf_config"] = preconfigured_waf_config
|
789
989
|
__props__.__dict__["preview"] = preview
|
790
990
|
if priority is None and not opts.urn:
|
791
991
|
raise TypeError("Missing required property 'priority'")
|
792
992
|
__props__.__dict__["priority"] = priority
|
793
993
|
__props__.__dict__["project"] = project
|
994
|
+
__props__.__dict__["rate_limit_options"] = rate_limit_options
|
794
995
|
if region is None and not opts.urn:
|
795
996
|
raise TypeError("Missing required property 'region'")
|
796
997
|
__props__.__dict__["region"] = region
|
@@ -811,9 +1012,11 @@ class RegionSecurityPolicyRule(pulumi.CustomResource):
|
|
811
1012
|
description: Optional[pulumi.Input[str]] = None,
|
812
1013
|
match: Optional[pulumi.Input[pulumi.InputType['RegionSecurityPolicyRuleMatchArgs']]] = None,
|
813
1014
|
network_match: Optional[pulumi.Input[pulumi.InputType['RegionSecurityPolicyRuleNetworkMatchArgs']]] = None,
|
1015
|
+
preconfigured_waf_config: Optional[pulumi.Input[pulumi.InputType['RegionSecurityPolicyRulePreconfiguredWafConfigArgs']]] = None,
|
814
1016
|
preview: Optional[pulumi.Input[bool]] = None,
|
815
1017
|
priority: Optional[pulumi.Input[int]] = None,
|
816
1018
|
project: Optional[pulumi.Input[str]] = None,
|
1019
|
+
rate_limit_options: Optional[pulumi.Input[pulumi.InputType['RegionSecurityPolicyRuleRateLimitOptionsArgs']]] = None,
|
817
1020
|
region: Optional[pulumi.Input[str]] = None,
|
818
1021
|
security_policy: Optional[pulumi.Input[str]] = None) -> 'RegionSecurityPolicyRule':
|
819
1022
|
"""
|
@@ -842,12 +1045,17 @@ class RegionSecurityPolicyRule(pulumi.CustomResource):
|
|
842
1045
|
networkMatch: srcIpRanges: - "192.0.2.0/24" - "198.51.100.0/24" userDefinedFields: - name: "ipv4_fragment_offset" values: - "1-0x1fff"
|
843
1046
|
The above match condition matches packets with a source IP in 192.0.2.0/24 or 198.51.100.0/24 and a user-defined field named "ipv4_fragment_offset" with a value between 1 and 0x1fff inclusive
|
844
1047
|
Structure is documented below.
|
1048
|
+
:param pulumi.Input[pulumi.InputType['RegionSecurityPolicyRulePreconfiguredWafConfigArgs']] preconfigured_waf_config: Preconfigured WAF configuration to be applied for the rule.
|
1049
|
+
If the rule does not evaluate preconfigured WAF rules, i.e., if evaluatePreconfiguredWaf() is not used, this field will have no effect.
|
1050
|
+
Structure is documented below.
|
845
1051
|
:param pulumi.Input[bool] preview: If set to true, the specified action is not enforced.
|
846
1052
|
:param pulumi.Input[int] priority: An integer indicating the priority of a rule in the list.
|
847
1053
|
The priority must be a positive value between 0 and 2147483647.
|
848
1054
|
Rules are evaluated from highest to lowest priority where 0 is the highest priority and 2147483647 is the lowest priority.
|
849
1055
|
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
850
1056
|
If it is not provided, the provider project is used.
|
1057
|
+
:param pulumi.Input[pulumi.InputType['RegionSecurityPolicyRuleRateLimitOptionsArgs']] rate_limit_options: Must be specified if the action is "rate_based_ban" or "throttle". Cannot be specified for any other actions.
|
1058
|
+
Structure is documented below.
|
851
1059
|
:param pulumi.Input[str] region: The Region in which the created Region Security Policy rule should reside.
|
852
1060
|
:param pulumi.Input[str] security_policy: The name of the security policy this rule belongs to.
|
853
1061
|
|
@@ -862,9 +1070,11 @@ class RegionSecurityPolicyRule(pulumi.CustomResource):
|
|
862
1070
|
__props__.__dict__["description"] = description
|
863
1071
|
__props__.__dict__["match"] = match
|
864
1072
|
__props__.__dict__["network_match"] = network_match
|
1073
|
+
__props__.__dict__["preconfigured_waf_config"] = preconfigured_waf_config
|
865
1074
|
__props__.__dict__["preview"] = preview
|
866
1075
|
__props__.__dict__["priority"] = priority
|
867
1076
|
__props__.__dict__["project"] = project
|
1077
|
+
__props__.__dict__["rate_limit_options"] = rate_limit_options
|
868
1078
|
__props__.__dict__["region"] = region
|
869
1079
|
__props__.__dict__["security_policy"] = security_policy
|
870
1080
|
return RegionSecurityPolicyRule(resource_name, opts=opts, __props__=__props__)
|
@@ -916,6 +1126,16 @@ class RegionSecurityPolicyRule(pulumi.CustomResource):
|
|
916
1126
|
"""
|
917
1127
|
return pulumi.get(self, "network_match")
|
918
1128
|
|
1129
|
+
@property
|
1130
|
+
@pulumi.getter(name="preconfiguredWafConfig")
|
1131
|
+
def preconfigured_waf_config(self) -> pulumi.Output[Optional['outputs.RegionSecurityPolicyRulePreconfiguredWafConfig']]:
|
1132
|
+
"""
|
1133
|
+
Preconfigured WAF configuration to be applied for the rule.
|
1134
|
+
If the rule does not evaluate preconfigured WAF rules, i.e., if evaluatePreconfiguredWaf() is not used, this field will have no effect.
|
1135
|
+
Structure is documented below.
|
1136
|
+
"""
|
1137
|
+
return pulumi.get(self, "preconfigured_waf_config")
|
1138
|
+
|
919
1139
|
@property
|
920
1140
|
@pulumi.getter
|
921
1141
|
def preview(self) -> pulumi.Output[Optional[bool]]:
|
@@ -943,6 +1163,15 @@ class RegionSecurityPolicyRule(pulumi.CustomResource):
|
|
943
1163
|
"""
|
944
1164
|
return pulumi.get(self, "project")
|
945
1165
|
|
1166
|
+
@property
|
1167
|
+
@pulumi.getter(name="rateLimitOptions")
|
1168
|
+
def rate_limit_options(self) -> pulumi.Output[Optional['outputs.RegionSecurityPolicyRuleRateLimitOptions']]:
|
1169
|
+
"""
|
1170
|
+
Must be specified if the action is "rate_based_ban" or "throttle". Cannot be specified for any other actions.
|
1171
|
+
Structure is documented below.
|
1172
|
+
"""
|
1173
|
+
return pulumi.get(self, "rate_limit_options")
|
1174
|
+
|
946
1175
|
@property
|
947
1176
|
@pulumi.getter
|
948
1177
|
def region(self) -> pulumi.Output[str]:
|
pulumi_gcp/compute/router_nat.py
CHANGED
@@ -18,6 +18,7 @@ class RouterNatArgs:
|
|
18
18
|
def __init__(__self__, *,
|
19
19
|
router: pulumi.Input[str],
|
20
20
|
source_subnetwork_ip_ranges_to_nat: pulumi.Input[str],
|
21
|
+
auto_network_tier: Optional[pulumi.Input[str]] = None,
|
21
22
|
drain_nat_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
22
23
|
enable_dynamic_port_allocation: Optional[pulumi.Input[bool]] = None,
|
23
24
|
enable_endpoint_independent_mapping: Optional[pulumi.Input[bool]] = None,
|
@@ -55,6 +56,10 @@ class RouterNatArgs:
|
|
55
56
|
ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES, then there should not be any
|
56
57
|
other RouterNat section in any Router for this network in this region.
|
57
58
|
Possible values are: `ALL_SUBNETWORKS_ALL_IP_RANGES`, `ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES`, `LIST_OF_SUBNETWORKS`.
|
59
|
+
:param pulumi.Input[str] auto_network_tier: The network tier to use when automatically reserving NAT IP addresses.
|
60
|
+
Must be one of: PREMIUM, STANDARD. If not specified, then the current
|
61
|
+
project-level default tier is used.
|
62
|
+
Possible values are: `PREMIUM`, `STANDARD`.
|
58
63
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] drain_nat_ips: A list of URLs of the IP resources to be drained. These IPs must be
|
59
64
|
valid static external IPs that have been assigned to the NAT.
|
60
65
|
:param pulumi.Input[bool] enable_dynamic_port_allocation: Enable Dynamic Port Allocation.
|
@@ -107,6 +112,8 @@ class RouterNatArgs:
|
|
107
112
|
"""
|
108
113
|
pulumi.set(__self__, "router", router)
|
109
114
|
pulumi.set(__self__, "source_subnetwork_ip_ranges_to_nat", source_subnetwork_ip_ranges_to_nat)
|
115
|
+
if auto_network_tier is not None:
|
116
|
+
pulumi.set(__self__, "auto_network_tier", auto_network_tier)
|
110
117
|
if drain_nat_ips is not None:
|
111
118
|
pulumi.set(__self__, "drain_nat_ips", drain_nat_ips)
|
112
119
|
if enable_dynamic_port_allocation is not None:
|
@@ -185,6 +192,21 @@ class RouterNatArgs:
|
|
185
192
|
def source_subnetwork_ip_ranges_to_nat(self, value: pulumi.Input[str]):
|
186
193
|
pulumi.set(self, "source_subnetwork_ip_ranges_to_nat", value)
|
187
194
|
|
195
|
+
@property
|
196
|
+
@pulumi.getter(name="autoNetworkTier")
|
197
|
+
def auto_network_tier(self) -> Optional[pulumi.Input[str]]:
|
198
|
+
"""
|
199
|
+
The network tier to use when automatically reserving NAT IP addresses.
|
200
|
+
Must be one of: PREMIUM, STANDARD. If not specified, then the current
|
201
|
+
project-level default tier is used.
|
202
|
+
Possible values are: `PREMIUM`, `STANDARD`.
|
203
|
+
"""
|
204
|
+
return pulumi.get(self, "auto_network_tier")
|
205
|
+
|
206
|
+
@auto_network_tier.setter
|
207
|
+
def auto_network_tier(self, value: Optional[pulumi.Input[str]]):
|
208
|
+
pulumi.set(self, "auto_network_tier", value)
|
209
|
+
|
188
210
|
@property
|
189
211
|
@pulumi.getter(name="drainNatIps")
|
190
212
|
def drain_nat_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
@@ -458,6 +480,7 @@ class RouterNatArgs:
|
|
458
480
|
@pulumi.input_type
|
459
481
|
class _RouterNatState:
|
460
482
|
def __init__(__self__, *,
|
483
|
+
auto_network_tier: Optional[pulumi.Input[str]] = None,
|
461
484
|
drain_nat_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
462
485
|
enable_dynamic_port_allocation: Optional[pulumi.Input[bool]] = None,
|
463
486
|
enable_endpoint_independent_mapping: Optional[pulumi.Input[bool]] = None,
|
@@ -482,6 +505,10 @@ class _RouterNatState:
|
|
482
505
|
udp_idle_timeout_sec: Optional[pulumi.Input[int]] = None):
|
483
506
|
"""
|
484
507
|
Input properties used for looking up and filtering RouterNat resources.
|
508
|
+
:param pulumi.Input[str] auto_network_tier: The network tier to use when automatically reserving NAT IP addresses.
|
509
|
+
Must be one of: PREMIUM, STANDARD. If not specified, then the current
|
510
|
+
project-level default tier is used.
|
511
|
+
Possible values are: `PREMIUM`, `STANDARD`.
|
485
512
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] drain_nat_ips: A list of URLs of the IP resources to be drained. These IPs must be
|
486
513
|
valid static external IPs that have been assigned to the NAT.
|
487
514
|
:param pulumi.Input[bool] enable_dynamic_port_allocation: Enable Dynamic Port Allocation.
|
@@ -547,6 +574,8 @@ class _RouterNatState:
|
|
547
574
|
Possible values are: `PUBLIC`, `PRIVATE`.
|
548
575
|
:param pulumi.Input[int] udp_idle_timeout_sec: Timeout (in seconds) for UDP connections. Defaults to 30s if not set.
|
549
576
|
"""
|
577
|
+
if auto_network_tier is not None:
|
578
|
+
pulumi.set(__self__, "auto_network_tier", auto_network_tier)
|
550
579
|
if drain_nat_ips is not None:
|
551
580
|
pulumi.set(__self__, "drain_nat_ips", drain_nat_ips)
|
552
581
|
if enable_dynamic_port_allocation is not None:
|
@@ -592,6 +621,21 @@ class _RouterNatState:
|
|
592
621
|
if udp_idle_timeout_sec is not None:
|
593
622
|
pulumi.set(__self__, "udp_idle_timeout_sec", udp_idle_timeout_sec)
|
594
623
|
|
624
|
+
@property
|
625
|
+
@pulumi.getter(name="autoNetworkTier")
|
626
|
+
def auto_network_tier(self) -> Optional[pulumi.Input[str]]:
|
627
|
+
"""
|
628
|
+
The network tier to use when automatically reserving NAT IP addresses.
|
629
|
+
Must be one of: PREMIUM, STANDARD. If not specified, then the current
|
630
|
+
project-level default tier is used.
|
631
|
+
Possible values are: `PREMIUM`, `STANDARD`.
|
632
|
+
"""
|
633
|
+
return pulumi.get(self, "auto_network_tier")
|
634
|
+
|
635
|
+
@auto_network_tier.setter
|
636
|
+
def auto_network_tier(self, value: Optional[pulumi.Input[str]]):
|
637
|
+
pulumi.set(self, "auto_network_tier", value)
|
638
|
+
|
595
639
|
@property
|
596
640
|
@pulumi.getter(name="drainNatIps")
|
597
641
|
def drain_nat_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
@@ -904,6 +948,7 @@ class RouterNat(pulumi.CustomResource):
|
|
904
948
|
def __init__(__self__,
|
905
949
|
resource_name: str,
|
906
950
|
opts: Optional[pulumi.ResourceOptions] = None,
|
951
|
+
auto_network_tier: Optional[pulumi.Input[str]] = None,
|
907
952
|
drain_nat_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
908
953
|
enable_dynamic_port_allocation: Optional[pulumi.Input[bool]] = None,
|
909
954
|
enable_endpoint_independent_mapping: Optional[pulumi.Input[bool]] = None,
|
@@ -1139,6 +1184,10 @@ class RouterNat(pulumi.CustomResource):
|
|
1139
1184
|
|
1140
1185
|
:param str resource_name: The name of the resource.
|
1141
1186
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
1187
|
+
:param pulumi.Input[str] auto_network_tier: The network tier to use when automatically reserving NAT IP addresses.
|
1188
|
+
Must be one of: PREMIUM, STANDARD. If not specified, then the current
|
1189
|
+
project-level default tier is used.
|
1190
|
+
Possible values are: `PREMIUM`, `STANDARD`.
|
1142
1191
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] drain_nat_ips: A list of URLs of the IP resources to be drained. These IPs must be
|
1143
1192
|
valid static external IPs that have been assigned to the NAT.
|
1144
1193
|
:param pulumi.Input[bool] enable_dynamic_port_allocation: Enable Dynamic Port Allocation.
|
@@ -1435,6 +1484,7 @@ class RouterNat(pulumi.CustomResource):
|
|
1435
1484
|
def _internal_init(__self__,
|
1436
1485
|
resource_name: str,
|
1437
1486
|
opts: Optional[pulumi.ResourceOptions] = None,
|
1487
|
+
auto_network_tier: Optional[pulumi.Input[str]] = None,
|
1438
1488
|
drain_nat_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
1439
1489
|
enable_dynamic_port_allocation: Optional[pulumi.Input[bool]] = None,
|
1440
1490
|
enable_endpoint_independent_mapping: Optional[pulumi.Input[bool]] = None,
|
@@ -1466,6 +1516,7 @@ class RouterNat(pulumi.CustomResource):
|
|
1466
1516
|
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
1467
1517
|
__props__ = RouterNatArgs.__new__(RouterNatArgs)
|
1468
1518
|
|
1519
|
+
__props__.__dict__["auto_network_tier"] = auto_network_tier
|
1469
1520
|
__props__.__dict__["drain_nat_ips"] = drain_nat_ips
|
1470
1521
|
__props__.__dict__["enable_dynamic_port_allocation"] = enable_dynamic_port_allocation
|
1471
1522
|
__props__.__dict__["enable_endpoint_independent_mapping"] = enable_endpoint_independent_mapping
|
@@ -1502,6 +1553,7 @@ class RouterNat(pulumi.CustomResource):
|
|
1502
1553
|
def get(resource_name: str,
|
1503
1554
|
id: pulumi.Input[str],
|
1504
1555
|
opts: Optional[pulumi.ResourceOptions] = None,
|
1556
|
+
auto_network_tier: Optional[pulumi.Input[str]] = None,
|
1505
1557
|
drain_nat_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
1506
1558
|
enable_dynamic_port_allocation: Optional[pulumi.Input[bool]] = None,
|
1507
1559
|
enable_endpoint_independent_mapping: Optional[pulumi.Input[bool]] = None,
|
@@ -1531,6 +1583,10 @@ class RouterNat(pulumi.CustomResource):
|
|
1531
1583
|
:param str resource_name: The unique name of the resulting resource.
|
1532
1584
|
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
1533
1585
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
1586
|
+
:param pulumi.Input[str] auto_network_tier: The network tier to use when automatically reserving NAT IP addresses.
|
1587
|
+
Must be one of: PREMIUM, STANDARD. If not specified, then the current
|
1588
|
+
project-level default tier is used.
|
1589
|
+
Possible values are: `PREMIUM`, `STANDARD`.
|
1534
1590
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] drain_nat_ips: A list of URLs of the IP resources to be drained. These IPs must be
|
1535
1591
|
valid static external IPs that have been assigned to the NAT.
|
1536
1592
|
:param pulumi.Input[bool] enable_dynamic_port_allocation: Enable Dynamic Port Allocation.
|
@@ -1600,6 +1656,7 @@ class RouterNat(pulumi.CustomResource):
|
|
1600
1656
|
|
1601
1657
|
__props__ = _RouterNatState.__new__(_RouterNatState)
|
1602
1658
|
|
1659
|
+
__props__.__dict__["auto_network_tier"] = auto_network_tier
|
1603
1660
|
__props__.__dict__["drain_nat_ips"] = drain_nat_ips
|
1604
1661
|
__props__.__dict__["enable_dynamic_port_allocation"] = enable_dynamic_port_allocation
|
1605
1662
|
__props__.__dict__["enable_endpoint_independent_mapping"] = enable_endpoint_independent_mapping
|
@@ -1624,6 +1681,17 @@ class RouterNat(pulumi.CustomResource):
|
|
1624
1681
|
__props__.__dict__["udp_idle_timeout_sec"] = udp_idle_timeout_sec
|
1625
1682
|
return RouterNat(resource_name, opts=opts, __props__=__props__)
|
1626
1683
|
|
1684
|
+
@property
|
1685
|
+
@pulumi.getter(name="autoNetworkTier")
|
1686
|
+
def auto_network_tier(self) -> pulumi.Output[str]:
|
1687
|
+
"""
|
1688
|
+
The network tier to use when automatically reserving NAT IP addresses.
|
1689
|
+
Must be one of: PREMIUM, STANDARD. If not specified, then the current
|
1690
|
+
project-level default tier is used.
|
1691
|
+
Possible values are: `PREMIUM`, `STANDARD`.
|
1692
|
+
"""
|
1693
|
+
return pulumi.get(self, "auto_network_tier")
|
1694
|
+
|
1627
1695
|
@property
|
1628
1696
|
@pulumi.getter(name="drainNatIps")
|
1629
1697
|
def drain_nat_ips(self) -> pulumi.Output[Optional[Sequence[str]]]:
|