pulumi-gcp 8.8.0a1730615974__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.
Files changed (347) hide show
  1. pulumi_gcp/__init__.py +8 -0
  2. pulumi_gcp/accesscontextmanager/access_policy_iam_binding.py +4 -4
  3. pulumi_gcp/accesscontextmanager/access_policy_iam_member.py +4 -4
  4. pulumi_gcp/accesscontextmanager/access_policy_iam_policy.py +4 -4
  5. pulumi_gcp/apigateway/api_config_iam_binding.py +2 -2
  6. pulumi_gcp/apigateway/api_config_iam_member.py +2 -2
  7. pulumi_gcp/apigateway/api_config_iam_policy.py +2 -2
  8. pulumi_gcp/apigateway/api_iam_binding.py +2 -2
  9. pulumi_gcp/apigateway/api_iam_member.py +2 -2
  10. pulumi_gcp/apigateway/api_iam_policy.py +2 -2
  11. pulumi_gcp/apigateway/gateway_iam_binding.py +2 -2
  12. pulumi_gcp/apigateway/gateway_iam_member.py +2 -2
  13. pulumi_gcp/apigateway/gateway_iam_policy.py +2 -2
  14. pulumi_gcp/apigee/environment_iam_binding.py +4 -4
  15. pulumi_gcp/apigee/environment_iam_member.py +4 -4
  16. pulumi_gcp/apigee/environment_iam_policy.py +4 -4
  17. pulumi_gcp/appengine/engine_split_traffic.py +4 -4
  18. pulumi_gcp/apphub/_inputs.py +6 -3
  19. pulumi_gcp/apphub/application.py +30 -4
  20. pulumi_gcp/apphub/outputs.py +8 -4
  21. pulumi_gcp/artifactregistry/repository_iam_binding.py +2 -2
  22. pulumi_gcp/artifactregistry/repository_iam_member.py +2 -2
  23. pulumi_gcp/artifactregistry/repository_iam_policy.py +2 -2
  24. pulumi_gcp/assuredworkloads/_inputs.py +34 -0
  25. pulumi_gcp/assuredworkloads/outputs.py +37 -0
  26. pulumi_gcp/assuredworkloads/workload.py +56 -3
  27. pulumi_gcp/backupdisasterrecovery/_inputs.py +0 -6
  28. pulumi_gcp/backupdisasterrecovery/management_server.py +80 -34
  29. pulumi_gcp/backupdisasterrecovery/outputs.py +0 -4
  30. pulumi_gcp/biglake/table.py +12 -12
  31. pulumi_gcp/bigquery/_inputs.py +60 -0
  32. pulumi_gcp/bigquery/connection.py +2 -2
  33. pulumi_gcp/bigquery/connection_iam_binding.py +2 -2
  34. pulumi_gcp/bigquery/connection_iam_member.py +2 -2
  35. pulumi_gcp/bigquery/connection_iam_policy.py +2 -2
  36. pulumi_gcp/bigquery/dataset.py +99 -2
  37. pulumi_gcp/bigquery/dataset_access.py +2 -2
  38. pulumi_gcp/bigquery/dataset_iam_binding.py +53 -0
  39. pulumi_gcp/bigquery/dataset_iam_member.py +53 -0
  40. pulumi_gcp/bigquery/dataset_iam_policy.py +32 -0
  41. pulumi_gcp/bigquery/get_dataset.py +12 -1
  42. pulumi_gcp/bigquery/iam_binding.py +2 -2
  43. pulumi_gcp/bigquery/iam_member.py +2 -2
  44. pulumi_gcp/bigquery/iam_policy.py +2 -2
  45. pulumi_gcp/bigquery/outputs.py +87 -0
  46. pulumi_gcp/bigquery/routine.py +6 -6
  47. pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_binding.py +2 -2
  48. pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_member.py +2 -2
  49. pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_policy.py +2 -2
  50. pulumi_gcp/bigqueryanalyticshub/listing_iam_binding.py +2 -2
  51. pulumi_gcp/bigqueryanalyticshub/listing_iam_member.py +2 -2
  52. pulumi_gcp/bigqueryanalyticshub/listing_iam_policy.py +2 -2
  53. pulumi_gcp/bigquerydatapolicy/data_policy_iam_binding.py +2 -2
  54. pulumi_gcp/bigquerydatapolicy/data_policy_iam_member.py +2 -2
  55. pulumi_gcp/bigquerydatapolicy/data_policy_iam_policy.py +2 -2
  56. pulumi_gcp/binaryauthorization/attestor_iam_binding.py +2 -2
  57. pulumi_gcp/binaryauthorization/attestor_iam_member.py +2 -2
  58. pulumi_gcp/binaryauthorization/attestor_iam_policy.py +2 -2
  59. pulumi_gcp/certificateauthority/ca_pool_iam_binding.py +2 -2
  60. pulumi_gcp/certificateauthority/ca_pool_iam_member.py +2 -2
  61. pulumi_gcp/certificateauthority/ca_pool_iam_policy.py +2 -2
  62. pulumi_gcp/certificateauthority/certificate_template_iam_binding.py +2 -2
  63. pulumi_gcp/certificateauthority/certificate_template_iam_member.py +2 -2
  64. pulumi_gcp/certificateauthority/certificate_template_iam_policy.py +2 -2
  65. pulumi_gcp/cloudbuild/trigger.py +18 -18
  66. pulumi_gcp/cloudbuildv2/connection_iam_binding.py +2 -2
  67. pulumi_gcp/cloudbuildv2/connection_iam_member.py +2 -2
  68. pulumi_gcp/cloudbuildv2/connection_iam_policy.py +2 -2
  69. pulumi_gcp/clouddeploy/delivery_pipeline.py +10 -10
  70. pulumi_gcp/cloudfunctions/function_iam_binding.py +2 -2
  71. pulumi_gcp/cloudfunctions/function_iam_member.py +2 -2
  72. pulumi_gcp/cloudfunctions/function_iam_policy.py +2 -2
  73. pulumi_gcp/cloudfunctionsv2/function.py +22 -22
  74. pulumi_gcp/cloudfunctionsv2/function_iam_binding.py +2 -2
  75. pulumi_gcp/cloudfunctionsv2/function_iam_member.py +2 -2
  76. pulumi_gcp/cloudfunctionsv2/function_iam_policy.py +2 -2
  77. pulumi_gcp/cloudrun/iam_binding.py +2 -2
  78. pulumi_gcp/cloudrun/iam_member.py +2 -2
  79. pulumi_gcp/cloudrun/iam_policy.py +2 -2
  80. pulumi_gcp/cloudrun/service.py +24 -24
  81. pulumi_gcp/cloudrunv2/job_iam_binding.py +2 -2
  82. pulumi_gcp/cloudrunv2/job_iam_member.py +2 -2
  83. pulumi_gcp/cloudrunv2/job_iam_policy.py +2 -2
  84. pulumi_gcp/cloudrunv2/service.py +2 -2
  85. pulumi_gcp/cloudrunv2/service_iam_binding.py +2 -2
  86. pulumi_gcp/cloudrunv2/service_iam_member.py +2 -2
  87. pulumi_gcp/cloudrunv2/service_iam_policy.py +2 -2
  88. pulumi_gcp/cloudscheduler/job.py +4 -4
  89. pulumi_gcp/cloudtasks/queue_iam_binding.py +2 -2
  90. pulumi_gcp/cloudtasks/queue_iam_member.py +2 -2
  91. pulumi_gcp/cloudtasks/queue_iam_policy.py +2 -2
  92. pulumi_gcp/compute/__init__.py +1 -0
  93. pulumi_gcp/compute/_inputs.py +182 -50
  94. pulumi_gcp/compute/backend_bucket_iam_binding.py +2 -2
  95. pulumi_gcp/compute/backend_bucket_iam_member.py +2 -2
  96. pulumi_gcp/compute/backend_bucket_iam_policy.py +2 -2
  97. pulumi_gcp/compute/backend_service_iam_binding.py +2 -2
  98. pulumi_gcp/compute/backend_service_iam_member.py +2 -2
  99. pulumi_gcp/compute/backend_service_iam_policy.py +2 -2
  100. pulumi_gcp/compute/disk_iam_binding.py +2 -2
  101. pulumi_gcp/compute/disk_iam_member.py +2 -2
  102. pulumi_gcp/compute/disk_iam_policy.py +2 -2
  103. pulumi_gcp/compute/get_instance_guest_attributes.py +277 -0
  104. pulumi_gcp/compute/image.py +76 -22
  105. pulumi_gcp/compute/image_iam_binding.py +2 -2
  106. pulumi_gcp/compute/image_iam_member.py +2 -2
  107. pulumi_gcp/compute/image_iam_policy.py +2 -2
  108. pulumi_gcp/compute/instance_iam_binding.py +2 -2
  109. pulumi_gcp/compute/instance_iam_member.py +2 -2
  110. pulumi_gcp/compute/instance_iam_policy.py +2 -2
  111. pulumi_gcp/compute/machine_image_iam_binding.py +2 -2
  112. pulumi_gcp/compute/machine_image_iam_member.py +2 -2
  113. pulumi_gcp/compute/machine_image_iam_policy.py +2 -2
  114. pulumi_gcp/compute/outputs.py +197 -30
  115. pulumi_gcp/compute/region_backend_service_iam_binding.py +2 -2
  116. pulumi_gcp/compute/region_backend_service_iam_member.py +2 -2
  117. pulumi_gcp/compute/region_backend_service_iam_policy.py +2 -2
  118. pulumi_gcp/compute/region_disk_iam_binding.py +2 -2
  119. pulumi_gcp/compute/region_disk_iam_member.py +2 -2
  120. pulumi_gcp/compute/region_disk_iam_policy.py +2 -2
  121. pulumi_gcp/compute/region_security_policy_rule.py +74 -0
  122. pulumi_gcp/compute/security_policy_rule.py +111 -13
  123. pulumi_gcp/compute/snapshot_iam_binding.py +2 -2
  124. pulumi_gcp/compute/snapshot_iam_member.py +2 -2
  125. pulumi_gcp/compute/snapshot_iam_policy.py +2 -2
  126. pulumi_gcp/compute/subnetwork_iam_binding.py +2 -2
  127. pulumi_gcp/compute/subnetwork_iam_member.py +2 -2
  128. pulumi_gcp/compute/subnetwork_iam_policy.py +2 -2
  129. pulumi_gcp/compute/url_map.py +10 -10
  130. pulumi_gcp/container/aws_node_pool.py +12 -12
  131. pulumi_gcp/containeranalysis/note_iam_binding.py +2 -2
  132. pulumi_gcp/containeranalysis/note_iam_member.py +2 -2
  133. pulumi_gcp/containeranalysis/note_iam_policy.py +2 -2
  134. pulumi_gcp/datacatalog/entry_group_iam_binding.py +2 -2
  135. pulumi_gcp/datacatalog/entry_group_iam_member.py +2 -2
  136. pulumi_gcp/datacatalog/entry_group_iam_policy.py +2 -2
  137. pulumi_gcp/datacatalog/policy_tag_iam_binding.py +4 -4
  138. pulumi_gcp/datacatalog/policy_tag_iam_member.py +4 -4
  139. pulumi_gcp/datacatalog/policy_tag_iam_policy.py +4 -4
  140. pulumi_gcp/datacatalog/tag_template_iam_binding.py +2 -2
  141. pulumi_gcp/datacatalog/tag_template_iam_member.py +2 -2
  142. pulumi_gcp/datacatalog/tag_template_iam_policy.py +2 -2
  143. pulumi_gcp/datacatalog/taxonomy_iam_binding.py +2 -2
  144. pulumi_gcp/datacatalog/taxonomy_iam_member.py +2 -2
  145. pulumi_gcp/datacatalog/taxonomy_iam_policy.py +2 -2
  146. pulumi_gcp/dataplex/aspect_type_iam_binding.py +2 -2
  147. pulumi_gcp/dataplex/aspect_type_iam_member.py +2 -2
  148. pulumi_gcp/dataplex/aspect_type_iam_policy.py +2 -2
  149. pulumi_gcp/dataplex/asset_iam_binding.py +2 -2
  150. pulumi_gcp/dataplex/asset_iam_member.py +2 -2
  151. pulumi_gcp/dataplex/asset_iam_policy.py +2 -2
  152. pulumi_gcp/dataplex/datascan_iam_binding.py +2 -2
  153. pulumi_gcp/dataplex/datascan_iam_member.py +2 -2
  154. pulumi_gcp/dataplex/datascan_iam_policy.py +2 -2
  155. pulumi_gcp/dataplex/entry_group_iam_binding.py +2 -2
  156. pulumi_gcp/dataplex/entry_group_iam_member.py +2 -2
  157. pulumi_gcp/dataplex/entry_group_iam_policy.py +2 -2
  158. pulumi_gcp/dataplex/entry_type_iam_binding.py +2 -2
  159. pulumi_gcp/dataplex/entry_type_iam_member.py +2 -2
  160. pulumi_gcp/dataplex/entry_type_iam_policy.py +2 -2
  161. pulumi_gcp/dataplex/lake_iam_binding.py +2 -2
  162. pulumi_gcp/dataplex/lake_iam_member.py +2 -2
  163. pulumi_gcp/dataplex/lake_iam_policy.py +2 -2
  164. pulumi_gcp/dataplex/task.py +4 -4
  165. pulumi_gcp/dataplex/task_iam_binding.py +2 -2
  166. pulumi_gcp/dataplex/task_iam_member.py +2 -2
  167. pulumi_gcp/dataplex/task_iam_policy.py +2 -2
  168. pulumi_gcp/dataplex/zone_iam_binding.py +2 -2
  169. pulumi_gcp/dataplex/zone_iam_member.py +2 -2
  170. pulumi_gcp/dataplex/zone_iam_policy.py +2 -2
  171. pulumi_gcp/dataproc/autoscaling_policy_iam_binding.py +2 -2
  172. pulumi_gcp/dataproc/autoscaling_policy_iam_member.py +2 -2
  173. pulumi_gcp/dataproc/autoscaling_policy_iam_policy.py +2 -2
  174. pulumi_gcp/dataproc/batch.py +24 -24
  175. pulumi_gcp/dataproc/cluster.py +2 -2
  176. pulumi_gcp/dataproc/job.py +4 -4
  177. pulumi_gcp/dataproc/metastore_federation_iam_binding.py +2 -2
  178. pulumi_gcp/dataproc/metastore_federation_iam_member.py +2 -2
  179. pulumi_gcp/dataproc/metastore_federation_iam_policy.py +2 -2
  180. pulumi_gcp/dataproc/metastore_service_iam_binding.py +2 -2
  181. pulumi_gcp/dataproc/metastore_service_iam_member.py +2 -2
  182. pulumi_gcp/dataproc/metastore_service_iam_policy.py +2 -2
  183. pulumi_gcp/diagflow/cx_flow.py +4 -4
  184. pulumi_gcp/diagflow/cx_page.py +10 -10
  185. pulumi_gcp/dns/dns_managed_zone_iam_binding.py +2 -2
  186. pulumi_gcp/dns/dns_managed_zone_iam_member.py +2 -2
  187. pulumi_gcp/dns/dns_managed_zone_iam_policy.py +2 -2
  188. pulumi_gcp/endpoints/consumers_iam_binding.py +2 -2
  189. pulumi_gcp/endpoints/consumers_iam_member.py +2 -2
  190. pulumi_gcp/endpoints/consumers_iam_policy.py +2 -2
  191. pulumi_gcp/endpoints/service_iam_binding.py +4 -4
  192. pulumi_gcp/endpoints/service_iam_member.py +4 -4
  193. pulumi_gcp/endpoints/service_iam_policy.py +4 -4
  194. pulumi_gcp/firebase/extensions_instance.py +24 -24
  195. pulumi_gcp/gkebackup/backup_plan_iam_binding.py +2 -2
  196. pulumi_gcp/gkebackup/backup_plan_iam_member.py +2 -2
  197. pulumi_gcp/gkebackup/backup_plan_iam_policy.py +2 -2
  198. pulumi_gcp/gkebackup/restore_plan.py +18 -18
  199. pulumi_gcp/gkebackup/restore_plan_iam_binding.py +2 -2
  200. pulumi_gcp/gkebackup/restore_plan_iam_member.py +2 -2
  201. pulumi_gcp/gkebackup/restore_plan_iam_policy.py +2 -2
  202. pulumi_gcp/gkehub/_inputs.py +21 -21
  203. pulumi_gcp/gkehub/feature_iam_binding.py +2 -2
  204. pulumi_gcp/gkehub/feature_iam_member.py +2 -2
  205. pulumi_gcp/gkehub/feature_iam_policy.py +2 -2
  206. pulumi_gcp/gkehub/membership_iam_binding.py +2 -2
  207. pulumi_gcp/gkehub/membership_iam_member.py +2 -2
  208. pulumi_gcp/gkehub/membership_iam_policy.py +2 -2
  209. pulumi_gcp/gkehub/outputs.py +13 -13
  210. pulumi_gcp/gkehub/scope_iam_binding.py +2 -2
  211. pulumi_gcp/gkehub/scope_iam_member.py +2 -2
  212. pulumi_gcp/gkehub/scope_iam_policy.py +2 -2
  213. pulumi_gcp/healthcare/consent_store_iam_binding.py +4 -4
  214. pulumi_gcp/healthcare/consent_store_iam_member.py +4 -4
  215. pulumi_gcp/healthcare/consent_store_iam_policy.py +4 -4
  216. pulumi_gcp/iap/__init__.py +1 -0
  217. pulumi_gcp/iap/_inputs.py +1002 -0
  218. pulumi_gcp/iap/app_engine_service_iam_binding.py +2 -2
  219. pulumi_gcp/iap/app_engine_service_iam_member.py +2 -2
  220. pulumi_gcp/iap/app_engine_service_iam_policy.py +2 -2
  221. pulumi_gcp/iap/app_engine_version_iam_binding.py +2 -2
  222. pulumi_gcp/iap/app_engine_version_iam_member.py +2 -2
  223. pulumi_gcp/iap/app_engine_version_iam_policy.py +2 -2
  224. pulumi_gcp/iap/outputs.py +827 -0
  225. pulumi_gcp/iap/settings.py +546 -0
  226. pulumi_gcp/iap/tunnel_dest_group_iam_binding.py +2 -2
  227. pulumi_gcp/iap/tunnel_dest_group_iam_member.py +2 -2
  228. pulumi_gcp/iap/tunnel_dest_group_iam_policy.py +2 -2
  229. pulumi_gcp/iap/tunnel_iam_binding.py +2 -2
  230. pulumi_gcp/iap/tunnel_iam_member.py +2 -2
  231. pulumi_gcp/iap/tunnel_iam_policy.py +2 -2
  232. pulumi_gcp/iap/tunnel_instance_iam_binding.py +2 -2
  233. pulumi_gcp/iap/tunnel_instance_iam_member.py +2 -2
  234. pulumi_gcp/iap/tunnel_instance_iam_policy.py +2 -2
  235. pulumi_gcp/iap/web_backend_service_iam_binding.py +2 -2
  236. pulumi_gcp/iap/web_backend_service_iam_member.py +2 -2
  237. pulumi_gcp/iap/web_backend_service_iam_policy.py +2 -2
  238. pulumi_gcp/iap/web_iam_binding.py +2 -2
  239. pulumi_gcp/iap/web_iam_member.py +2 -2
  240. pulumi_gcp/iap/web_iam_policy.py +2 -2
  241. pulumi_gcp/iap/web_region_backend_service_iam_binding.py +2 -2
  242. pulumi_gcp/iap/web_region_backend_service_iam_member.py +2 -2
  243. pulumi_gcp/iap/web_region_backend_service_iam_policy.py +2 -2
  244. pulumi_gcp/iap/web_type_app_enging_iam_binding.py +2 -2
  245. pulumi_gcp/iap/web_type_app_enging_iam_member.py +2 -2
  246. pulumi_gcp/iap/web_type_app_enging_iam_policy.py +2 -2
  247. pulumi_gcp/iap/web_type_compute_iam_binding.py +2 -2
  248. pulumi_gcp/iap/web_type_compute_iam_member.py +2 -2
  249. pulumi_gcp/iap/web_type_compute_iam_policy.py +2 -2
  250. pulumi_gcp/identityplatform/config.py +2 -2
  251. pulumi_gcp/kms/ekm_connection_iam_binding.py +2 -2
  252. pulumi_gcp/kms/ekm_connection_iam_member.py +2 -2
  253. pulumi_gcp/kms/ekm_connection_iam_policy.py +2 -2
  254. pulumi_gcp/logging/log_view_iam_binding.py +4 -4
  255. pulumi_gcp/logging/log_view_iam_member.py +4 -4
  256. pulumi_gcp/logging/log_view_iam_policy.py +4 -4
  257. pulumi_gcp/memorystore/_inputs.py +117 -4
  258. pulumi_gcp/memorystore/instance.py +105 -0
  259. pulumi_gcp/memorystore/outputs.py +80 -4
  260. pulumi_gcp/networksecurity/address_group_iam_binding.py +2 -2
  261. pulumi_gcp/networksecurity/address_group_iam_member.py +2 -2
  262. pulumi_gcp/networksecurity/address_group_iam_policy.py +2 -2
  263. pulumi_gcp/networksecurity/gateway_security_policy.py +7 -0
  264. pulumi_gcp/networkservices/edge_cache_service.py +2 -2
  265. pulumi_gcp/networkservices/http_route.py +4 -4
  266. pulumi_gcp/notebooks/instance_iam_binding.py +2 -2
  267. pulumi_gcp/notebooks/instance_iam_member.py +2 -2
  268. pulumi_gcp/notebooks/instance_iam_policy.py +2 -2
  269. pulumi_gcp/notebooks/runtime_iam_binding.py +2 -2
  270. pulumi_gcp/notebooks/runtime_iam_member.py +2 -2
  271. pulumi_gcp/notebooks/runtime_iam_policy.py +2 -2
  272. pulumi_gcp/osconfig/os_policy_assignment.py +4 -4
  273. pulumi_gcp/pubsub/schema_iam_binding.py +2 -2
  274. pulumi_gcp/pubsub/schema_iam_member.py +2 -2
  275. pulumi_gcp/pubsub/schema_iam_policy.py +2 -2
  276. pulumi_gcp/pubsub/subscription.py +18 -66
  277. pulumi_gcp/pubsub/topic_iam_binding.py +2 -2
  278. pulumi_gcp/pubsub/topic_iam_member.py +2 -2
  279. pulumi_gcp/pubsub/topic_iam_policy.py +2 -2
  280. pulumi_gcp/pulumi-plugin.json +1 -1
  281. pulumi_gcp/runtimeconfig/config_iam_binding.py +2 -2
  282. pulumi_gcp/runtimeconfig/config_iam_member.py +2 -2
  283. pulumi_gcp/runtimeconfig/config_iam_policy.py +2 -2
  284. pulumi_gcp/secretmanager/regional_secret_iam_binding.py +2 -2
  285. pulumi_gcp/secretmanager/regional_secret_iam_member.py +2 -2
  286. pulumi_gcp/secretmanager/regional_secret_iam_policy.py +2 -2
  287. pulumi_gcp/secretmanager/secret_iam_binding.py +2 -2
  288. pulumi_gcp/secretmanager/secret_iam_member.py +2 -2
  289. pulumi_gcp/secretmanager/secret_iam_policy.py +2 -2
  290. pulumi_gcp/securesourcemanager/repository_iam_binding.py +2 -2
  291. pulumi_gcp/securesourcemanager/repository_iam_member.py +2 -2
  292. pulumi_gcp/securesourcemanager/repository_iam_policy.py +2 -2
  293. pulumi_gcp/securitycenter/v2_organization_source_iam_binding.py +4 -4
  294. pulumi_gcp/securitycenter/v2_organization_source_iam_member.py +4 -4
  295. pulumi_gcp/securitycenter/v2_organization_source_iam_policy.py +4 -4
  296. pulumi_gcp/serviceaccount/__init__.py +1 -0
  297. pulumi_gcp/serviceaccount/get_account.py +15 -1
  298. pulumi_gcp/serviceaccount/get_s.py +132 -0
  299. pulumi_gcp/serviceaccount/outputs.py +89 -0
  300. pulumi_gcp/servicedirectory/namespace_iam_binding.py +4 -4
  301. pulumi_gcp/servicedirectory/namespace_iam_member.py +4 -4
  302. pulumi_gcp/servicedirectory/namespace_iam_policy.py +4 -4
  303. pulumi_gcp/servicedirectory/service_iam_binding.py +4 -4
  304. pulumi_gcp/servicedirectory/service_iam_member.py +4 -4
  305. pulumi_gcp/servicedirectory/service_iam_policy.py +4 -4
  306. pulumi_gcp/sourcerepo/repository_iam_binding.py +2 -2
  307. pulumi_gcp/sourcerepo/repository_iam_member.py +2 -2
  308. pulumi_gcp/sourcerepo/repository_iam_policy.py +2 -2
  309. pulumi_gcp/spanner/_inputs.py +208 -12
  310. pulumi_gcp/spanner/outputs.py +287 -9
  311. pulumi_gcp/sql/_inputs.py +6 -3
  312. pulumi_gcp/sql/outputs.py +4 -2
  313. pulumi_gcp/storage/_inputs.py +3 -6
  314. pulumi_gcp/storage/bucket.py +7 -7
  315. pulumi_gcp/storage/bucket_iam_binding.py +2 -2
  316. pulumi_gcp/storage/bucket_iam_member.py +2 -2
  317. pulumi_gcp/storage/bucket_iam_policy.py +2 -2
  318. pulumi_gcp/storage/managed_folder_iam_binding.py +4 -4
  319. pulumi_gcp/storage/managed_folder_iam_member.py +4 -4
  320. pulumi_gcp/storage/managed_folder_iam_policy.py +4 -4
  321. pulumi_gcp/storage/outputs.py +4 -6
  322. pulumi_gcp/tags/tag_key_iam_binding.py +4 -4
  323. pulumi_gcp/tags/tag_key_iam_member.py +4 -4
  324. pulumi_gcp/tags/tag_key_iam_policy.py +4 -4
  325. pulumi_gcp/tags/tag_value_iam_binding.py +4 -4
  326. pulumi_gcp/tags/tag_value_iam_member.py +4 -4
  327. pulumi_gcp/tags/tag_value_iam_policy.py +4 -4
  328. pulumi_gcp/vertex/ai_feature_store_entity_type_iam_binding.py +2 -2
  329. pulumi_gcp/vertex/ai_feature_store_entity_type_iam_member.py +2 -2
  330. pulumi_gcp/vertex/ai_feature_store_entity_type_iam_policy.py +2 -2
  331. pulumi_gcp/vertex/ai_feature_store_iam_binding.py +2 -2
  332. pulumi_gcp/vertex/ai_feature_store_iam_member.py +2 -2
  333. pulumi_gcp/vertex/ai_feature_store_iam_policy.py +2 -2
  334. pulumi_gcp/vmwareengine/_inputs.py +472 -6
  335. pulumi_gcp/vmwareengine/outputs.py +668 -22
  336. pulumi_gcp/vmwareengine/private_cloud.py +44 -0
  337. pulumi_gcp/workstations/workstation_config.py +6 -6
  338. pulumi_gcp/workstations/workstation_config_iam_binding.py +2 -2
  339. pulumi_gcp/workstations/workstation_config_iam_member.py +2 -2
  340. pulumi_gcp/workstations/workstation_config_iam_policy.py +2 -2
  341. pulumi_gcp/workstations/workstation_iam_binding.py +2 -2
  342. pulumi_gcp/workstations/workstation_iam_member.py +2 -2
  343. pulumi_gcp/workstations/workstation_iam_policy.py +2 -2
  344. {pulumi_gcp-8.8.0a1730615974.dist-info → pulumi_gcp-8.8.0a1730856812.dist-info}/METADATA +1 -1
  345. {pulumi_gcp-8.8.0a1730615974.dist-info → pulumi_gcp-8.8.0a1730856812.dist-info}/RECORD +347 -344
  346. {pulumi_gcp-8.8.0a1730615974.dist-info → pulumi_gcp-8.8.0a1730856812.dist-info}/WHEEL +0 -0
  347. {pulumi_gcp-8.8.0a1730615974.dist-info → pulumi_gcp-8.8.0a1730856812.dist-info}/top_level.txt +0 -0
