pulumi-gcp 8.8.0a1730788810__py3-none-any.whl → 8.8.0a1730856812__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 +8 -0
- pulumi_gcp/accesscontextmanager/access_policy_iam_binding.py +4 -4
- pulumi_gcp/accesscontextmanager/access_policy_iam_member.py +4 -4
- pulumi_gcp/accesscontextmanager/access_policy_iam_policy.py +4 -4
- pulumi_gcp/apigateway/api_config_iam_binding.py +2 -2
- pulumi_gcp/apigateway/api_config_iam_member.py +2 -2
- pulumi_gcp/apigateway/api_config_iam_policy.py +2 -2
- pulumi_gcp/apigateway/api_iam_binding.py +2 -2
- pulumi_gcp/apigateway/api_iam_member.py +2 -2
- pulumi_gcp/apigateway/api_iam_policy.py +2 -2
- pulumi_gcp/apigateway/gateway_iam_binding.py +2 -2
- pulumi_gcp/apigateway/gateway_iam_member.py +2 -2
- pulumi_gcp/apigateway/gateway_iam_policy.py +2 -2
- pulumi_gcp/apigee/environment_iam_binding.py +4 -4
- pulumi_gcp/apigee/environment_iam_member.py +4 -4
- pulumi_gcp/apigee/environment_iam_policy.py +4 -4
- pulumi_gcp/appengine/engine_split_traffic.py +4 -4
- pulumi_gcp/apphub/_inputs.py +6 -3
- pulumi_gcp/apphub/application.py +30 -4
- pulumi_gcp/apphub/outputs.py +8 -4
- pulumi_gcp/artifactregistry/repository_iam_binding.py +2 -2
- pulumi_gcp/artifactregistry/repository_iam_member.py +2 -2
- pulumi_gcp/artifactregistry/repository_iam_policy.py +2 -2
- pulumi_gcp/assuredworkloads/_inputs.py +34 -0
- pulumi_gcp/assuredworkloads/outputs.py +37 -0
- pulumi_gcp/assuredworkloads/workload.py +56 -3
- pulumi_gcp/backupdisasterrecovery/_inputs.py +0 -6
- pulumi_gcp/backupdisasterrecovery/management_server.py +80 -34
- pulumi_gcp/backupdisasterrecovery/outputs.py +0 -4
- pulumi_gcp/biglake/table.py +12 -12
- pulumi_gcp/bigquery/_inputs.py +60 -0
- pulumi_gcp/bigquery/connection.py +2 -2
- pulumi_gcp/bigquery/connection_iam_binding.py +2 -2
- pulumi_gcp/bigquery/connection_iam_member.py +2 -2
- pulumi_gcp/bigquery/connection_iam_policy.py +2 -2
- pulumi_gcp/bigquery/dataset.py +99 -2
- pulumi_gcp/bigquery/dataset_access.py +2 -2
- pulumi_gcp/bigquery/dataset_iam_binding.py +53 -0
- pulumi_gcp/bigquery/dataset_iam_member.py +53 -0
- pulumi_gcp/bigquery/dataset_iam_policy.py +32 -0
- pulumi_gcp/bigquery/get_dataset.py +12 -1
- pulumi_gcp/bigquery/iam_binding.py +2 -2
- pulumi_gcp/bigquery/iam_member.py +2 -2
- pulumi_gcp/bigquery/iam_policy.py +2 -2
- pulumi_gcp/bigquery/outputs.py +87 -0
- pulumi_gcp/bigquery/routine.py +6 -6
- pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_binding.py +2 -2
- pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_member.py +2 -2
- pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_policy.py +2 -2
- pulumi_gcp/bigqueryanalyticshub/listing_iam_binding.py +2 -2
- pulumi_gcp/bigqueryanalyticshub/listing_iam_member.py +2 -2
- pulumi_gcp/bigqueryanalyticshub/listing_iam_policy.py +2 -2
- pulumi_gcp/bigquerydatapolicy/data_policy_iam_binding.py +2 -2
- pulumi_gcp/bigquerydatapolicy/data_policy_iam_member.py +2 -2
- pulumi_gcp/bigquerydatapolicy/data_policy_iam_policy.py +2 -2
- pulumi_gcp/binaryauthorization/attestor_iam_binding.py +2 -2
- pulumi_gcp/binaryauthorization/attestor_iam_member.py +2 -2
- pulumi_gcp/binaryauthorization/attestor_iam_policy.py +2 -2
- pulumi_gcp/certificateauthority/ca_pool_iam_binding.py +2 -2
- pulumi_gcp/certificateauthority/ca_pool_iam_member.py +2 -2
- pulumi_gcp/certificateauthority/ca_pool_iam_policy.py +2 -2
- pulumi_gcp/certificateauthority/certificate_template_iam_binding.py +2 -2
- pulumi_gcp/certificateauthority/certificate_template_iam_member.py +2 -2
- pulumi_gcp/certificateauthority/certificate_template_iam_policy.py +2 -2
- pulumi_gcp/cloudbuild/trigger.py +18 -18
- pulumi_gcp/cloudbuildv2/connection_iam_binding.py +2 -2
- pulumi_gcp/cloudbuildv2/connection_iam_member.py +2 -2
- pulumi_gcp/cloudbuildv2/connection_iam_policy.py +2 -2
- pulumi_gcp/clouddeploy/delivery_pipeline.py +10 -10
- pulumi_gcp/cloudfunctions/function_iam_binding.py +2 -2
- pulumi_gcp/cloudfunctions/function_iam_member.py +2 -2
- pulumi_gcp/cloudfunctions/function_iam_policy.py +2 -2
- pulumi_gcp/cloudfunctionsv2/function.py +22 -22
- pulumi_gcp/cloudfunctionsv2/function_iam_binding.py +2 -2
- pulumi_gcp/cloudfunctionsv2/function_iam_member.py +2 -2
- pulumi_gcp/cloudfunctionsv2/function_iam_policy.py +2 -2
- pulumi_gcp/cloudrun/iam_binding.py +2 -2
- pulumi_gcp/cloudrun/iam_member.py +2 -2
- pulumi_gcp/cloudrun/iam_policy.py +2 -2
- pulumi_gcp/cloudrun/service.py +24 -24
- pulumi_gcp/cloudrunv2/job_iam_binding.py +2 -2
- pulumi_gcp/cloudrunv2/job_iam_member.py +2 -2
- pulumi_gcp/cloudrunv2/job_iam_policy.py +2 -2
- pulumi_gcp/cloudrunv2/service.py +2 -2
- pulumi_gcp/cloudrunv2/service_iam_binding.py +2 -2
- pulumi_gcp/cloudrunv2/service_iam_member.py +2 -2
- pulumi_gcp/cloudrunv2/service_iam_policy.py +2 -2
- pulumi_gcp/cloudscheduler/job.py +4 -4
- pulumi_gcp/cloudtasks/queue_iam_binding.py +2 -2
- pulumi_gcp/cloudtasks/queue_iam_member.py +2 -2
- pulumi_gcp/cloudtasks/queue_iam_policy.py +2 -2
- pulumi_gcp/compute/__init__.py +1 -0
- pulumi_gcp/compute/_inputs.py +182 -50
- pulumi_gcp/compute/backend_bucket_iam_binding.py +2 -2
- pulumi_gcp/compute/backend_bucket_iam_member.py +2 -2
- pulumi_gcp/compute/backend_bucket_iam_policy.py +2 -2
- pulumi_gcp/compute/backend_service_iam_binding.py +2 -2
- pulumi_gcp/compute/backend_service_iam_member.py +2 -2
- pulumi_gcp/compute/backend_service_iam_policy.py +2 -2
- pulumi_gcp/compute/disk_iam_binding.py +2 -2
- pulumi_gcp/compute/disk_iam_member.py +2 -2
- pulumi_gcp/compute/disk_iam_policy.py +2 -2
- pulumi_gcp/compute/get_instance_guest_attributes.py +277 -0
- pulumi_gcp/compute/image.py +76 -22
- pulumi_gcp/compute/image_iam_binding.py +2 -2
- pulumi_gcp/compute/image_iam_member.py +2 -2
- pulumi_gcp/compute/image_iam_policy.py +2 -2
- pulumi_gcp/compute/instance_iam_binding.py +2 -2
- pulumi_gcp/compute/instance_iam_member.py +2 -2
- pulumi_gcp/compute/instance_iam_policy.py +2 -2
- pulumi_gcp/compute/machine_image_iam_binding.py +2 -2
- pulumi_gcp/compute/machine_image_iam_member.py +2 -2
- pulumi_gcp/compute/machine_image_iam_policy.py +2 -2
- pulumi_gcp/compute/outputs.py +197 -30
- pulumi_gcp/compute/region_backend_service_iam_binding.py +2 -2
- pulumi_gcp/compute/region_backend_service_iam_member.py +2 -2
- pulumi_gcp/compute/region_backend_service_iam_policy.py +2 -2
- pulumi_gcp/compute/region_disk_iam_binding.py +2 -2
- pulumi_gcp/compute/region_disk_iam_member.py +2 -2
- pulumi_gcp/compute/region_disk_iam_policy.py +2 -2
- pulumi_gcp/compute/region_security_policy_rule.py +74 -0
- pulumi_gcp/compute/security_policy_rule.py +111 -13
- pulumi_gcp/compute/snapshot_iam_binding.py +2 -2
- pulumi_gcp/compute/snapshot_iam_member.py +2 -2
- pulumi_gcp/compute/snapshot_iam_policy.py +2 -2
- pulumi_gcp/compute/subnetwork_iam_binding.py +2 -2
- pulumi_gcp/compute/subnetwork_iam_member.py +2 -2
- pulumi_gcp/compute/subnetwork_iam_policy.py +2 -2
- pulumi_gcp/compute/url_map.py +10 -10
- pulumi_gcp/container/aws_node_pool.py +12 -12
- pulumi_gcp/containeranalysis/note_iam_binding.py +2 -2
- pulumi_gcp/containeranalysis/note_iam_member.py +2 -2
- pulumi_gcp/containeranalysis/note_iam_policy.py +2 -2
- pulumi_gcp/datacatalog/entry_group_iam_binding.py +2 -2
- pulumi_gcp/datacatalog/entry_group_iam_member.py +2 -2
- pulumi_gcp/datacatalog/entry_group_iam_policy.py +2 -2
- pulumi_gcp/datacatalog/policy_tag_iam_binding.py +4 -4
- pulumi_gcp/datacatalog/policy_tag_iam_member.py +4 -4
- pulumi_gcp/datacatalog/policy_tag_iam_policy.py +4 -4
- pulumi_gcp/datacatalog/tag_template_iam_binding.py +2 -2
- pulumi_gcp/datacatalog/tag_template_iam_member.py +2 -2
- pulumi_gcp/datacatalog/tag_template_iam_policy.py +2 -2
- pulumi_gcp/datacatalog/taxonomy_iam_binding.py +2 -2
- pulumi_gcp/datacatalog/taxonomy_iam_member.py +2 -2
- pulumi_gcp/datacatalog/taxonomy_iam_policy.py +2 -2
- pulumi_gcp/dataplex/aspect_type_iam_binding.py +2 -2
- pulumi_gcp/dataplex/aspect_type_iam_member.py +2 -2
- pulumi_gcp/dataplex/aspect_type_iam_policy.py +2 -2
- pulumi_gcp/dataplex/asset_iam_binding.py +2 -2
- pulumi_gcp/dataplex/asset_iam_member.py +2 -2
- pulumi_gcp/dataplex/asset_iam_policy.py +2 -2
- pulumi_gcp/dataplex/datascan_iam_binding.py +2 -2
- pulumi_gcp/dataplex/datascan_iam_member.py +2 -2
- pulumi_gcp/dataplex/datascan_iam_policy.py +2 -2
- pulumi_gcp/dataplex/entry_group_iam_binding.py +2 -2
- pulumi_gcp/dataplex/entry_group_iam_member.py +2 -2
- pulumi_gcp/dataplex/entry_group_iam_policy.py +2 -2
- pulumi_gcp/dataplex/entry_type_iam_binding.py +2 -2
- pulumi_gcp/dataplex/entry_type_iam_member.py +2 -2
- pulumi_gcp/dataplex/entry_type_iam_policy.py +2 -2
- pulumi_gcp/dataplex/lake_iam_binding.py +2 -2
- pulumi_gcp/dataplex/lake_iam_member.py +2 -2
- pulumi_gcp/dataplex/lake_iam_policy.py +2 -2
- pulumi_gcp/dataplex/task.py +4 -4
- pulumi_gcp/dataplex/task_iam_binding.py +2 -2
- pulumi_gcp/dataplex/task_iam_member.py +2 -2
- pulumi_gcp/dataplex/task_iam_policy.py +2 -2
- pulumi_gcp/dataplex/zone_iam_binding.py +2 -2
- pulumi_gcp/dataplex/zone_iam_member.py +2 -2
- pulumi_gcp/dataplex/zone_iam_policy.py +2 -2
- pulumi_gcp/dataproc/autoscaling_policy_iam_binding.py +2 -2
- pulumi_gcp/dataproc/autoscaling_policy_iam_member.py +2 -2
- pulumi_gcp/dataproc/autoscaling_policy_iam_policy.py +2 -2
- pulumi_gcp/dataproc/batch.py +24 -24
- pulumi_gcp/dataproc/cluster.py +2 -2
- pulumi_gcp/dataproc/job.py +4 -4
- pulumi_gcp/dataproc/metastore_federation_iam_binding.py +2 -2
- pulumi_gcp/dataproc/metastore_federation_iam_member.py +2 -2
- pulumi_gcp/dataproc/metastore_federation_iam_policy.py +2 -2
- pulumi_gcp/dataproc/metastore_service_iam_binding.py +2 -2
- pulumi_gcp/dataproc/metastore_service_iam_member.py +2 -2
- pulumi_gcp/dataproc/metastore_service_iam_policy.py +2 -2
- pulumi_gcp/diagflow/cx_flow.py +4 -4
- pulumi_gcp/diagflow/cx_page.py +10 -10
- pulumi_gcp/dns/dns_managed_zone_iam_binding.py +2 -2
- pulumi_gcp/dns/dns_managed_zone_iam_member.py +2 -2
- pulumi_gcp/dns/dns_managed_zone_iam_policy.py +2 -2
- pulumi_gcp/endpoints/consumers_iam_binding.py +2 -2
- pulumi_gcp/endpoints/consumers_iam_member.py +2 -2
- pulumi_gcp/endpoints/consumers_iam_policy.py +2 -2
- pulumi_gcp/endpoints/service_iam_binding.py +4 -4
- pulumi_gcp/endpoints/service_iam_member.py +4 -4
- pulumi_gcp/endpoints/service_iam_policy.py +4 -4
- pulumi_gcp/firebase/extensions_instance.py +24 -24
- pulumi_gcp/gkebackup/backup_plan_iam_binding.py +2 -2
- pulumi_gcp/gkebackup/backup_plan_iam_member.py +2 -2
- pulumi_gcp/gkebackup/backup_plan_iam_policy.py +2 -2
- pulumi_gcp/gkebackup/restore_plan.py +18 -18
- pulumi_gcp/gkebackup/restore_plan_iam_binding.py +2 -2
- pulumi_gcp/gkebackup/restore_plan_iam_member.py +2 -2
- pulumi_gcp/gkebackup/restore_plan_iam_policy.py +2 -2
- pulumi_gcp/gkehub/_inputs.py +21 -21
- pulumi_gcp/gkehub/feature_iam_binding.py +2 -2
- pulumi_gcp/gkehub/feature_iam_member.py +2 -2
- pulumi_gcp/gkehub/feature_iam_policy.py +2 -2
- pulumi_gcp/gkehub/membership_iam_binding.py +2 -2
- pulumi_gcp/gkehub/membership_iam_member.py +2 -2
- pulumi_gcp/gkehub/membership_iam_policy.py +2 -2
- pulumi_gcp/gkehub/outputs.py +13 -13
- pulumi_gcp/gkehub/scope_iam_binding.py +2 -2
- pulumi_gcp/gkehub/scope_iam_member.py +2 -2
- pulumi_gcp/gkehub/scope_iam_policy.py +2 -2
- pulumi_gcp/healthcare/consent_store_iam_binding.py +4 -4
- pulumi_gcp/healthcare/consent_store_iam_member.py +4 -4
- pulumi_gcp/healthcare/consent_store_iam_policy.py +4 -4
- pulumi_gcp/iap/__init__.py +1 -0
- pulumi_gcp/iap/_inputs.py +1002 -0
- pulumi_gcp/iap/app_engine_service_iam_binding.py +2 -2
- pulumi_gcp/iap/app_engine_service_iam_member.py +2 -2
- pulumi_gcp/iap/app_engine_service_iam_policy.py +2 -2
- pulumi_gcp/iap/app_engine_version_iam_binding.py +2 -2
- pulumi_gcp/iap/app_engine_version_iam_member.py +2 -2
- pulumi_gcp/iap/app_engine_version_iam_policy.py +2 -2
- pulumi_gcp/iap/outputs.py +827 -0
- pulumi_gcp/iap/settings.py +546 -0
- pulumi_gcp/iap/tunnel_dest_group_iam_binding.py +2 -2
- pulumi_gcp/iap/tunnel_dest_group_iam_member.py +2 -2
- pulumi_gcp/iap/tunnel_dest_group_iam_policy.py +2 -2
- pulumi_gcp/iap/tunnel_iam_binding.py +2 -2
- pulumi_gcp/iap/tunnel_iam_member.py +2 -2
- pulumi_gcp/iap/tunnel_iam_policy.py +2 -2
- pulumi_gcp/iap/tunnel_instance_iam_binding.py +2 -2
- pulumi_gcp/iap/tunnel_instance_iam_member.py +2 -2
- pulumi_gcp/iap/tunnel_instance_iam_policy.py +2 -2
- pulumi_gcp/iap/web_backend_service_iam_binding.py +2 -2
- pulumi_gcp/iap/web_backend_service_iam_member.py +2 -2
- pulumi_gcp/iap/web_backend_service_iam_policy.py +2 -2
- pulumi_gcp/iap/web_iam_binding.py +2 -2
- pulumi_gcp/iap/web_iam_member.py +2 -2
- pulumi_gcp/iap/web_iam_policy.py +2 -2
- pulumi_gcp/iap/web_region_backend_service_iam_binding.py +2 -2
- pulumi_gcp/iap/web_region_backend_service_iam_member.py +2 -2
- pulumi_gcp/iap/web_region_backend_service_iam_policy.py +2 -2
- pulumi_gcp/iap/web_type_app_enging_iam_binding.py +2 -2
- pulumi_gcp/iap/web_type_app_enging_iam_member.py +2 -2
- pulumi_gcp/iap/web_type_app_enging_iam_policy.py +2 -2
- pulumi_gcp/iap/web_type_compute_iam_binding.py +2 -2
- pulumi_gcp/iap/web_type_compute_iam_member.py +2 -2
- pulumi_gcp/iap/web_type_compute_iam_policy.py +2 -2
- pulumi_gcp/identityplatform/config.py +2 -2
- pulumi_gcp/kms/ekm_connection_iam_binding.py +2 -2
- pulumi_gcp/kms/ekm_connection_iam_member.py +2 -2
- pulumi_gcp/kms/ekm_connection_iam_policy.py +2 -2
- pulumi_gcp/logging/log_view_iam_binding.py +4 -4
- pulumi_gcp/logging/log_view_iam_member.py +4 -4
- pulumi_gcp/logging/log_view_iam_policy.py +4 -4
- pulumi_gcp/memorystore/_inputs.py +117 -4
- pulumi_gcp/memorystore/instance.py +105 -0
- pulumi_gcp/memorystore/outputs.py +80 -4
- pulumi_gcp/networksecurity/address_group_iam_binding.py +2 -2
- pulumi_gcp/networksecurity/address_group_iam_member.py +2 -2
- pulumi_gcp/networksecurity/address_group_iam_policy.py +2 -2
- pulumi_gcp/networksecurity/gateway_security_policy.py +7 -0
- pulumi_gcp/networkservices/edge_cache_service.py +2 -2
- pulumi_gcp/networkservices/http_route.py +4 -4
- pulumi_gcp/notebooks/instance_iam_binding.py +2 -2
- pulumi_gcp/notebooks/instance_iam_member.py +2 -2
- pulumi_gcp/notebooks/instance_iam_policy.py +2 -2
- pulumi_gcp/notebooks/runtime_iam_binding.py +2 -2
- pulumi_gcp/notebooks/runtime_iam_member.py +2 -2
- pulumi_gcp/notebooks/runtime_iam_policy.py +2 -2
- pulumi_gcp/osconfig/os_policy_assignment.py +4 -4
- pulumi_gcp/pubsub/schema_iam_binding.py +2 -2
- pulumi_gcp/pubsub/schema_iam_member.py +2 -2
- pulumi_gcp/pubsub/schema_iam_policy.py +2 -2
- pulumi_gcp/pubsub/subscription.py +18 -66
- pulumi_gcp/pubsub/topic_iam_binding.py +2 -2
- pulumi_gcp/pubsub/topic_iam_member.py +2 -2
- pulumi_gcp/pubsub/topic_iam_policy.py +2 -2
- pulumi_gcp/pulumi-plugin.json +1 -1
- pulumi_gcp/runtimeconfig/config_iam_binding.py +2 -2
- pulumi_gcp/runtimeconfig/config_iam_member.py +2 -2
- pulumi_gcp/runtimeconfig/config_iam_policy.py +2 -2
- pulumi_gcp/secretmanager/regional_secret_iam_binding.py +2 -2
- pulumi_gcp/secretmanager/regional_secret_iam_member.py +2 -2
- pulumi_gcp/secretmanager/regional_secret_iam_policy.py +2 -2
- pulumi_gcp/secretmanager/secret_iam_binding.py +2 -2
- pulumi_gcp/secretmanager/secret_iam_member.py +2 -2
- pulumi_gcp/secretmanager/secret_iam_policy.py +2 -2
- pulumi_gcp/securesourcemanager/repository_iam_binding.py +2 -2
- pulumi_gcp/securesourcemanager/repository_iam_member.py +2 -2
- pulumi_gcp/securesourcemanager/repository_iam_policy.py +2 -2
- pulumi_gcp/securitycenter/v2_organization_source_iam_binding.py +4 -4
- pulumi_gcp/securitycenter/v2_organization_source_iam_member.py +4 -4
- pulumi_gcp/securitycenter/v2_organization_source_iam_policy.py +4 -4
- pulumi_gcp/serviceaccount/__init__.py +1 -0
- pulumi_gcp/serviceaccount/get_account.py +15 -1
- pulumi_gcp/serviceaccount/get_s.py +132 -0
- pulumi_gcp/serviceaccount/outputs.py +89 -0
- pulumi_gcp/servicedirectory/namespace_iam_binding.py +4 -4
- pulumi_gcp/servicedirectory/namespace_iam_member.py +4 -4
- pulumi_gcp/servicedirectory/namespace_iam_policy.py +4 -4
- pulumi_gcp/servicedirectory/service_iam_binding.py +4 -4
- pulumi_gcp/servicedirectory/service_iam_member.py +4 -4
- pulumi_gcp/servicedirectory/service_iam_policy.py +4 -4
- pulumi_gcp/sourcerepo/repository_iam_binding.py +2 -2
- pulumi_gcp/sourcerepo/repository_iam_member.py +2 -2
- pulumi_gcp/sourcerepo/repository_iam_policy.py +2 -2
- pulumi_gcp/spanner/_inputs.py +208 -12
- pulumi_gcp/spanner/outputs.py +287 -9
- pulumi_gcp/sql/_inputs.py +6 -3
- pulumi_gcp/sql/outputs.py +4 -2
- pulumi_gcp/storage/_inputs.py +3 -6
- pulumi_gcp/storage/bucket.py +7 -7
- pulumi_gcp/storage/bucket_iam_binding.py +2 -2
- pulumi_gcp/storage/bucket_iam_member.py +2 -2
- pulumi_gcp/storage/bucket_iam_policy.py +2 -2
- pulumi_gcp/storage/managed_folder_iam_binding.py +4 -4
- pulumi_gcp/storage/managed_folder_iam_member.py +4 -4
- pulumi_gcp/storage/managed_folder_iam_policy.py +4 -4
- pulumi_gcp/storage/outputs.py +4 -6
- pulumi_gcp/tags/tag_key_iam_binding.py +4 -4
- pulumi_gcp/tags/tag_key_iam_member.py +4 -4
- pulumi_gcp/tags/tag_key_iam_policy.py +4 -4
- pulumi_gcp/tags/tag_value_iam_binding.py +4 -4
- pulumi_gcp/tags/tag_value_iam_member.py +4 -4
- pulumi_gcp/tags/tag_value_iam_policy.py +4 -4
- pulumi_gcp/vertex/ai_feature_store_entity_type_iam_binding.py +2 -2
- pulumi_gcp/vertex/ai_feature_store_entity_type_iam_member.py +2 -2
- pulumi_gcp/vertex/ai_feature_store_entity_type_iam_policy.py +2 -2
- pulumi_gcp/vertex/ai_feature_store_iam_binding.py +2 -2
- pulumi_gcp/vertex/ai_feature_store_iam_member.py +2 -2
- pulumi_gcp/vertex/ai_feature_store_iam_policy.py +2 -2
- pulumi_gcp/vmwareengine/_inputs.py +472 -6
- pulumi_gcp/vmwareengine/outputs.py +668 -22
- pulumi_gcp/vmwareengine/private_cloud.py +44 -0
- pulumi_gcp/workstations/workstation_config.py +6 -6
- pulumi_gcp/workstations/workstation_config_iam_binding.py +2 -2
- pulumi_gcp/workstations/workstation_config_iam_member.py +2 -2
- pulumi_gcp/workstations/workstation_config_iam_policy.py +2 -2
- pulumi_gcp/workstations/workstation_iam_binding.py +2 -2
- pulumi_gcp/workstations/workstation_iam_member.py +2 -2
- pulumi_gcp/workstations/workstation_iam_policy.py +2 -2
- {pulumi_gcp-8.8.0a1730788810.dist-info → pulumi_gcp-8.8.0a1730856812.dist-info}/METADATA +1 -1
- {pulumi_gcp-8.8.0a1730788810.dist-info → pulumi_gcp-8.8.0a1730856812.dist-info}/RECORD +347 -344
- {pulumi_gcp-8.8.0a1730788810.dist-info → pulumi_gcp-8.8.0a1730856812.dist-info}/WHEEL +0 -0
- {pulumi_gcp-8.8.0a1730788810.dist-info → pulumi_gcp-8.8.0a1730856812.dist-info}/top_level.txt +0 -0
@@ -359,7 +359,7 @@ class RegionDiskIamPolicy(pulumi.CustomResource):
|
|
359
359
|
$ pulumi import gcp:compute/regionDiskIamPolicy:RegionDiskIamPolicy editor projects/{{project}}/regions/{{region}}/disks/{{region_disk}}
|
360
360
|
```
|
361
361
|
|
362
|
-
-> **Custom Roles
|
362
|
+
-> **Custom Roles** If you're importing a IAM resource with a custom role, make sure to use the
|
363
363
|
|
364
364
|
full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.
|
365
365
|
|
@@ -538,7 +538,7 @@ class RegionDiskIamPolicy(pulumi.CustomResource):
|
|
538
538
|
$ pulumi import gcp:compute/regionDiskIamPolicy:RegionDiskIamPolicy editor projects/{{project}}/regions/{{region}}/disks/{{region_disk}}
|
539
539
|
```
|
540
540
|
|
541
|
-
-> **Custom Roles
|
541
|
+
-> **Custom Roles** If you're importing a IAM resource with a custom role, make sure to use the
|
542
542
|
|
543
543
|
full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.
|
544
544
|
|
@@ -564,6 +564,43 @@ class RegionSecurityPolicyRule(pulumi.CustomResource):
|
|
564
564
|
action="allow",
|
565
565
|
preview=True)
|
566
566
|
```
|
567
|
+
### Region Security Policy Rule Default Rule
|
568
|
+
|
569
|
+
```python
|
570
|
+
import pulumi
|
571
|
+
import pulumi_gcp as gcp
|
572
|
+
|
573
|
+
default = gcp.compute.RegionSecurityPolicy("default",
|
574
|
+
region="us-west2",
|
575
|
+
name="policywithdefaultrule",
|
576
|
+
description="basic region security policy",
|
577
|
+
type="CLOUD_ARMOR")
|
578
|
+
default_rule = gcp.compute.RegionSecurityPolicyRule("default_rule",
|
579
|
+
region="us-west2",
|
580
|
+
security_policy=default.name,
|
581
|
+
description="new rule",
|
582
|
+
action="deny",
|
583
|
+
priority=2147483647,
|
584
|
+
match={
|
585
|
+
"versioned_expr": "SRC_IPS_V1",
|
586
|
+
"config": {
|
587
|
+
"src_ip_ranges": ["*"],
|
588
|
+
},
|
589
|
+
})
|
590
|
+
policy_rule = gcp.compute.RegionSecurityPolicyRule("policy_rule",
|
591
|
+
region="us-west2",
|
592
|
+
security_policy=default.name,
|
593
|
+
description="new rule",
|
594
|
+
priority=100,
|
595
|
+
match={
|
596
|
+
"versioned_expr": "SRC_IPS_V1",
|
597
|
+
"config": {
|
598
|
+
"src_ip_ranges": ["10.10.0.0/16"],
|
599
|
+
},
|
600
|
+
},
|
601
|
+
action="allow",
|
602
|
+
preview=True)
|
603
|
+
```
|
567
604
|
### Region Security Policy Rule With Preconfigured Waf Config
|
568
605
|
|
569
606
|
```python
|
@@ -814,6 +851,43 @@ class RegionSecurityPolicyRule(pulumi.CustomResource):
|
|
814
851
|
action="allow",
|
815
852
|
preview=True)
|
816
853
|
```
|
854
|
+
### Region Security Policy Rule Default Rule
|
855
|
+
|
856
|
+
```python
|
857
|
+
import pulumi
|
858
|
+
import pulumi_gcp as gcp
|
859
|
+
|
860
|
+
default = gcp.compute.RegionSecurityPolicy("default",
|
861
|
+
region="us-west2",
|
862
|
+
name="policywithdefaultrule",
|
863
|
+
description="basic region security policy",
|
864
|
+
type="CLOUD_ARMOR")
|
865
|
+
default_rule = gcp.compute.RegionSecurityPolicyRule("default_rule",
|
866
|
+
region="us-west2",
|
867
|
+
security_policy=default.name,
|
868
|
+
description="new rule",
|
869
|
+
action="deny",
|
870
|
+
priority=2147483647,
|
871
|
+
match={
|
872
|
+
"versioned_expr": "SRC_IPS_V1",
|
873
|
+
"config": {
|
874
|
+
"src_ip_ranges": ["*"],
|
875
|
+
},
|
876
|
+
})
|
877
|
+
policy_rule = gcp.compute.RegionSecurityPolicyRule("policy_rule",
|
878
|
+
region="us-west2",
|
879
|
+
security_policy=default.name,
|
880
|
+
description="new rule",
|
881
|
+
priority=100,
|
882
|
+
match={
|
883
|
+
"versioned_expr": "SRC_IPS_V1",
|
884
|
+
"config": {
|
885
|
+
"src_ip_ranges": ["10.10.0.0/16"],
|
886
|
+
},
|
887
|
+
},
|
888
|
+
action="allow",
|
889
|
+
preview=True)
|
890
|
+
```
|
817
891
|
### Region Security Policy Rule With Preconfigured Waf Config
|
818
892
|
|
819
893
|
```python
|
@@ -25,11 +25,13 @@ class SecurityPolicyRuleInitArgs:
|
|
25
25
|
priority: pulumi.Input[int],
|
26
26
|
security_policy: pulumi.Input[str],
|
27
27
|
description: Optional[pulumi.Input[str]] = None,
|
28
|
+
header_action: Optional[pulumi.Input['SecurityPolicyRuleHeaderActionArgs']] = None,
|
28
29
|
match: Optional[pulumi.Input['SecurityPolicyRuleMatchArgs']] = None,
|
29
30
|
preconfigured_waf_config: Optional[pulumi.Input['SecurityPolicyRulePreconfiguredWafConfigArgs']] = None,
|
30
31
|
preview: Optional[pulumi.Input[bool]] = None,
|
31
32
|
project: Optional[pulumi.Input[str]] = None,
|
32
|
-
rate_limit_options: Optional[pulumi.Input['SecurityPolicyRuleRateLimitOptionsArgs']] = None
|
33
|
+
rate_limit_options: Optional[pulumi.Input['SecurityPolicyRuleRateLimitOptionsArgs']] = None,
|
34
|
+
redirect_options: Optional[pulumi.Input['SecurityPolicyRuleRedirectOptionsArgs']] = None):
|
33
35
|
"""
|
34
36
|
The set of arguments for constructing a SecurityPolicyRule resource.
|
35
37
|
:param pulumi.Input[str] action: The Action to perform when the rule is matched. The following are the valid actions:
|
@@ -46,6 +48,8 @@ class SecurityPolicyRuleInitArgs:
|
|
46
48
|
|
47
49
|
- - -
|
48
50
|
:param pulumi.Input[str] description: An optional description of this resource. Provide this property when you create the resource.
|
51
|
+
:param pulumi.Input['SecurityPolicyRuleHeaderActionArgs'] header_action: Optional, additional actions that are performed on headers. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
|
52
|
+
Structure is documented below.
|
49
53
|
:param pulumi.Input['SecurityPolicyRuleMatchArgs'] match: A match condition that incoming traffic is evaluated against.
|
50
54
|
If it evaluates to true, the corresponding 'action' is enforced.
|
51
55
|
Structure is documented below.
|
@@ -57,12 +61,16 @@ class SecurityPolicyRuleInitArgs:
|
|
57
61
|
If it is not provided, the provider project is used.
|
58
62
|
:param pulumi.Input['SecurityPolicyRuleRateLimitOptionsArgs'] rate_limit_options: Must be specified if the action is "rate_based_ban" or "throttle". Cannot be specified for any other actions.
|
59
63
|
Structure is documented below.
|
64
|
+
:param pulumi.Input['SecurityPolicyRuleRedirectOptionsArgs'] redirect_options: Parameters defining the redirect action. Cannot be specified for any other actions. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
|
65
|
+
Structure is documented below.
|
60
66
|
"""
|
61
67
|
pulumi.set(__self__, "action", action)
|
62
68
|
pulumi.set(__self__, "priority", priority)
|
63
69
|
pulumi.set(__self__, "security_policy", security_policy)
|
64
70
|
if description is not None:
|
65
71
|
pulumi.set(__self__, "description", description)
|
72
|
+
if header_action is not None:
|
73
|
+
pulumi.set(__self__, "header_action", header_action)
|
66
74
|
if match is not None:
|
67
75
|
pulumi.set(__self__, "match", match)
|
68
76
|
if preconfigured_waf_config is not None:
|
@@ -73,6 +81,8 @@ class SecurityPolicyRuleInitArgs:
|
|
73
81
|
pulumi.set(__self__, "project", project)
|
74
82
|
if rate_limit_options is not None:
|
75
83
|
pulumi.set(__self__, "rate_limit_options", rate_limit_options)
|
84
|
+
if redirect_options is not None:
|
85
|
+
pulumi.set(__self__, "redirect_options", redirect_options)
|
76
86
|
|
77
87
|
@property
|
78
88
|
@pulumi.getter
|
@@ -132,6 +142,19 @@ class SecurityPolicyRuleInitArgs:
|
|
132
142
|
def description(self, value: Optional[pulumi.Input[str]]):
|
133
143
|
pulumi.set(self, "description", value)
|
134
144
|
|
145
|
+
@property
|
146
|
+
@pulumi.getter(name="headerAction")
|
147
|
+
def header_action(self) -> Optional[pulumi.Input['SecurityPolicyRuleHeaderActionArgs']]:
|
148
|
+
"""
|
149
|
+
Optional, additional actions that are performed on headers. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
|
150
|
+
Structure is documented below.
|
151
|
+
"""
|
152
|
+
return pulumi.get(self, "header_action")
|
153
|
+
|
154
|
+
@header_action.setter
|
155
|
+
def header_action(self, value: Optional[pulumi.Input['SecurityPolicyRuleHeaderActionArgs']]):
|
156
|
+
pulumi.set(self, "header_action", value)
|
157
|
+
|
135
158
|
@property
|
136
159
|
@pulumi.getter
|
137
160
|
def match(self) -> Optional[pulumi.Input['SecurityPolicyRuleMatchArgs']]:
|
@@ -198,18 +221,33 @@ class SecurityPolicyRuleInitArgs:
|
|
198
221
|
def rate_limit_options(self, value: Optional[pulumi.Input['SecurityPolicyRuleRateLimitOptionsArgs']]):
|
199
222
|
pulumi.set(self, "rate_limit_options", value)
|
200
223
|
|
224
|
+
@property
|
225
|
+
@pulumi.getter(name="redirectOptions")
|
226
|
+
def redirect_options(self) -> Optional[pulumi.Input['SecurityPolicyRuleRedirectOptionsArgs']]:
|
227
|
+
"""
|
228
|
+
Parameters defining the redirect action. Cannot be specified for any other actions. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
|
229
|
+
Structure is documented below.
|
230
|
+
"""
|
231
|
+
return pulumi.get(self, "redirect_options")
|
232
|
+
|
233
|
+
@redirect_options.setter
|
234
|
+
def redirect_options(self, value: Optional[pulumi.Input['SecurityPolicyRuleRedirectOptionsArgs']]):
|
235
|
+
pulumi.set(self, "redirect_options", value)
|
236
|
+
|
201
237
|
|
202
238
|
@pulumi.input_type
|
203
239
|
class _SecurityPolicyRuleState:
|
204
240
|
def __init__(__self__, *,
|
205
241
|
action: Optional[pulumi.Input[str]] = None,
|
206
242
|
description: Optional[pulumi.Input[str]] = None,
|
243
|
+
header_action: Optional[pulumi.Input['SecurityPolicyRuleHeaderActionArgs']] = None,
|
207
244
|
match: Optional[pulumi.Input['SecurityPolicyRuleMatchArgs']] = None,
|
208
245
|
preconfigured_waf_config: Optional[pulumi.Input['SecurityPolicyRulePreconfiguredWafConfigArgs']] = None,
|
209
246
|
preview: Optional[pulumi.Input[bool]] = None,
|
210
247
|
priority: Optional[pulumi.Input[int]] = None,
|
211
248
|
project: Optional[pulumi.Input[str]] = None,
|
212
249
|
rate_limit_options: Optional[pulumi.Input['SecurityPolicyRuleRateLimitOptionsArgs']] = None,
|
250
|
+
redirect_options: Optional[pulumi.Input['SecurityPolicyRuleRedirectOptionsArgs']] = None,
|
213
251
|
security_policy: Optional[pulumi.Input[str]] = None):
|
214
252
|
"""
|
215
253
|
Input properties used for looking up and filtering SecurityPolicyRule resources.
|
@@ -220,6 +258,8 @@ class _SecurityPolicyRuleState:
|
|
220
258
|
* redirect: redirect to a different target. This can either be an internal reCAPTCHA redirect, or an external URL-based redirect via a 302 response. Parameters for this action can be configured via redirectOptions. This action is only supported in Global Security Policies of type CLOUD_ARMOR.
|
221
259
|
* throttle: limit client traffic to the configured threshold. Configure parameters for this action in rateLimitOptions. Requires rateLimitOptions to be set for this.
|
222
260
|
:param pulumi.Input[str] description: An optional description of this resource. Provide this property when you create the resource.
|
261
|
+
:param pulumi.Input['SecurityPolicyRuleHeaderActionArgs'] header_action: Optional, additional actions that are performed on headers. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
|
262
|
+
Structure is documented below.
|
223
263
|
:param pulumi.Input['SecurityPolicyRuleMatchArgs'] match: A match condition that incoming traffic is evaluated against.
|
224
264
|
If it evaluates to true, the corresponding 'action' is enforced.
|
225
265
|
Structure is documented below.
|
@@ -234,6 +274,8 @@ class _SecurityPolicyRuleState:
|
|
234
274
|
If it is not provided, the provider project is used.
|
235
275
|
:param pulumi.Input['SecurityPolicyRuleRateLimitOptionsArgs'] rate_limit_options: Must be specified if the action is "rate_based_ban" or "throttle". Cannot be specified for any other actions.
|
236
276
|
Structure is documented below.
|
277
|
+
:param pulumi.Input['SecurityPolicyRuleRedirectOptionsArgs'] redirect_options: Parameters defining the redirect action. Cannot be specified for any other actions. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
|
278
|
+
Structure is documented below.
|
237
279
|
:param pulumi.Input[str] security_policy: The name of the security policy this rule belongs to.
|
238
280
|
|
239
281
|
|
@@ -243,6 +285,8 @@ class _SecurityPolicyRuleState:
|
|
243
285
|
pulumi.set(__self__, "action", action)
|
244
286
|
if description is not None:
|
245
287
|
pulumi.set(__self__, "description", description)
|
288
|
+
if header_action is not None:
|
289
|
+
pulumi.set(__self__, "header_action", header_action)
|
246
290
|
if match is not None:
|
247
291
|
pulumi.set(__self__, "match", match)
|
248
292
|
if preconfigured_waf_config is not None:
|
@@ -255,6 +299,8 @@ class _SecurityPolicyRuleState:
|
|
255
299
|
pulumi.set(__self__, "project", project)
|
256
300
|
if rate_limit_options is not None:
|
257
301
|
pulumi.set(__self__, "rate_limit_options", rate_limit_options)
|
302
|
+
if redirect_options is not None:
|
303
|
+
pulumi.set(__self__, "redirect_options", redirect_options)
|
258
304
|
if security_policy is not None:
|
259
305
|
pulumi.set(__self__, "security_policy", security_policy)
|
260
306
|
|
@@ -287,6 +333,19 @@ class _SecurityPolicyRuleState:
|
|
287
333
|
def description(self, value: Optional[pulumi.Input[str]]):
|
288
334
|
pulumi.set(self, "description", value)
|
289
335
|
|
336
|
+
@property
|
337
|
+
@pulumi.getter(name="headerAction")
|
338
|
+
def header_action(self) -> Optional[pulumi.Input['SecurityPolicyRuleHeaderActionArgs']]:
|
339
|
+
"""
|
340
|
+
Optional, additional actions that are performed on headers. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
|
341
|
+
Structure is documented below.
|
342
|
+
"""
|
343
|
+
return pulumi.get(self, "header_action")
|
344
|
+
|
345
|
+
@header_action.setter
|
346
|
+
def header_action(self, value: Optional[pulumi.Input['SecurityPolicyRuleHeaderActionArgs']]):
|
347
|
+
pulumi.set(self, "header_action", value)
|
348
|
+
|
290
349
|
@property
|
291
350
|
@pulumi.getter
|
292
351
|
def match(self) -> Optional[pulumi.Input['SecurityPolicyRuleMatchArgs']]:
|
@@ -367,6 +426,19 @@ class _SecurityPolicyRuleState:
|
|
367
426
|
def rate_limit_options(self, value: Optional[pulumi.Input['SecurityPolicyRuleRateLimitOptionsArgs']]):
|
368
427
|
pulumi.set(self, "rate_limit_options", value)
|
369
428
|
|
429
|
+
@property
|
430
|
+
@pulumi.getter(name="redirectOptions")
|
431
|
+
def redirect_options(self) -> Optional[pulumi.Input['SecurityPolicyRuleRedirectOptionsArgs']]:
|
432
|
+
"""
|
433
|
+
Parameters defining the redirect action. Cannot be specified for any other actions. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
|
434
|
+
Structure is documented below.
|
435
|
+
"""
|
436
|
+
return pulumi.get(self, "redirect_options")
|
437
|
+
|
438
|
+
@redirect_options.setter
|
439
|
+
def redirect_options(self, value: Optional[pulumi.Input['SecurityPolicyRuleRedirectOptionsArgs']]):
|
440
|
+
pulumi.set(self, "redirect_options", value)
|
441
|
+
|
370
442
|
@property
|
371
443
|
@pulumi.getter(name="securityPolicy")
|
372
444
|
def security_policy(self) -> Optional[pulumi.Input[str]]:
|
@@ -390,12 +462,14 @@ class SecurityPolicyRule(pulumi.CustomResource):
|
|
390
462
|
opts: Optional[pulumi.ResourceOptions] = None,
|
391
463
|
action: Optional[pulumi.Input[str]] = None,
|
392
464
|
description: Optional[pulumi.Input[str]] = None,
|
465
|
+
header_action: Optional[pulumi.Input[Union['SecurityPolicyRuleHeaderActionArgs', 'SecurityPolicyRuleHeaderActionArgsDict']]] = None,
|
393
466
|
match: Optional[pulumi.Input[Union['SecurityPolicyRuleMatchArgs', 'SecurityPolicyRuleMatchArgsDict']]] = None,
|
394
467
|
preconfigured_waf_config: Optional[pulumi.Input[Union['SecurityPolicyRulePreconfiguredWafConfigArgs', 'SecurityPolicyRulePreconfiguredWafConfigArgsDict']]] = None,
|
395
468
|
preview: Optional[pulumi.Input[bool]] = None,
|
396
469
|
priority: Optional[pulumi.Input[int]] = None,
|
397
470
|
project: Optional[pulumi.Input[str]] = None,
|
398
471
|
rate_limit_options: Optional[pulumi.Input[Union['SecurityPolicyRuleRateLimitOptionsArgs', 'SecurityPolicyRuleRateLimitOptionsArgsDict']]] = None,
|
472
|
+
redirect_options: Optional[pulumi.Input[Union['SecurityPolicyRuleRedirectOptionsArgs', 'SecurityPolicyRuleRedirectOptionsArgsDict']]] = None,
|
399
473
|
security_policy: Optional[pulumi.Input[str]] = None,
|
400
474
|
__props__=None):
|
401
475
|
"""
|
@@ -442,15 +516,10 @@ class SecurityPolicyRule(pulumi.CustomResource):
|
|
442
516
|
name="policyruletest",
|
443
517
|
description="basic global security policy",
|
444
518
|
type="CLOUD_ARMOR")
|
445
|
-
# A default rule is generated when creating the security_policy resource, import is needed to patch it
|
446
|
-
# import {
|
447
|
-
# id = "projects//global/securityPolicies/policyruletest/priority/2147483647"
|
448
|
-
# to = google_compute_security_policy_rule.default_rule
|
449
|
-
# }
|
450
519
|
default_rule = gcp.compute.SecurityPolicyRule("default_rule",
|
451
520
|
security_policy=default.name,
|
452
521
|
description="default rule",
|
453
|
-
action="
|
522
|
+
action="deny",
|
454
523
|
priority=2147483647,
|
455
524
|
match={
|
456
525
|
"versioned_expr": "SRC_IPS_V1",
|
@@ -543,6 +612,8 @@ class SecurityPolicyRule(pulumi.CustomResource):
|
|
543
612
|
* redirect: redirect to a different target. This can either be an internal reCAPTCHA redirect, or an external URL-based redirect via a 302 response. Parameters for this action can be configured via redirectOptions. This action is only supported in Global Security Policies of type CLOUD_ARMOR.
|
544
613
|
* throttle: limit client traffic to the configured threshold. Configure parameters for this action in rateLimitOptions. Requires rateLimitOptions to be set for this.
|
545
614
|
:param pulumi.Input[str] description: An optional description of this resource. Provide this property when you create the resource.
|
615
|
+
:param pulumi.Input[Union['SecurityPolicyRuleHeaderActionArgs', 'SecurityPolicyRuleHeaderActionArgsDict']] header_action: Optional, additional actions that are performed on headers. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
|
616
|
+
Structure is documented below.
|
546
617
|
:param pulumi.Input[Union['SecurityPolicyRuleMatchArgs', 'SecurityPolicyRuleMatchArgsDict']] match: A match condition that incoming traffic is evaluated against.
|
547
618
|
If it evaluates to true, the corresponding 'action' is enforced.
|
548
619
|
Structure is documented below.
|
@@ -557,6 +628,8 @@ class SecurityPolicyRule(pulumi.CustomResource):
|
|
557
628
|
If it is not provided, the provider project is used.
|
558
629
|
:param pulumi.Input[Union['SecurityPolicyRuleRateLimitOptionsArgs', 'SecurityPolicyRuleRateLimitOptionsArgsDict']] rate_limit_options: Must be specified if the action is "rate_based_ban" or "throttle". Cannot be specified for any other actions.
|
559
630
|
Structure is documented below.
|
631
|
+
:param pulumi.Input[Union['SecurityPolicyRuleRedirectOptionsArgs', 'SecurityPolicyRuleRedirectOptionsArgsDict']] redirect_options: Parameters defining the redirect action. Cannot be specified for any other actions. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
|
632
|
+
Structure is documented below.
|
560
633
|
:param pulumi.Input[str] security_policy: The name of the security policy this rule belongs to.
|
561
634
|
|
562
635
|
|
@@ -612,15 +685,10 @@ class SecurityPolicyRule(pulumi.CustomResource):
|
|
612
685
|
name="policyruletest",
|
613
686
|
description="basic global security policy",
|
614
687
|
type="CLOUD_ARMOR")
|
615
|
-
# A default rule is generated when creating the security_policy resource, import is needed to patch it
|
616
|
-
# import {
|
617
|
-
# id = "projects//global/securityPolicies/policyruletest/priority/2147483647"
|
618
|
-
# to = google_compute_security_policy_rule.default_rule
|
619
|
-
# }
|
620
688
|
default_rule = gcp.compute.SecurityPolicyRule("default_rule",
|
621
689
|
security_policy=default.name,
|
622
690
|
description="default rule",
|
623
|
-
action="
|
691
|
+
action="deny",
|
624
692
|
priority=2147483647,
|
625
693
|
match={
|
626
694
|
"versioned_expr": "SRC_IPS_V1",
|
@@ -721,12 +789,14 @@ class SecurityPolicyRule(pulumi.CustomResource):
|
|
721
789
|
opts: Optional[pulumi.ResourceOptions] = None,
|
722
790
|
action: Optional[pulumi.Input[str]] = None,
|
723
791
|
description: Optional[pulumi.Input[str]] = None,
|
792
|
+
header_action: Optional[pulumi.Input[Union['SecurityPolicyRuleHeaderActionArgs', 'SecurityPolicyRuleHeaderActionArgsDict']]] = None,
|
724
793
|
match: Optional[pulumi.Input[Union['SecurityPolicyRuleMatchArgs', 'SecurityPolicyRuleMatchArgsDict']]] = None,
|
725
794
|
preconfigured_waf_config: Optional[pulumi.Input[Union['SecurityPolicyRulePreconfiguredWafConfigArgs', 'SecurityPolicyRulePreconfiguredWafConfigArgsDict']]] = None,
|
726
795
|
preview: Optional[pulumi.Input[bool]] = None,
|
727
796
|
priority: Optional[pulumi.Input[int]] = None,
|
728
797
|
project: Optional[pulumi.Input[str]] = None,
|
729
798
|
rate_limit_options: Optional[pulumi.Input[Union['SecurityPolicyRuleRateLimitOptionsArgs', 'SecurityPolicyRuleRateLimitOptionsArgsDict']]] = None,
|
799
|
+
redirect_options: Optional[pulumi.Input[Union['SecurityPolicyRuleRedirectOptionsArgs', 'SecurityPolicyRuleRedirectOptionsArgsDict']]] = None,
|
730
800
|
security_policy: Optional[pulumi.Input[str]] = None,
|
731
801
|
__props__=None):
|
732
802
|
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
@@ -741,6 +811,7 @@ class SecurityPolicyRule(pulumi.CustomResource):
|
|
741
811
|
raise TypeError("Missing required property 'action'")
|
742
812
|
__props__.__dict__["action"] = action
|
743
813
|
__props__.__dict__["description"] = description
|
814
|
+
__props__.__dict__["header_action"] = header_action
|
744
815
|
__props__.__dict__["match"] = match
|
745
816
|
__props__.__dict__["preconfigured_waf_config"] = preconfigured_waf_config
|
746
817
|
__props__.__dict__["preview"] = preview
|
@@ -749,6 +820,7 @@ class SecurityPolicyRule(pulumi.CustomResource):
|
|
749
820
|
__props__.__dict__["priority"] = priority
|
750
821
|
__props__.__dict__["project"] = project
|
751
822
|
__props__.__dict__["rate_limit_options"] = rate_limit_options
|
823
|
+
__props__.__dict__["redirect_options"] = redirect_options
|
752
824
|
if security_policy is None and not opts.urn:
|
753
825
|
raise TypeError("Missing required property 'security_policy'")
|
754
826
|
__props__.__dict__["security_policy"] = security_policy
|
@@ -764,12 +836,14 @@ class SecurityPolicyRule(pulumi.CustomResource):
|
|
764
836
|
opts: Optional[pulumi.ResourceOptions] = None,
|
765
837
|
action: Optional[pulumi.Input[str]] = None,
|
766
838
|
description: Optional[pulumi.Input[str]] = None,
|
839
|
+
header_action: Optional[pulumi.Input[Union['SecurityPolicyRuleHeaderActionArgs', 'SecurityPolicyRuleHeaderActionArgsDict']]] = None,
|
767
840
|
match: Optional[pulumi.Input[Union['SecurityPolicyRuleMatchArgs', 'SecurityPolicyRuleMatchArgsDict']]] = None,
|
768
841
|
preconfigured_waf_config: Optional[pulumi.Input[Union['SecurityPolicyRulePreconfiguredWafConfigArgs', 'SecurityPolicyRulePreconfiguredWafConfigArgsDict']]] = None,
|
769
842
|
preview: Optional[pulumi.Input[bool]] = None,
|
770
843
|
priority: Optional[pulumi.Input[int]] = None,
|
771
844
|
project: Optional[pulumi.Input[str]] = None,
|
772
845
|
rate_limit_options: Optional[pulumi.Input[Union['SecurityPolicyRuleRateLimitOptionsArgs', 'SecurityPolicyRuleRateLimitOptionsArgsDict']]] = None,
|
846
|
+
redirect_options: Optional[pulumi.Input[Union['SecurityPolicyRuleRedirectOptionsArgs', 'SecurityPolicyRuleRedirectOptionsArgsDict']]] = None,
|
773
847
|
security_policy: Optional[pulumi.Input[str]] = None) -> 'SecurityPolicyRule':
|
774
848
|
"""
|
775
849
|
Get an existing SecurityPolicyRule resource's state with the given name, id, and optional extra
|
@@ -785,6 +859,8 @@ class SecurityPolicyRule(pulumi.CustomResource):
|
|
785
859
|
* redirect: redirect to a different target. This can either be an internal reCAPTCHA redirect, or an external URL-based redirect via a 302 response. Parameters for this action can be configured via redirectOptions. This action is only supported in Global Security Policies of type CLOUD_ARMOR.
|
786
860
|
* throttle: limit client traffic to the configured threshold. Configure parameters for this action in rateLimitOptions. Requires rateLimitOptions to be set for this.
|
787
861
|
:param pulumi.Input[str] description: An optional description of this resource. Provide this property when you create the resource.
|
862
|
+
:param pulumi.Input[Union['SecurityPolicyRuleHeaderActionArgs', 'SecurityPolicyRuleHeaderActionArgsDict']] header_action: Optional, additional actions that are performed on headers. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
|
863
|
+
Structure is documented below.
|
788
864
|
:param pulumi.Input[Union['SecurityPolicyRuleMatchArgs', 'SecurityPolicyRuleMatchArgsDict']] match: A match condition that incoming traffic is evaluated against.
|
789
865
|
If it evaluates to true, the corresponding 'action' is enforced.
|
790
866
|
Structure is documented below.
|
@@ -799,6 +875,8 @@ class SecurityPolicyRule(pulumi.CustomResource):
|
|
799
875
|
If it is not provided, the provider project is used.
|
800
876
|
:param pulumi.Input[Union['SecurityPolicyRuleRateLimitOptionsArgs', 'SecurityPolicyRuleRateLimitOptionsArgsDict']] rate_limit_options: Must be specified if the action is "rate_based_ban" or "throttle". Cannot be specified for any other actions.
|
801
877
|
Structure is documented below.
|
878
|
+
:param pulumi.Input[Union['SecurityPolicyRuleRedirectOptionsArgs', 'SecurityPolicyRuleRedirectOptionsArgsDict']] redirect_options: Parameters defining the redirect action. Cannot be specified for any other actions. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
|
879
|
+
Structure is documented below.
|
802
880
|
:param pulumi.Input[str] security_policy: The name of the security policy this rule belongs to.
|
803
881
|
|
804
882
|
|
@@ -810,12 +888,14 @@ class SecurityPolicyRule(pulumi.CustomResource):
|
|
810
888
|
|
811
889
|
__props__.__dict__["action"] = action
|
812
890
|
__props__.__dict__["description"] = description
|
891
|
+
__props__.__dict__["header_action"] = header_action
|
813
892
|
__props__.__dict__["match"] = match
|
814
893
|
__props__.__dict__["preconfigured_waf_config"] = preconfigured_waf_config
|
815
894
|
__props__.__dict__["preview"] = preview
|
816
895
|
__props__.__dict__["priority"] = priority
|
817
896
|
__props__.__dict__["project"] = project
|
818
897
|
__props__.__dict__["rate_limit_options"] = rate_limit_options
|
898
|
+
__props__.__dict__["redirect_options"] = redirect_options
|
819
899
|
__props__.__dict__["security_policy"] = security_policy
|
820
900
|
return SecurityPolicyRule(resource_name, opts=opts, __props__=__props__)
|
821
901
|
|
@@ -840,6 +920,15 @@ class SecurityPolicyRule(pulumi.CustomResource):
|
|
840
920
|
"""
|
841
921
|
return pulumi.get(self, "description")
|
842
922
|
|
923
|
+
@property
|
924
|
+
@pulumi.getter(name="headerAction")
|
925
|
+
def header_action(self) -> pulumi.Output[Optional['outputs.SecurityPolicyRuleHeaderAction']]:
|
926
|
+
"""
|
927
|
+
Optional, additional actions that are performed on headers. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
|
928
|
+
Structure is documented below.
|
929
|
+
"""
|
930
|
+
return pulumi.get(self, "header_action")
|
931
|
+
|
843
932
|
@property
|
844
933
|
@pulumi.getter
|
845
934
|
def match(self) -> pulumi.Output[Optional['outputs.SecurityPolicyRuleMatch']]:
|
@@ -896,6 +985,15 @@ class SecurityPolicyRule(pulumi.CustomResource):
|
|
896
985
|
"""
|
897
986
|
return pulumi.get(self, "rate_limit_options")
|
898
987
|
|
988
|
+
@property
|
989
|
+
@pulumi.getter(name="redirectOptions")
|
990
|
+
def redirect_options(self) -> pulumi.Output[Optional['outputs.SecurityPolicyRuleRedirectOptions']]:
|
991
|
+
"""
|
992
|
+
Parameters defining the redirect action. Cannot be specified for any other actions. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
|
993
|
+
Structure is documented below.
|
994
|
+
"""
|
995
|
+
return pulumi.get(self, "redirect_options")
|
996
|
+
|
899
997
|
@property
|
900
998
|
@pulumi.getter(name="securityPolicy")
|
901
999
|
def security_policy(self) -> pulumi.Output[str]:
|
@@ -413,7 +413,7 @@ class SnapshotIamBinding(pulumi.CustomResource):
|
|
413
413
|
$ pulumi import gcp:compute/snapshotIamBinding:SnapshotIamBinding editor projects/{{project}}/global/snapshots/{{snapshot}}
|
414
414
|
```
|
415
415
|
|
416
|
-
-> **Custom Roles
|
416
|
+
-> **Custom Roles** If you're importing a IAM resource with a custom role, make sure to use the
|
417
417
|
|
418
418
|
full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.
|
419
419
|
|
@@ -593,7 +593,7 @@ class SnapshotIamBinding(pulumi.CustomResource):
|
|
593
593
|
$ pulumi import gcp:compute/snapshotIamBinding:SnapshotIamBinding editor projects/{{project}}/global/snapshots/{{snapshot}}
|
594
594
|
```
|
595
595
|
|
596
|
-
-> **Custom Roles
|
596
|
+
-> **Custom Roles** If you're importing a IAM resource with a custom role, make sure to use the
|
597
597
|
|
598
598
|
full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.
|
599
599
|
|
@@ -413,7 +413,7 @@ class SnapshotIamMember(pulumi.CustomResource):
|
|
413
413
|
$ pulumi import gcp:compute/snapshotIamMember:SnapshotIamMember editor projects/{{project}}/global/snapshots/{{snapshot}}
|
414
414
|
```
|
415
415
|
|
416
|
-
-> **Custom Roles
|
416
|
+
-> **Custom Roles** If you're importing a IAM resource with a custom role, make sure to use the
|
417
417
|
|
418
418
|
full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.
|
419
419
|
|
@@ -593,7 +593,7 @@ class SnapshotIamMember(pulumi.CustomResource):
|
|
593
593
|
$ pulumi import gcp:compute/snapshotIamMember:SnapshotIamMember editor projects/{{project}}/global/snapshots/{{snapshot}}
|
594
594
|
```
|
595
595
|
|
596
|
-
-> **Custom Roles
|
596
|
+
-> **Custom Roles** If you're importing a IAM resource with a custom role, make sure to use the
|
597
597
|
|
598
598
|
full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.
|
599
599
|
|
@@ -310,7 +310,7 @@ class SnapshotIamPolicy(pulumi.CustomResource):
|
|
310
310
|
$ pulumi import gcp:compute/snapshotIamPolicy:SnapshotIamPolicy editor projects/{{project}}/global/snapshots/{{snapshot}}
|
311
311
|
```
|
312
312
|
|
313
|
-
-> **Custom Roles
|
313
|
+
-> **Custom Roles** If you're importing a IAM resource with a custom role, make sure to use the
|
314
314
|
|
315
315
|
full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.
|
316
316
|
|
@@ -478,7 +478,7 @@ class SnapshotIamPolicy(pulumi.CustomResource):
|
|
478
478
|
$ pulumi import gcp:compute/snapshotIamPolicy:SnapshotIamPolicy editor projects/{{project}}/global/snapshots/{{snapshot}}
|
479
479
|
```
|
480
480
|
|
481
|
-
-> **Custom Roles
|
481
|
+
-> **Custom Roles** If you're importing a IAM resource with a custom role, make sure to use the
|
482
482
|
|
483
483
|
full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.
|
484
484
|
|
@@ -597,7 +597,7 @@ class SubnetworkIAMBinding(pulumi.CustomResource):
|
|
597
597
|
$ pulumi import gcp:compute/subnetworkIAMBinding:SubnetworkIAMBinding editor projects/{{project}}/regions/{{region}}/subnetworks/{{subnetwork}}
|
598
598
|
```
|
599
599
|
|
600
|
-
-> **Custom Roles
|
600
|
+
-> **Custom Roles** If you're importing a IAM resource with a custom role, make sure to use the
|
601
601
|
|
602
602
|
full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.
|
603
603
|
|
@@ -911,7 +911,7 @@ class SubnetworkIAMBinding(pulumi.CustomResource):
|
|
911
911
|
$ pulumi import gcp:compute/subnetworkIAMBinding:SubnetworkIAMBinding editor projects/{{project}}/regions/{{region}}/subnetworks/{{subnetwork}}
|
912
912
|
```
|
913
913
|
|
914
|
-
-> **Custom Roles
|
914
|
+
-> **Custom Roles** If you're importing a IAM resource with a custom role, make sure to use the
|
915
915
|
|
916
916
|
full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.
|
917
917
|
|
@@ -597,7 +597,7 @@ class SubnetworkIAMMember(pulumi.CustomResource):
|
|
597
597
|
$ pulumi import gcp:compute/subnetworkIAMMember:SubnetworkIAMMember editor projects/{{project}}/regions/{{region}}/subnetworks/{{subnetwork}}
|
598
598
|
```
|
599
599
|
|
600
|
-
-> **Custom Roles
|
600
|
+
-> **Custom Roles** If you're importing a IAM resource with a custom role, make sure to use the
|
601
601
|
|
602
602
|
full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.
|
603
603
|
|
@@ -911,7 +911,7 @@ class SubnetworkIAMMember(pulumi.CustomResource):
|
|
911
911
|
$ pulumi import gcp:compute/subnetworkIAMMember:SubnetworkIAMMember editor projects/{{project}}/regions/{{region}}/subnetworks/{{subnetwork}}
|
912
912
|
```
|
913
913
|
|
914
|
-
-> **Custom Roles
|
914
|
+
-> **Custom Roles** If you're importing a IAM resource with a custom role, make sure to use the
|
915
915
|
|
916
916
|
full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.
|
917
917
|
|
@@ -482,7 +482,7 @@ class SubnetworkIAMPolicy(pulumi.CustomResource):
|
|
482
482
|
$ pulumi import gcp:compute/subnetworkIAMPolicy:SubnetworkIAMPolicy editor projects/{{project}}/regions/{{region}}/subnetworks/{{subnetwork}}
|
483
483
|
```
|
484
484
|
|
485
|
-
-> **Custom Roles
|
485
|
+
-> **Custom Roles** If you're importing a IAM resource with a custom role, make sure to use the
|
486
486
|
|
487
487
|
full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.
|
488
488
|
|
@@ -782,7 +782,7 @@ class SubnetworkIAMPolicy(pulumi.CustomResource):
|
|
782
782
|
$ pulumi import gcp:compute/subnetworkIAMPolicy:SubnetworkIAMPolicy editor projects/{{project}}/regions/{{region}}/subnetworks/{{subnetwork}}
|
783
783
|
```
|
784
784
|
|
785
|
-
-> **Custom Roles
|
785
|
+
-> **Custom Roles** If you're importing a IAM resource with a custom role, make sure to use the
|
786
786
|
|
787
787
|
full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.
|
788
788
|
|
pulumi_gcp/compute/url_map.py
CHANGED
@@ -1220,7 +1220,7 @@ class URLMap(pulumi.CustomResource):
|
|
1220
1220
|
default_custom_error_response_policy={
|
1221
1221
|
"error_response_rules": [{
|
1222
1222
|
"match_response_codes": ["5xx"],
|
1223
|
-
"path": "
|
1223
|
+
"path": "/internal_error.html",
|
1224
1224
|
"override_response_code": 502,
|
1225
1225
|
}],
|
1226
1226
|
"error_service": error.id,
|
@@ -1239,24 +1239,24 @@ class URLMap(pulumi.CustomResource):
|
|
1239
1239
|
"4xx",
|
1240
1240
|
"5xx",
|
1241
1241
|
],
|
1242
|
-
"path": "/
|
1242
|
+
"path": "/login_error.html",
|
1243
1243
|
"override_response_code": 404,
|
1244
1244
|
},
|
1245
1245
|
{
|
1246
1246
|
"match_response_codes": ["503"],
|
1247
|
-
"path": "/
|
1247
|
+
"path": "/bad_gateway.html",
|
1248
1248
|
"override_response_code": 502,
|
1249
1249
|
},
|
1250
1250
|
],
|
1251
1251
|
"error_service": error.id,
|
1252
1252
|
},
|
1253
1253
|
"path_rules": [{
|
1254
|
-
"paths": ["/*"],
|
1254
|
+
"paths": ["/private/*"],
|
1255
1255
|
"service": example.id,
|
1256
1256
|
"custom_error_response_policy": {
|
1257
1257
|
"error_response_rules": [{
|
1258
1258
|
"match_response_codes": ["4xx"],
|
1259
|
-
"path": "/
|
1259
|
+
"path": "/login.html",
|
1260
1260
|
"override_response_code": 401,
|
1261
1261
|
}],
|
1262
1262
|
"error_service": error.id,
|
@@ -1958,7 +1958,7 @@ class URLMap(pulumi.CustomResource):
|
|
1958
1958
|
default_custom_error_response_policy={
|
1959
1959
|
"error_response_rules": [{
|
1960
1960
|
"match_response_codes": ["5xx"],
|
1961
|
-
"path": "
|
1961
|
+
"path": "/internal_error.html",
|
1962
1962
|
"override_response_code": 502,
|
1963
1963
|
}],
|
1964
1964
|
"error_service": error.id,
|
@@ -1977,24 +1977,24 @@ class URLMap(pulumi.CustomResource):
|
|
1977
1977
|
"4xx",
|
1978
1978
|
"5xx",
|
1979
1979
|
],
|
1980
|
-
"path": "/
|
1980
|
+
"path": "/login_error.html",
|
1981
1981
|
"override_response_code": 404,
|
1982
1982
|
},
|
1983
1983
|
{
|
1984
1984
|
"match_response_codes": ["503"],
|
1985
|
-
"path": "/
|
1985
|
+
"path": "/bad_gateway.html",
|
1986
1986
|
"override_response_code": 502,
|
1987
1987
|
},
|
1988
1988
|
],
|
1989
1989
|
"error_service": error.id,
|
1990
1990
|
},
|
1991
1991
|
"path_rules": [{
|
1992
|
-
"paths": ["/*"],
|
1992
|
+
"paths": ["/private/*"],
|
1993
1993
|
"service": example.id,
|
1994
1994
|
"custom_error_response_policy": {
|
1995
1995
|
"error_response_rules": [{
|
1996
1996
|
"match_response_codes": ["4xx"],
|
1997
|
-
"path": "/
|
1997
|
+
"path": "/login.html",
|
1998
1998
|
"override_response_code": 401,
|
1999
1999
|
}],
|
2000
2000
|
"error_service": error.id,
|