pulumi_gcp/iap/_inputs.py CHANGED
@@ -23,6 +23,30 @@ __all__ = [
23
23
  'AppEngineVersionIamBindingConditionArgsDict',
24
24
  'AppEngineVersionIamMemberConditionArgs',
25
25
  'AppEngineVersionIamMemberConditionArgsDict',
26
+ 'SettingsAccessSettingsArgs',
27
+ 'SettingsAccessSettingsArgsDict',
28
+ 'SettingsAccessSettingsAllowedDomainsSettingsArgs',
29
+ 'SettingsAccessSettingsAllowedDomainsSettingsArgsDict',
30
+ 'SettingsAccessSettingsCorsSettingsArgs',
31
+ 'SettingsAccessSettingsCorsSettingsArgsDict',
32
+ 'SettingsAccessSettingsGcipSettingsArgs',
33
+ 'SettingsAccessSettingsGcipSettingsArgsDict',
34
+ 'SettingsAccessSettingsOauthSettingsArgs',
35
+ 'SettingsAccessSettingsOauthSettingsArgsDict',
36
+ 'SettingsAccessSettingsReauthSettingsArgs',
37
+ 'SettingsAccessSettingsReauthSettingsArgsDict',
38
+ 'SettingsAccessSettingsWorkforceIdentitySettingsArgs',
39
+ 'SettingsAccessSettingsWorkforceIdentitySettingsArgsDict',
40
+ 'SettingsAccessSettingsWorkforceIdentitySettingsOauth2Args',
41
+ 'SettingsAccessSettingsWorkforceIdentitySettingsOauth2ArgsDict',
42
+ 'SettingsApplicationSettingsArgs',
43
+ 'SettingsApplicationSettingsArgsDict',
44
+ 'SettingsApplicationSettingsAccessDeniedPageSettingsArgs',
45
+ 'SettingsApplicationSettingsAccessDeniedPageSettingsArgsDict',
46
+ 'SettingsApplicationSettingsAttributePropagationSettingsArgs',
47
+ 'SettingsApplicationSettingsAttributePropagationSettingsArgsDict',
48
+ 'SettingsApplicationSettingsCsmSettingsArgs',
49
+ 'SettingsApplicationSettingsCsmSettingsArgsDict',
26
50
  'TunnelDestGroupIamBindingConditionArgs',
27
51
  'TunnelDestGroupIamBindingConditionArgsDict',
28
52
  'TunnelDestGroupIamMemberConditionArgs',
@@ -387,6 +411,984 @@ class AppEngineVersionIamMemberConditionArgs:
387
411
  pulumi.set(self, "description", value)
388
412
 
389
413
 
414
+ if not MYPY:
415
+ class SettingsAccessSettingsArgsDict(TypedDict):
416
+ allowed_domains_settings: NotRequired[pulumi.Input['SettingsAccessSettingsAllowedDomainsSettingsArgsDict']]
417
+ """
418
+ Settings to configure and enable allowed domains.
419
+ Structure is documented below.
420
+ """
421
+ cors_settings: NotRequired[pulumi.Input['SettingsAccessSettingsCorsSettingsArgsDict']]
422
+ """
423
+ Configuration to allow cross-origin requests via IAP.
424
+ Structure is documented below.
425
+ """
426
+ gcip_settings: NotRequired[pulumi.Input['SettingsAccessSettingsGcipSettingsArgsDict']]
427
+ """
428
+ GCIP claims and endpoint configurations for 3p identity providers.
429
+ Structure is documented below.
430
+ """
431
+ identity_sources: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
432
+ """
433
+ Identity sources that IAP can use to authenticate the end user. Only one identity source
434
+ can be configured. The possible values are:
435
+ * `WORKFORCE_IDENTITY_FEDERATION`: Use external identities set up on Google Cloud Workforce
436
+ Identity Federation.
437
+ Each value may be one of: `WORKFORCE_IDENTITY_FEDERATION`.
438
+ """
439
+ oauth_settings: NotRequired[pulumi.Input['SettingsAccessSettingsOauthSettingsArgsDict']]
440
+ """
441
+ Settings to configure IAP's OAuth behavior.
442
+ Structure is documented below.
443
+ """
444
+ reauth_settings: NotRequired[pulumi.Input['SettingsAccessSettingsReauthSettingsArgsDict']]
445
+ """
446
+ Settings to configure reauthentication policies in IAP.
447
+ Structure is documented below.
448
+ """
449
+ workforce_identity_settings: NotRequired[pulumi.Input['SettingsAccessSettingsWorkforceIdentitySettingsArgsDict']]
450
+ """
451
+ Settings to configure the workforce identity federation, including workforce pools
452
+ and OAuth 2.0 settings.
453
+ Structure is documented below.
454
+ """
455
+ elif False:
456
+ SettingsAccessSettingsArgsDict: TypeAlias = Mapping[str, Any]
457
+
458
+ @pulumi.input_type
459
+ class SettingsAccessSettingsArgs:
460
+ def __init__(__self__, *,
461
+ allowed_domains_settings: Optional[pulumi.Input['SettingsAccessSettingsAllowedDomainsSettingsArgs']] = None,
462
+ cors_settings: Optional[pulumi.Input['SettingsAccessSettingsCorsSettingsArgs']] = None,
463
+ gcip_settings: Optional[pulumi.Input['SettingsAccessSettingsGcipSettingsArgs']] = None,
464
+ identity_sources: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
465
+ oauth_settings: Optional[pulumi.Input['SettingsAccessSettingsOauthSettingsArgs']] = None,
466
+ reauth_settings: Optional[pulumi.Input['SettingsAccessSettingsReauthSettingsArgs']] = None,
467
+ workforce_identity_settings: Optional[pulumi.Input['SettingsAccessSettingsWorkforceIdentitySettingsArgs']] = None):
468
+ """
469
+ :param pulumi.Input['SettingsAccessSettingsAllowedDomainsSettingsArgs'] allowed_domains_settings: Settings to configure and enable allowed domains.
470
+ Structure is documented below.
471
+ :param pulumi.Input['SettingsAccessSettingsCorsSettingsArgs'] cors_settings: Configuration to allow cross-origin requests via IAP.
472
+ Structure is documented below.
473
+ :param pulumi.Input['SettingsAccessSettingsGcipSettingsArgs'] gcip_settings: GCIP claims and endpoint configurations for 3p identity providers.
474
+ Structure is documented below.
475
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] identity_sources: Identity sources that IAP can use to authenticate the end user. Only one identity source
476
+ can be configured. The possible values are:
477
+ * `WORKFORCE_IDENTITY_FEDERATION`: Use external identities set up on Google Cloud Workforce
478
+ Identity Federation.
479
+ Each value may be one of: `WORKFORCE_IDENTITY_FEDERATION`.
480
+ :param pulumi.Input['SettingsAccessSettingsOauthSettingsArgs'] oauth_settings: Settings to configure IAP's OAuth behavior.
481
+ Structure is documented below.
482
+ :param pulumi.Input['SettingsAccessSettingsReauthSettingsArgs'] reauth_settings: Settings to configure reauthentication policies in IAP.
483
+ Structure is documented below.
484
+ :param pulumi.Input['SettingsAccessSettingsWorkforceIdentitySettingsArgs'] workforce_identity_settings: Settings to configure the workforce identity federation, including workforce pools
485
+ and OAuth 2.0 settings.
486
+ Structure is documented below.
487
+ """
488
+ if allowed_domains_settings is not None:
489
+ pulumi.set(__self__, "allowed_domains_settings", allowed_domains_settings)
490
+ if cors_settings is not None:
491
+ pulumi.set(__self__, "cors_settings", cors_settings)
492
+ if gcip_settings is not None:
493
+ pulumi.set(__self__, "gcip_settings", gcip_settings)
494
+ if identity_sources is not None:
495
+ pulumi.set(__self__, "identity_sources", identity_sources)
496
+ if oauth_settings is not None:
497
+ pulumi.set(__self__, "oauth_settings", oauth_settings)
498
+ if reauth_settings is not None:
499
+ pulumi.set(__self__, "reauth_settings", reauth_settings)
500
+ if workforce_identity_settings is not None:
501
+ pulumi.set(__self__, "workforce_identity_settings", workforce_identity_settings)
502
+
503
+ @property
504
+ @pulumi.getter(name="allowedDomainsSettings")
505
+ def allowed_domains_settings(self) -> Optional[pulumi.Input['SettingsAccessSettingsAllowedDomainsSettingsArgs']]:
506
+ """
507
+ Settings to configure and enable allowed domains.
508
+ Structure is documented below.
509
+ """
510
+ return pulumi.get(self, "allowed_domains_settings")
511
+
512
+ @allowed_domains_settings.setter
513
+ def allowed_domains_settings(self, value: Optional[pulumi.Input['SettingsAccessSettingsAllowedDomainsSettingsArgs']]):
514
+ pulumi.set(self, "allowed_domains_settings", value)
515
+
516
+ @property
517
+ @pulumi.getter(name="corsSettings")
518
+ def cors_settings(self) -> Optional[pulumi.Input['SettingsAccessSettingsCorsSettingsArgs']]:
519
+ """
520
+ Configuration to allow cross-origin requests via IAP.
521
+ Structure is documented below.
522
+ """
523
+ return pulumi.get(self, "cors_settings")
524
+
525
+ @cors_settings.setter
526
+ def cors_settings(self, value: Optional[pulumi.Input['SettingsAccessSettingsCorsSettingsArgs']]):
527
+ pulumi.set(self, "cors_settings", value)
528
+
529
+ @property
530
+ @pulumi.getter(name="gcipSettings")
531
+ def gcip_settings(self) -> Optional[pulumi.Input['SettingsAccessSettingsGcipSettingsArgs']]:
532
+ """
533
+ GCIP claims and endpoint configurations for 3p identity providers.
534
+ Structure is documented below.
535
+ """
536
+ return pulumi.get(self, "gcip_settings")
537
+
538
+ @gcip_settings.setter
539
+ def gcip_settings(self, value: Optional[pulumi.Input['SettingsAccessSettingsGcipSettingsArgs']]):
540
+ pulumi.set(self, "gcip_settings", value)
541
+
542
+ @property
543
+ @pulumi.getter(name="identitySources")
544
+ def identity_sources(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
545
+ """
546
+ Identity sources that IAP can use to authenticate the end user. Only one identity source
547
+ can be configured. The possible values are:
548
+ * `WORKFORCE_IDENTITY_FEDERATION`: Use external identities set up on Google Cloud Workforce
549
+ Identity Federation.
550
+ Each value may be one of: `WORKFORCE_IDENTITY_FEDERATION`.
551
+ """
552
+ return pulumi.get(self, "identity_sources")
553
+
554
+ @identity_sources.setter
555
+ def identity_sources(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
556
+ pulumi.set(self, "identity_sources", value)
557
+
558
+ @property
559
+ @pulumi.getter(name="oauthSettings")
560
+ def oauth_settings(self) -> Optional[pulumi.Input['SettingsAccessSettingsOauthSettingsArgs']]:
561
+ """
562
+ Settings to configure IAP's OAuth behavior.
563
+ Structure is documented below.
564
+ """
565
+ return pulumi.get(self, "oauth_settings")
566
+
567
+ @oauth_settings.setter
568
+ def oauth_settings(self, value: Optional[pulumi.Input['SettingsAccessSettingsOauthSettingsArgs']]):
569
+ pulumi.set(self, "oauth_settings", value)
570
+
571
+ @property
572
+ @pulumi.getter(name="reauthSettings")
573
+ def reauth_settings(self) -> Optional[pulumi.Input['SettingsAccessSettingsReauthSettingsArgs']]:
574
+ """
575
+ Settings to configure reauthentication policies in IAP.
576
+ Structure is documented below.
577
+ """
578
+ return pulumi.get(self, "reauth_settings")
579
+
580
+ @reauth_settings.setter
581
+ def reauth_settings(self, value: Optional[pulumi.Input['SettingsAccessSettingsReauthSettingsArgs']]):
582
+ pulumi.set(self, "reauth_settings", value)
583
+
584
+ @property
585
+ @pulumi.getter(name="workforceIdentitySettings")
586
+ def workforce_identity_settings(self) -> Optional[pulumi.Input['SettingsAccessSettingsWorkforceIdentitySettingsArgs']]:
587
+ """
588
+ Settings to configure the workforce identity federation, including workforce pools
589
+ and OAuth 2.0 settings.
590
+ Structure is documented below.
591
+ """
592
+ return pulumi.get(self, "workforce_identity_settings")
593
+
594
+ @workforce_identity_settings.setter
595
+ def workforce_identity_settings(self, value: Optional[pulumi.Input['SettingsAccessSettingsWorkforceIdentitySettingsArgs']]):
596
+ pulumi.set(self, "workforce_identity_settings", value)
597
+
598
+
599
+ if not MYPY:
600
+ class SettingsAccessSettingsAllowedDomainsSettingsArgsDict(TypedDict):
601
+ domains: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
602
+ """
603
+ List of trusted domains.
604
+ """
605
+ enable: NotRequired[pulumi.Input[bool]]
606
+ """
607
+ Configuration for customers to opt in for the feature.
608
+ """
609
+ elif False:
610
+ SettingsAccessSettingsAllowedDomainsSettingsArgsDict: TypeAlias = Mapping[str, Any]
611
+
612
+ @pulumi.input_type
613
+ class SettingsAccessSettingsAllowedDomainsSettingsArgs:
614
+ def __init__(__self__, *,
615
+ domains: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
616
+ enable: Optional[pulumi.Input[bool]] = None):
617
+ """
618
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] domains: List of trusted domains.
619
+ :param pulumi.Input[bool] enable: Configuration for customers to opt in for the feature.
620
+ """
621
+ if domains is not None:
622
+ pulumi.set(__self__, "domains", domains)
623
+ if enable is not None:
624
+ pulumi.set(__self__, "enable", enable)
625
+
626
+ @property
627
+ @pulumi.getter
628
+ def domains(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
629
+ """
630
+ List of trusted domains.
631
+ """
632
+ return pulumi.get(self, "domains")
633
+
634
+ @domains.setter
635
+ def domains(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
636
+ pulumi.set(self, "domains", value)
637
+
638
+ @property
639
+ @pulumi.getter
640
+ def enable(self) -> Optional[pulumi.Input[bool]]:
641
+ """
642
+ Configuration for customers to opt in for the feature.
643
+ """
644
+ return pulumi.get(self, "enable")
645
+
646
+ @enable.setter
647
+ def enable(self, value: Optional[pulumi.Input[bool]]):
648
+ pulumi.set(self, "enable", value)
649
+
650
+
651
+ if not MYPY:
652
+ class SettingsAccessSettingsCorsSettingsArgsDict(TypedDict):
653
+ allow_http_options: NotRequired[pulumi.Input[bool]]
654
+ """
655
+ Configuration to allow HTTP OPTIONS calls to skip authorization.
656
+ If undefined, IAP will not apply any special logic to OPTIONS requests.
657
+ """
658
+ elif False:
659
+ SettingsAccessSettingsCorsSettingsArgsDict: TypeAlias = Mapping[str, Any]
660
+
661
+ @pulumi.input_type
662
+ class SettingsAccessSettingsCorsSettingsArgs:
663
+ def __init__(__self__, *,
664
+ allow_http_options: Optional[pulumi.Input[bool]] = None):
665
+ """
666
+ :param pulumi.Input[bool] allow_http_options: Configuration to allow HTTP OPTIONS calls to skip authorization.
667
+ If undefined, IAP will not apply any special logic to OPTIONS requests.
668
+ """
669
+ if allow_http_options is not None:
670
+ pulumi.set(__self__, "allow_http_options", allow_http_options)
671
+
672
+ @property
673
+ @pulumi.getter(name="allowHttpOptions")
674
+ def allow_http_options(self) -> Optional[pulumi.Input[bool]]:
675
+ """
676
+ Configuration to allow HTTP OPTIONS calls to skip authorization.
677
+ If undefined, IAP will not apply any special logic to OPTIONS requests.
678
+ """
679
+ return pulumi.get(self, "allow_http_options")
680
+
681
+ @allow_http_options.setter
682
+ def allow_http_options(self, value: Optional[pulumi.Input[bool]]):
683
+ pulumi.set(self, "allow_http_options", value)
684
+
685
+
686
+ if not MYPY:
687
+ class SettingsAccessSettingsGcipSettingsArgsDict(TypedDict):
688
+ login_page_uri: NotRequired[pulumi.Input[str]]
689
+ """
690
+ Login page URI associated with the GCIP tenants. Typically, all resources within
691
+ the same project share the same login page, though it could be overridden at the
692
+ sub resource level.
693
+ """
694
+ tenant_ids: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
695
+ """
696
+ GCIP tenant ids that are linked to the IAP resource. tenantIds could be a string
697
+ beginning with a number character to indicate authenticating with GCIP tenant flow,
698
+ or in the format of _ to indicate authenticating with GCIP agent flow. If agent flow
699
+ is used, tenantIds should only contain one single element, while for tenant flow,
700
+ tenantIds can contain multiple elements.
701
+ """
702
+ elif False:
703
+ SettingsAccessSettingsGcipSettingsArgsDict: TypeAlias = Mapping[str, Any]
704
+
705
+ @pulumi.input_type
706
+ class SettingsAccessSettingsGcipSettingsArgs:
707
+ def __init__(__self__, *,
708
+ login_page_uri: Optional[pulumi.Input[str]] = None,
709
+ tenant_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
710
+ """
711
+ :param pulumi.Input[str] login_page_uri: Login page URI associated with the GCIP tenants. Typically, all resources within
712
+ the same project share the same login page, though it could be overridden at the
713
+ sub resource level.
714
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tenant_ids: GCIP tenant ids that are linked to the IAP resource. tenantIds could be a string
715
+ beginning with a number character to indicate authenticating with GCIP tenant flow,
716
+ or in the format of _ to indicate authenticating with GCIP agent flow. If agent flow
717
+ is used, tenantIds should only contain one single element, while for tenant flow,
718
+ tenantIds can contain multiple elements.
719
+ """
720
+ if login_page_uri is not None:
721
+ pulumi.set(__self__, "login_page_uri", login_page_uri)
722
+ if tenant_ids is not None:
723
+ pulumi.set(__self__, "tenant_ids", tenant_ids)
724
+
725
+ @property
726
+ @pulumi.getter(name="loginPageUri")
727
+ def login_page_uri(self) -> Optional[pulumi.Input[str]]:
728
+ """
729
+ Login page URI associated with the GCIP tenants. Typically, all resources within
730
+ the same project share the same login page, though it could be overridden at the
731
+ sub resource level.
732
+ """
733
+ return pulumi.get(self, "login_page_uri")
734
+
735
+ @login_page_uri.setter
736
+ def login_page_uri(self, value: Optional[pulumi.Input[str]]):
737
+ pulumi.set(self, "login_page_uri", value)
738
+
739
+ @property
740
+ @pulumi.getter(name="tenantIds")
741
+ def tenant_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
742
+ """
743
+ GCIP tenant ids that are linked to the IAP resource. tenantIds could be a string
744
+ beginning with a number character to indicate authenticating with GCIP tenant flow,
745
+ or in the format of _ to indicate authenticating with GCIP agent flow. If agent flow
746
+ is used, tenantIds should only contain one single element, while for tenant flow,
747
+ tenantIds can contain multiple elements.
748
+ """
749
+ return pulumi.get(self, "tenant_ids")
750
+
751
+ @tenant_ids.setter
752
+ def tenant_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
753
+ pulumi.set(self, "tenant_ids", value)
754
+
755
+
756
+ if not MYPY:
757
+ class SettingsAccessSettingsOauthSettingsArgsDict(TypedDict):
758
+ login_hint: NotRequired[pulumi.Input[str]]
759
+ """
760
+ Domain hint to send as hd=? parameter in OAuth request flow.
761
+ Enables redirect to primary IDP by skipping Google's login screen.
762
+ (https://developers.google.com/identity/protocols/OpenIDConnect#hd-param)
763
+ Note: IAP does not verify that the id token's hd claim matches this value
764
+ since access behavior is managed by IAM policies.
765
+ """
766
+ programmatic_clients: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
767
+ """
768
+ List of client ids allowed to use IAP programmatically.
769
+ """
770
+ elif False:
771
+ SettingsAccessSettingsOauthSettingsArgsDict: TypeAlias = Mapping[str, Any]
772
+
773
+ @pulumi.input_type
774
+ class SettingsAccessSettingsOauthSettingsArgs:
775
+ def __init__(__self__, *,
776
+ login_hint: Optional[pulumi.Input[str]] = None,
777
+ programmatic_clients: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
778
+ """
779
+ :param pulumi.Input[str] login_hint: Domain hint to send as hd=? parameter in OAuth request flow.
780
+ Enables redirect to primary IDP by skipping Google's login screen.
781
+ (https://developers.google.com/identity/protocols/OpenIDConnect#hd-param)
782
+ Note: IAP does not verify that the id token's hd claim matches this value
783
+ since access behavior is managed by IAM policies.
784
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] programmatic_clients: List of client ids allowed to use IAP programmatically.
785
+ """
786
+ if login_hint is not None:
787
+ pulumi.set(__self__, "login_hint", login_hint)
788
+ if programmatic_clients is not None:
789
+ pulumi.set(__self__, "programmatic_clients", programmatic_clients)
790
+
791
+ @property
792
+ @pulumi.getter(name="loginHint")
793
+ def login_hint(self) -> Optional[pulumi.Input[str]]:
794
+ """
795
+ Domain hint to send as hd=? parameter in OAuth request flow.
796
+ Enables redirect to primary IDP by skipping Google's login screen.
797
+ (https://developers.google.com/identity/protocols/OpenIDConnect#hd-param)
798
+ Note: IAP does not verify that the id token's hd claim matches this value
799
+ since access behavior is managed by IAM policies.
800
+ """
801
+ return pulumi.get(self, "login_hint")
802
+
803
+ @login_hint.setter
804
+ def login_hint(self, value: Optional[pulumi.Input[str]]):
805
+ pulumi.set(self, "login_hint", value)
806
+
807
+ @property
808
+ @pulumi.getter(name="programmaticClients")
809
+ def programmatic_clients(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
810
+ """
811
+ List of client ids allowed to use IAP programmatically.
812
+ """
813
+ return pulumi.get(self, "programmatic_clients")
814
+
815
+ @programmatic_clients.setter
816
+ def programmatic_clients(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
817
+ pulumi.set(self, "programmatic_clients", value)
818
+
819
+
820
+ if not MYPY:
821
+ class SettingsAccessSettingsReauthSettingsArgsDict(TypedDict):
822
+ max_age: pulumi.Input[str]
823
+ """
824
+ Reauth session lifetime, how long before a user has to reauthenticate again.
825
+ A duration in seconds with up to nine fractional digits, ending with 's'.
826
+ Example: "3.5s".
827
+ """
828
+ method: pulumi.Input[str]
829
+ """
830
+ Reauth method requested. The possible values are:
831
+ * `LOGIN`: Prompts the user to log in again.
832
+ * `SECURE_KEY`: User must use their secure key 2nd factor device.
833
+ * `ENROLLED_SECOND_FACTORS`: User can use any enabled 2nd factor.
834
+ Possible values are: `LOGIN`, `SECURE_KEY`, `ENROLLED_SECOND_FACTORS`.
835
+ """
836
+ policy_type: pulumi.Input[str]
837
+ """
838
+ How IAP determines the effective policy in cases of hierarchical policies.
839
+ Policies are merged from higher in the hierarchy to lower in the hierarchy.
840
+ The possible values are:
841
+ * `MINIMUM`: This policy acts as a minimum to other policies, lower in the hierarchy.
842
+ Effective policy may only be the same or stricter.
843
+ * `DEFAULT`: This policy acts as a default if no other reauth policy is set.
844
+ Possible values are: `MINIMUM`, `DEFAULT`.
845
+ """
846
+ elif False:
847
+ SettingsAccessSettingsReauthSettingsArgsDict: TypeAlias = Mapping[str, Any]
848
+
849
+ @pulumi.input_type
850
+ class SettingsAccessSettingsReauthSettingsArgs:
851
+ def __init__(__self__, *,
852
+ max_age: pulumi.Input[str],
853
+ method: pulumi.Input[str],
854
+ policy_type: pulumi.Input[str]):
855
+ """
856
+ :param pulumi.Input[str] max_age: Reauth session lifetime, how long before a user has to reauthenticate again.
857
+ A duration in seconds with up to nine fractional digits, ending with 's'.
858
+ Example: "3.5s".
859
+ :param pulumi.Input[str] method: Reauth method requested. The possible values are:
860
+ * `LOGIN`: Prompts the user to log in again.
861
+ * `SECURE_KEY`: User must use their secure key 2nd factor device.
862
+ * `ENROLLED_SECOND_FACTORS`: User can use any enabled 2nd factor.
863
+ Possible values are: `LOGIN`, `SECURE_KEY`, `ENROLLED_SECOND_FACTORS`.
864
+ :param pulumi.Input[str] policy_type: How IAP determines the effective policy in cases of hierarchical policies.
865
+ Policies are merged from higher in the hierarchy to lower in the hierarchy.
866
+ The possible values are:
867
+ * `MINIMUM`: This policy acts as a minimum to other policies, lower in the hierarchy.
868
+ Effective policy may only be the same or stricter.
869
+ * `DEFAULT`: This policy acts as a default if no other reauth policy is set.
870
+ Possible values are: `MINIMUM`, `DEFAULT`.
871
+ """
872
+ pulumi.set(__self__, "max_age", max_age)
873
+ pulumi.set(__self__, "method", method)
874
+ pulumi.set(__self__, "policy_type", policy_type)
875
+
876
+ @property
877
+ @pulumi.getter(name="maxAge")
878
+ def max_age(self) -> pulumi.Input[str]:
879
+ """
880
+ Reauth session lifetime, how long before a user has to reauthenticate again.
881
+ A duration in seconds with up to nine fractional digits, ending with 's'.
882
+ Example: "3.5s".
883
+ """
884
+ return pulumi.get(self, "max_age")
885
+
886
+ @max_age.setter
887
+ def max_age(self, value: pulumi.Input[str]):
888
+ pulumi.set(self, "max_age", value)
889
+
890
+ @property
891
+ @pulumi.getter
892
+ def method(self) -> pulumi.Input[str]:
893
+ """
894
+ Reauth method requested. The possible values are:
895
+ * `LOGIN`: Prompts the user to log in again.
896
+ * `SECURE_KEY`: User must use their secure key 2nd factor device.
897
+ * `ENROLLED_SECOND_FACTORS`: User can use any enabled 2nd factor.
898
+ Possible values are: `LOGIN`, `SECURE_KEY`, `ENROLLED_SECOND_FACTORS`.
899
+ """
900
+ return pulumi.get(self, "method")
901
+
902
+ @method.setter
903
+ def method(self, value: pulumi.Input[str]):
904
+ pulumi.set(self, "method", value)
905
+
906
+ @property
907
+ @pulumi.getter(name="policyType")
908
+ def policy_type(self) -> pulumi.Input[str]:
909
+ """
910
+ How IAP determines the effective policy in cases of hierarchical policies.
911
+ Policies are merged from higher in the hierarchy to lower in the hierarchy.
912
+ The possible values are:
913
+ * `MINIMUM`: This policy acts as a minimum to other policies, lower in the hierarchy.
914
+ Effective policy may only be the same or stricter.
915
+ * `DEFAULT`: This policy acts as a default if no other reauth policy is set.
916
+ Possible values are: `MINIMUM`, `DEFAULT`.
917
+ """
918
+ return pulumi.get(self, "policy_type")
919
+
920
+ @policy_type.setter
921
+ def policy_type(self, value: pulumi.Input[str]):
922
+ pulumi.set(self, "policy_type", value)
923
+
924
+
925
+ if not MYPY:
926
+ class SettingsAccessSettingsWorkforceIdentitySettingsArgsDict(TypedDict):
927
+ oauth2: NotRequired[pulumi.Input['SettingsAccessSettingsWorkforceIdentitySettingsOauth2ArgsDict']]
928
+ """
929
+ OAuth 2.0 settings for IAP to perform OIDC flow with workforce identity
930
+ federation services.
931
+ Structure is documented below.
932
+
933
+
934
+ <a name="nested_oauth2"></a>The `oauth2` block supports:
935
+ """
936
+ workforce_pools: NotRequired[pulumi.Input[str]]
937
+ """
938
+ The workforce pool resources. Only one workforce pool is accepted.
939
+ """
940
+ elif False:
941
+ SettingsAccessSettingsWorkforceIdentitySettingsArgsDict: TypeAlias = Mapping[str, Any]
942
+
943
+ @pulumi.input_type
944
+ class SettingsAccessSettingsWorkforceIdentitySettingsArgs:
945
+ def __init__(__self__, *,
946
+ oauth2: Optional[pulumi.Input['SettingsAccessSettingsWorkforceIdentitySettingsOauth2Args']] = None,
947
+ workforce_pools: Optional[pulumi.Input[str]] = None):
948
+ """
949
+ :param pulumi.Input['SettingsAccessSettingsWorkforceIdentitySettingsOauth2Args'] oauth2: OAuth 2.0 settings for IAP to perform OIDC flow with workforce identity
950
+ federation services.
951
+ Structure is documented below.
952
+
953
+
954
+ <a name="nested_oauth2"></a>The `oauth2` block supports:
955
+ :param pulumi.Input[str] workforce_pools: The workforce pool resources. Only one workforce pool is accepted.
956
+ """
957
+ if oauth2 is not None:
958
+ pulumi.set(__self__, "oauth2", oauth2)
959
+ if workforce_pools is not None:
960
+ pulumi.set(__self__, "workforce_pools", workforce_pools)
961
+
962
+ @property
963
+ @pulumi.getter
964
+ def oauth2(self) -> Optional[pulumi.Input['SettingsAccessSettingsWorkforceIdentitySettingsOauth2Args']]:
965
+ """
966
+ OAuth 2.0 settings for IAP to perform OIDC flow with workforce identity
967
+ federation services.
968
+ Structure is documented below.
969
+
970
+
971
+ <a name="nested_oauth2"></a>The `oauth2` block supports:
972
+ """
973
+ return pulumi.get(self, "oauth2")
974
+
975
+ @oauth2.setter
976
+ def oauth2(self, value: Optional[pulumi.Input['SettingsAccessSettingsWorkforceIdentitySettingsOauth2Args']]):
977
+ pulumi.set(self, "oauth2", value)
978
+
979
+ @property
980
+ @pulumi.getter(name="workforcePools")
981
+ def workforce_pools(self) -> Optional[pulumi.Input[str]]:
982
+ """
983
+ The workforce pool resources. Only one workforce pool is accepted.
984
+ """
985
+ return pulumi.get(self, "workforce_pools")
986
+
987
+ @workforce_pools.setter
988
+ def workforce_pools(self, value: Optional[pulumi.Input[str]]):
989
+ pulumi.set(self, "workforce_pools", value)
990
+
991
+
992
+ if not MYPY:
993
+ class SettingsAccessSettingsWorkforceIdentitySettingsOauth2ArgsDict(TypedDict):
994
+ client_id: NotRequired[pulumi.Input[str]]
995
+ """
996
+ The OAuth 2.0 client ID registered in the workforce identity
997
+ federation OAuth 2.0 Server.
998
+ """
999
+ client_secret: NotRequired[pulumi.Input[str]]
1000
+ """
1001
+ Input only. The OAuth 2.0 client secret created while registering
1002
+ the client ID.
1003
+ """
1004
+ client_secret_sha256: NotRequired[pulumi.Input[str]]
1005
+ """
1006
+ Output only. SHA256 hash value for the client secret. This field
1007
+ is returned by IAP when the settings are retrieved.
1008
+ """
1009
+ elif False:
1010
+ SettingsAccessSettingsWorkforceIdentitySettingsOauth2ArgsDict: TypeAlias = Mapping[str, Any]
1011
+
1012
+ @pulumi.input_type
1013
+ class SettingsAccessSettingsWorkforceIdentitySettingsOauth2Args:
1014
+ def __init__(__self__, *,
1015
+ client_id: Optional[pulumi.Input[str]] = None,
1016
+ client_secret: Optional[pulumi.Input[str]] = None,
1017
+ client_secret_sha256: Optional[pulumi.Input[str]] = None):
1018
+ """
1019
+ :param pulumi.Input[str] client_id: The OAuth 2.0 client ID registered in the workforce identity
1020
+ federation OAuth 2.0 Server.
1021
+ :param pulumi.Input[str] client_secret: Input only. The OAuth 2.0 client secret created while registering
1022
+ the client ID.
1023
+ :param pulumi.Input[str] client_secret_sha256: Output only. SHA256 hash value for the client secret. This field
1024
+ is returned by IAP when the settings are retrieved.
1025
+ """
1026
+ if client_id is not None:
1027
+ pulumi.set(__self__, "client_id", client_id)
1028
+ if client_secret is not None:
1029
+ pulumi.set(__self__, "client_secret", client_secret)
1030
+ if client_secret_sha256 is not None:
1031
+ pulumi.set(__self__, "client_secret_sha256", client_secret_sha256)
1032
+
1033
+ @property
1034
+ @pulumi.getter(name="clientId")
1035
+ def client_id(self) -> Optional[pulumi.Input[str]]:
1036
+ """
1037
+ The OAuth 2.0 client ID registered in the workforce identity
1038
+ federation OAuth 2.0 Server.
1039
+ """
1040
+ return pulumi.get(self, "client_id")
1041
+
1042
+ @client_id.setter
1043
+ def client_id(self, value: Optional[pulumi.Input[str]]):
1044
+ pulumi.set(self, "client_id", value)
1045
+
1046
+ @property
1047
+ @pulumi.getter(name="clientSecret")
1048
+ def client_secret(self) -> Optional[pulumi.Input[str]]:
1049
+ """
1050
+ Input only. The OAuth 2.0 client secret created while registering
1051
+ the client ID.
1052
+ """
1053
+ return pulumi.get(self, "client_secret")
1054
+
1055
+ @client_secret.setter
1056
+ def client_secret(self, value: Optional[pulumi.Input[str]]):
1057
+ pulumi.set(self, "client_secret", value)
1058
+
1059
+ @property
1060
+ @pulumi.getter(name="clientSecretSha256")
1061
+ def client_secret_sha256(self) -> Optional[pulumi.Input[str]]:
1062
+ """
1063
+ Output only. SHA256 hash value for the client secret. This field
1064
+ is returned by IAP when the settings are retrieved.
1065
+ """
1066
+ return pulumi.get(self, "client_secret_sha256")
1067
+
1068
+ @client_secret_sha256.setter
1069
+ def client_secret_sha256(self, value: Optional[pulumi.Input[str]]):
1070
+ pulumi.set(self, "client_secret_sha256", value)
1071
+
1072
+
1073
+ if not MYPY:
1074
+ class SettingsApplicationSettingsArgsDict(TypedDict):
1075
+ access_denied_page_settings: NotRequired[pulumi.Input['SettingsApplicationSettingsAccessDeniedPageSettingsArgsDict']]
1076
+ """
1077
+ Customization for Access Denied page. IAP allows customers to define a custom URI
1078
+ to use as the error page when access is denied to users. If IAP prevents access
1079
+ to this page, the default IAP error page will be displayed instead.
1080
+ Structure is documented below.
1081
+ """
1082
+ attribute_propagation_settings: NotRequired[pulumi.Input['SettingsApplicationSettingsAttributePropagationSettingsArgsDict']]
1083
+ """
1084
+ Settings to configure attribute propagation.
1085
+ Structure is documented below.
1086
+ """
1087
+ cookie_domain: NotRequired[pulumi.Input[str]]
1088
+ """
1089
+ The Domain value to set for cookies generated by IAP. This value is not validated by the API,
1090
+ but will be ignored at runtime if invalid.
1091
+ """
1092
+ csm_settings: NotRequired[pulumi.Input['SettingsApplicationSettingsCsmSettingsArgsDict']]
1093
+ """
1094
+ Settings to configure IAP's behavior for a service mesh.
1095
+ Structure is documented below.
1096
+ """
1097
+ elif False:
1098
+ SettingsApplicationSettingsArgsDict: TypeAlias = Mapping[str, Any]
1099
+
1100
+ @pulumi.input_type
1101
+ class SettingsApplicationSettingsArgs:
1102
+ def __init__(__self__, *,
1103
+ access_denied_page_settings: Optional[pulumi.Input['SettingsApplicationSettingsAccessDeniedPageSettingsArgs']] = None,
1104
+ attribute_propagation_settings: Optional[pulumi.Input['SettingsApplicationSettingsAttributePropagationSettingsArgs']] = None,
1105
+ cookie_domain: Optional[pulumi.Input[str]] = None,
1106
+ csm_settings: Optional[pulumi.Input['SettingsApplicationSettingsCsmSettingsArgs']] = None):
1107
+ """
1108
+ :param pulumi.Input['SettingsApplicationSettingsAccessDeniedPageSettingsArgs'] access_denied_page_settings: Customization for Access Denied page. IAP allows customers to define a custom URI
1109
+ to use as the error page when access is denied to users. If IAP prevents access
1110
+ to this page, the default IAP error page will be displayed instead.
1111
+ Structure is documented below.
1112
+ :param pulumi.Input['SettingsApplicationSettingsAttributePropagationSettingsArgs'] attribute_propagation_settings: Settings to configure attribute propagation.
1113
+ Structure is documented below.
1114
+ :param pulumi.Input[str] cookie_domain: The Domain value to set for cookies generated by IAP. This value is not validated by the API,
1115
+ but will be ignored at runtime if invalid.
1116
+ :param pulumi.Input['SettingsApplicationSettingsCsmSettingsArgs'] csm_settings: Settings to configure IAP's behavior for a service mesh.
1117
+ Structure is documented below.
1118
+ """
1119
+ if access_denied_page_settings is not None:
1120
+ pulumi.set(__self__, "access_denied_page_settings", access_denied_page_settings)
1121
+ if attribute_propagation_settings is not None:
1122
+ pulumi.set(__self__, "attribute_propagation_settings", attribute_propagation_settings)
1123
+ if cookie_domain is not None:
1124
+ pulumi.set(__self__, "cookie_domain", cookie_domain)
1125
+ if csm_settings is not None:
1126
+ pulumi.set(__self__, "csm_settings", csm_settings)
1127
+
1128
+ @property
1129
+ @pulumi.getter(name="accessDeniedPageSettings")
1130
+ def access_denied_page_settings(self) -> Optional[pulumi.Input['SettingsApplicationSettingsAccessDeniedPageSettingsArgs']]:
1131
+ """
1132
+ Customization for Access Denied page. IAP allows customers to define a custom URI
1133
+ to use as the error page when access is denied to users. If IAP prevents access
1134
+ to this page, the default IAP error page will be displayed instead.
1135
+ Structure is documented below.
1136
+ """
1137
+ return pulumi.get(self, "access_denied_page_settings")
1138
+
1139
+ @access_denied_page_settings.setter
1140
+ def access_denied_page_settings(self, value: Optional[pulumi.Input['SettingsApplicationSettingsAccessDeniedPageSettingsArgs']]):
1141
+ pulumi.set(self, "access_denied_page_settings", value)
1142
+
1143
+ @property
1144
+ @pulumi.getter(name="attributePropagationSettings")
1145
+ def attribute_propagation_settings(self) -> Optional[pulumi.Input['SettingsApplicationSettingsAttributePropagationSettingsArgs']]:
1146
+ """
1147
+ Settings to configure attribute propagation.
1148
+ Structure is documented below.
1149
+ """
1150
+ return pulumi.get(self, "attribute_propagation_settings")
1151
+
1152
+ @attribute_propagation_settings.setter
1153
+ def attribute_propagation_settings(self, value: Optional[pulumi.Input['SettingsApplicationSettingsAttributePropagationSettingsArgs']]):
1154
+ pulumi.set(self, "attribute_propagation_settings", value)
1155
+
1156
+ @property
1157
+ @pulumi.getter(name="cookieDomain")
1158
+ def cookie_domain(self) -> Optional[pulumi.Input[str]]:
1159
+ """
1160
+ The Domain value to set for cookies generated by IAP. This value is not validated by the API,
1161
+ but will be ignored at runtime if invalid.
1162
+ """
1163
+ return pulumi.get(self, "cookie_domain")
1164
+
1165
+ @cookie_domain.setter
1166
+ def cookie_domain(self, value: Optional[pulumi.Input[str]]):
1167
+ pulumi.set(self, "cookie_domain", value)
1168
+
1169
+ @property
1170
+ @pulumi.getter(name="csmSettings")
1171
+ def csm_settings(self) -> Optional[pulumi.Input['SettingsApplicationSettingsCsmSettingsArgs']]:
1172
+ """
1173
+ Settings to configure IAP's behavior for a service mesh.
1174
+ Structure is documented below.
1175
+ """
1176
+ return pulumi.get(self, "csm_settings")
1177
+
1178
+ @csm_settings.setter
1179
+ def csm_settings(self, value: Optional[pulumi.Input['SettingsApplicationSettingsCsmSettingsArgs']]):
1180
+ pulumi.set(self, "csm_settings", value)
1181
+
1182
+
1183
+ if not MYPY:
1184
+ class SettingsApplicationSettingsAccessDeniedPageSettingsArgsDict(TypedDict):
1185
+ access_denied_page_uri: NotRequired[pulumi.Input[str]]
1186
+ """
1187
+ The URI to be redirected to when access is denied.
1188
+ """
1189
+ generate_troubleshooting_uri: NotRequired[pulumi.Input[bool]]
1190
+ """
1191
+ Whether to generate a troubleshooting URL on access denied events to this application.
1192
+ """
1193
+ remediation_token_generation_enabled: NotRequired[pulumi.Input[bool]]
1194
+ """
1195
+ Whether to generate remediation token on access denied events to this application.
1196
+ """
1197
+ elif False:
1198
+ SettingsApplicationSettingsAccessDeniedPageSettingsArgsDict: TypeAlias = Mapping[str, Any]
1199
+
1200
+ @pulumi.input_type
1201
+ class SettingsApplicationSettingsAccessDeniedPageSettingsArgs:
1202
+ def __init__(__self__, *,
1203
+ access_denied_page_uri: Optional[pulumi.Input[str]] = None,
1204
+ generate_troubleshooting_uri: Optional[pulumi.Input[bool]] = None,
1205
+ remediation_token_generation_enabled: Optional[pulumi.Input[bool]] = None):
1206
+ """
1207
+ :param pulumi.Input[str] access_denied_page_uri: The URI to be redirected to when access is denied.
1208
+ :param pulumi.Input[bool] generate_troubleshooting_uri: Whether to generate a troubleshooting URL on access denied events to this application.
1209
+ :param pulumi.Input[bool] remediation_token_generation_enabled: Whether to generate remediation token on access denied events to this application.
1210
+ """
1211
+ if access_denied_page_uri is not None:
1212
+ pulumi.set(__self__, "access_denied_page_uri", access_denied_page_uri)
1213
+ if generate_troubleshooting_uri is not None:
1214
+ pulumi.set(__self__, "generate_troubleshooting_uri", generate_troubleshooting_uri)
1215
+ if remediation_token_generation_enabled is not None:
1216
+ pulumi.set(__self__, "remediation_token_generation_enabled", remediation_token_generation_enabled)
1217
+
1218
+ @property
1219
+ @pulumi.getter(name="accessDeniedPageUri")
1220
+ def access_denied_page_uri(self) -> Optional[pulumi.Input[str]]:
1221
+ """
1222
+ The URI to be redirected to when access is denied.
1223
+ """
1224
+ return pulumi.get(self, "access_denied_page_uri")
1225
+
1226
+ @access_denied_page_uri.setter
1227
+ def access_denied_page_uri(self, value: Optional[pulumi.Input[str]]):
1228
+ pulumi.set(self, "access_denied_page_uri", value)
1229
+
1230
+ @property
1231
+ @pulumi.getter(name="generateTroubleshootingUri")
1232
+ def generate_troubleshooting_uri(self) -> Optional[pulumi.Input[bool]]:
1233
+ """
1234
+ Whether to generate a troubleshooting URL on access denied events to this application.
1235
+ """
1236
+ return pulumi.get(self, "generate_troubleshooting_uri")
1237
+
1238
+ @generate_troubleshooting_uri.setter
1239
+ def generate_troubleshooting_uri(self, value: Optional[pulumi.Input[bool]]):
1240
+ pulumi.set(self, "generate_troubleshooting_uri", value)
1241
+
1242
+ @property
1243
+ @pulumi.getter(name="remediationTokenGenerationEnabled")
1244
+ def remediation_token_generation_enabled(self) -> Optional[pulumi.Input[bool]]:
1245
+ """
1246
+ Whether to generate remediation token on access denied events to this application.
1247
+ """
1248
+ return pulumi.get(self, "remediation_token_generation_enabled")
1249
+
1250
+ @remediation_token_generation_enabled.setter
1251
+ def remediation_token_generation_enabled(self, value: Optional[pulumi.Input[bool]]):
1252
+ pulumi.set(self, "remediation_token_generation_enabled", value)
1253
+
1254
+
1255
+ if not MYPY:
1256
+ class SettingsApplicationSettingsAttributePropagationSettingsArgsDict(TypedDict):
1257
+ enable: NotRequired[pulumi.Input[bool]]
1258
+ """
1259
+ Whether the provided attribute propagation settings should be evaluated on user requests.
1260
+ If set to true, attributes returned from the expression will be propagated in the set output credentials.
1261
+ """
1262
+ expression: NotRequired[pulumi.Input[str]]
1263
+ """
1264
+ Raw string CEL expression. Must return a list of attributes. A maximum of 45 attributes can
1265
+ be selected. Expressions can select different attribute types from attributes:
1266
+ attributes.saml_attributes, attributes.iap_attributes.
1267
+ """
1268
+ output_credentials: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
1269
+ """
1270
+ Which output credentials attributes selected by the CEL expression should be propagated in.
1271
+ All attributes will be fully duplicated in each selected output credential.
1272
+ Possible values are:
1273
+ * `HEADER`: Propagate attributes in the headers with "x-goog-iap-attr-" prefix.
1274
+ * `JWT`: Propagate attributes in the JWT of the form:
1275
+ "additional_claims": { "my_attribute": ["value1", "value2"] }
1276
+ * `RCTOKEN`: Propagate attributes in the RCToken of the form: "
1277
+ additional_claims": { "my_attribute": ["value1", "value2"] }
1278
+ Each value may be one of: `HEADER`, `JWT`, `RCTOKEN`.
1279
+ """
1280
+ elif False:
1281
+ SettingsApplicationSettingsAttributePropagationSettingsArgsDict: TypeAlias = Mapping[str, Any]
1282
+
1283
+ @pulumi.input_type
1284
+ class SettingsApplicationSettingsAttributePropagationSettingsArgs:
1285
+ def __init__(__self__, *,
1286
+ enable: Optional[pulumi.Input[bool]] = None,
1287
+ expression: Optional[pulumi.Input[str]] = None,
1288
+ output_credentials: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
1289
+ """
1290
+ :param pulumi.Input[bool] enable: Whether the provided attribute propagation settings should be evaluated on user requests.
1291
+ If set to true, attributes returned from the expression will be propagated in the set output credentials.
1292
+ :param pulumi.Input[str] expression: Raw string CEL expression. Must return a list of attributes. A maximum of 45 attributes can
1293
+ be selected. Expressions can select different attribute types from attributes:
1294
+ attributes.saml_attributes, attributes.iap_attributes.
1295
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] output_credentials: Which output credentials attributes selected by the CEL expression should be propagated in.
1296
+ All attributes will be fully duplicated in each selected output credential.
1297
+ Possible values are:
1298
+ * `HEADER`: Propagate attributes in the headers with "x-goog-iap-attr-" prefix.
1299
+ * `JWT`: Propagate attributes in the JWT of the form:
1300
+ "additional_claims": { "my_attribute": ["value1", "value2"] }
1301
+ * `RCTOKEN`: Propagate attributes in the RCToken of the form: "
1302
+ additional_claims": { "my_attribute": ["value1", "value2"] }
1303
+ Each value may be one of: `HEADER`, `JWT`, `RCTOKEN`.
1304
+ """
1305
+ if enable is not None:
1306
+ pulumi.set(__self__, "enable", enable)
1307
+ if expression is not None:
1308
+ pulumi.set(__self__, "expression", expression)
1309
+ if output_credentials is not None:
1310
+ pulumi.set(__self__, "output_credentials", output_credentials)
1311
+
1312
+ @property
1313
+ @pulumi.getter
1314
+ def enable(self) -> Optional[pulumi.Input[bool]]:
1315
+ """
1316
+ Whether the provided attribute propagation settings should be evaluated on user requests.
1317
+ If set to true, attributes returned from the expression will be propagated in the set output credentials.
1318
+ """
1319
+ return pulumi.get(self, "enable")
1320
+
1321
+ @enable.setter
1322
+ def enable(self, value: Optional[pulumi.Input[bool]]):
1323
+ pulumi.set(self, "enable", value)
1324
+
1325
+ @property
1326
+ @pulumi.getter
1327
+ def expression(self) -> Optional[pulumi.Input[str]]:
1328
+ """
1329
+ Raw string CEL expression. Must return a list of attributes. A maximum of 45 attributes can
1330
+ be selected. Expressions can select different attribute types from attributes:
1331
+ attributes.saml_attributes, attributes.iap_attributes.
1332
+ """
1333
+ return pulumi.get(self, "expression")
1334
+
1335
+ @expression.setter
1336
+ def expression(self, value: Optional[pulumi.Input[str]]):
1337
+ pulumi.set(self, "expression", value)
1338
+
1339
+ @property
1340
+ @pulumi.getter(name="outputCredentials")
1341
+ def output_credentials(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
1342
+ """
1343
+ Which output credentials attributes selected by the CEL expression should be propagated in.
1344
+ All attributes will be fully duplicated in each selected output credential.
1345
+ Possible values are:
1346
+ * `HEADER`: Propagate attributes in the headers with "x-goog-iap-attr-" prefix.
1347
+ * `JWT`: Propagate attributes in the JWT of the form:
1348
+ "additional_claims": { "my_attribute": ["value1", "value2"] }
1349
+ * `RCTOKEN`: Propagate attributes in the RCToken of the form: "
1350
+ additional_claims": { "my_attribute": ["value1", "value2"] }
1351
+ Each value may be one of: `HEADER`, `JWT`, `RCTOKEN`.
1352
+ """
1353
+ return pulumi.get(self, "output_credentials")
1354
+
1355
+ @output_credentials.setter
1356
+ def output_credentials(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
1357
+ pulumi.set(self, "output_credentials", value)
1358
+
1359
+
1360
+ if not MYPY:
1361
+ class SettingsApplicationSettingsCsmSettingsArgsDict(TypedDict):
1362
+ rctoken_aud: NotRequired[pulumi.Input[str]]
1363
+ """
1364
+ Audience claim set in the generated RCToken. This value is not validated by IAP.
1365
+ """
1366
+ elif False:
1367
+ SettingsApplicationSettingsCsmSettingsArgsDict: TypeAlias = Mapping[str, Any]
1368
+
1369
+ @pulumi.input_type
1370
+ class SettingsApplicationSettingsCsmSettingsArgs:
1371
+ def __init__(__self__, *,
1372
+ rctoken_aud: Optional[pulumi.Input[str]] = None):
1373
+ """
1374
+ :param pulumi.Input[str] rctoken_aud: Audience claim set in the generated RCToken. This value is not validated by IAP.
1375
+ """
1376
+ if rctoken_aud is not None:
1377
+ pulumi.set(__self__, "rctoken_aud", rctoken_aud)
1378
+
1379
+ @property
1380
+ @pulumi.getter(name="rctokenAud")
1381
+ def rctoken_aud(self) -> Optional[pulumi.Input[str]]:
1382
+ """
1383
+ Audience claim set in the generated RCToken. This value is not validated by IAP.
1384
+ """
1385
+ return pulumi.get(self, "rctoken_aud")
1386
+
1387
+ @rctoken_aud.setter
1388
+ def rctoken_aud(self, value: Optional[pulumi.Input[str]]):
1389
+ pulumi.set(self, "rctoken_aud", value)
1390
+
1391
+
390
1392
  if not MYPY:
391
1393
  class TunnelDestGroupIamBindingConditionArgsDict(TypedDict):
392
1394
  expression: pulumi.Input[str]