aws-cdk-lib 2.200.2__py3-none-any.whl → 2.224.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of aws-cdk-lib might be problematic. Click here for more details.

Files changed (569) hide show
  1. aws_cdk/__init__.py +1349 -373
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.200.2.jsii.tgz → aws-cdk-lib@2.224.0.jsii.tgz} +0 -0
  4. aws_cdk/alexa_ask/__init__.py +12 -2
  5. aws_cdk/aws_accessanalyzer/__init__.py +323 -6
  6. aws_cdk/aws_acmpca/__init__.py +53 -10
  7. aws_cdk/aws_aiops/__init__.py +1019 -0
  8. aws_cdk/aws_amazonmq/__init__.py +357 -313
  9. aws_cdk/aws_amplify/__init__.py +173 -17
  10. aws_cdk/aws_amplifyuibuilder/__init__.py +35 -6
  11. aws_cdk/aws_apigateway/__init__.py +1017 -155
  12. aws_cdk/aws_apigatewayv2/__init__.py +2796 -379
  13. aws_cdk/aws_apigatewayv2_integrations/__init__.py +94 -16
  14. aws_cdk/aws_appconfig/__init__.py +298 -43
  15. aws_cdk/aws_appflow/__init__.py +151 -6
  16. aws_cdk/aws_appintegrations/__init__.py +546 -6
  17. aws_cdk/aws_applicationautoscaling/__init__.py +29 -6
  18. aws_cdk/aws_applicationinsights/__init__.py +13 -2
  19. aws_cdk/aws_applicationsignals/__init__.py +374 -6
  20. aws_cdk/aws_appmesh/__init__.py +94 -26
  21. aws_cdk/aws_apprunner/__init__.py +66 -18
  22. aws_cdk/aws_appstream/__init__.py +309 -55
  23. aws_cdk/aws_appsync/__init__.py +227 -53
  24. aws_cdk/aws_apptest/__init__.py +71 -2
  25. aws_cdk/aws_aps/__init__.py +1875 -132
  26. aws_cdk/aws_arcregionswitch/__init__.py +5095 -0
  27. aws_cdk/aws_arczonalshift/__init__.py +39 -12
  28. aws_cdk/aws_athena/__init__.py +365 -29
  29. aws_cdk/aws_auditmanager/__init__.py +71 -2
  30. aws_cdk/aws_autoscaling/__init__.py +135 -55
  31. aws_cdk/aws_autoscaling_common/__init__.py +3 -0
  32. aws_cdk/aws_autoscalingplans/__init__.py +13 -2
  33. aws_cdk/aws_b2bi/__init__.py +1819 -99
  34. aws_cdk/aws_backup/__init__.py +317 -28
  35. aws_cdk/aws_backupgateway/__init__.py +13 -2
  36. aws_cdk/aws_batch/__init__.py +1405 -178
  37. aws_cdk/aws_bcmdataexports/__init__.py +21 -2
  38. aws_cdk/aws_bedrock/__init__.py +6747 -627
  39. aws_cdk/aws_bedrockagentcore/__init__.py +10425 -0
  40. aws_cdk/aws_billingconductor/__init__.py +197 -11
  41. aws_cdk/aws_budgets/__init__.py +42 -4
  42. aws_cdk/aws_cassandra/__init__.py +247 -6
  43. aws_cdk/aws_ce/__init__.py +35 -6
  44. aws_cdk/aws_certificatemanager/__init__.py +237 -32
  45. aws_cdk/aws_chatbot/__init__.py +70 -6
  46. aws_cdk/aws_cleanrooms/__init__.py +709 -206
  47. aws_cdk/aws_cleanroomsml/__init__.py +13 -2
  48. aws_cdk/aws_cloud9/__init__.py +13 -2
  49. aws_cdk/aws_cloudformation/__init__.py +345 -166
  50. aws_cdk/aws_cloudfront/__init__.py +2101 -680
  51. aws_cdk/aws_cloudfront/experimental/__init__.py +108 -16
  52. aws_cdk/aws_cloudfront_origins/__init__.py +614 -73
  53. aws_cdk/aws_cloudtrail/__init__.py +301 -17
  54. aws_cdk/aws_cloudwatch/__init__.py +1414 -153
  55. aws_cdk/aws_codeartifact/__init__.py +35 -6
  56. aws_cdk/aws_codebuild/__init__.py +1103 -118
  57. aws_cdk/aws_codecommit/__init__.py +23 -9
  58. aws_cdk/aws_codeconnections/__init__.py +13 -2
  59. aws_cdk/aws_codedeploy/__init__.py +67 -6
  60. aws_cdk/aws_codeguruprofiler/__init__.py +74 -2
  61. aws_cdk/aws_codegurureviewer/__init__.py +13 -2
  62. aws_cdk/aws_codepipeline/__init__.py +127 -64
  63. aws_cdk/aws_codepipeline_actions/__init__.py +749 -0
  64. aws_cdk/aws_codestar/__init__.py +13 -2
  65. aws_cdk/aws_codestarconnections/__init__.py +35 -6
  66. aws_cdk/aws_codestarnotifications/__init__.py +16 -2
  67. aws_cdk/aws_cognito/__init__.py +814 -80
  68. aws_cdk/aws_cognito_identitypool/__init__.py +17 -12
  69. aws_cdk/aws_comprehend/__init__.py +24 -4
  70. aws_cdk/aws_config/__init__.py +191 -30
  71. aws_cdk/aws_connect/__init__.py +2736 -191
  72. aws_cdk/aws_connectcampaigns/__init__.py +13 -2
  73. aws_cdk/aws_connectcampaignsv2/__init__.py +268 -6
  74. aws_cdk/aws_controltower/__init__.py +35 -6
  75. aws_cdk/aws_cur/__init__.py +100 -4
  76. aws_cdk/aws_customerprofiles/__init__.py +617 -27
  77. aws_cdk/aws_databrew/__init__.py +68 -12
  78. aws_cdk/aws_datapipeline/__init__.py +42 -2
  79. aws_cdk/aws_datasync/__init__.py +723 -203
  80. aws_cdk/aws_datazone/__init__.py +4425 -608
  81. aws_cdk/aws_dax/__init__.py +83 -6
  82. aws_cdk/aws_deadline/__init__.py +321 -32
  83. aws_cdk/aws_detective/__init__.py +35 -6
  84. aws_cdk/aws_devicefarm/__init__.py +68 -12
  85. aws_cdk/aws_devopsguru/__init__.py +37 -6
  86. aws_cdk/aws_directoryservice/__init__.py +53 -4
  87. aws_cdk/aws_dlm/__init__.py +13 -2
  88. aws_cdk/aws_dms/__init__.py +184 -27
  89. aws_cdk/aws_docdb/__init__.py +323 -46
  90. aws_cdk/aws_docdbelastic/__init__.py +13 -2
  91. aws_cdk/aws_dsql/__init__.py +340 -12
  92. aws_cdk/aws_dynamodb/__init__.py +1463 -166
  93. aws_cdk/aws_ec2/__init__.py +9636 -1120
  94. aws_cdk/aws_ecr/__init__.py +631 -43
  95. aws_cdk/aws_ecr_assets/__init__.py +4 -0
  96. aws_cdk/aws_ecs/__init__.py +6524 -497
  97. aws_cdk/aws_ecs_patterns/__init__.py +2 -0
  98. aws_cdk/aws_efs/__init__.py +264 -24
  99. aws_cdk/aws_eks/__init__.py +1050 -218
  100. aws_cdk/aws_elasticache/__init__.py +373 -20
  101. aws_cdk/aws_elasticbeanstalk/__init__.py +75 -8
  102. aws_cdk/aws_elasticloadbalancing/__init__.py +16 -2
  103. aws_cdk/aws_elasticloadbalancingv2/__init__.py +1670 -106
  104. aws_cdk/aws_elasticsearch/__init__.py +282 -9
  105. aws_cdk/aws_emr/__init__.py +187 -20
  106. aws_cdk/aws_emrcontainers/__init__.py +71 -2
  107. aws_cdk/aws_emrserverless/__init__.py +188 -3
  108. aws_cdk/aws_entityresolution/__init__.py +585 -58
  109. aws_cdk/aws_events/__init__.py +969 -124
  110. aws_cdk/aws_events_targets/__init__.py +310 -54
  111. aws_cdk/aws_eventschemas/__init__.py +46 -8
  112. aws_cdk/aws_evidently/__init__.py +57 -10
  113. aws_cdk/aws_evs/__init__.py +2244 -0
  114. aws_cdk/aws_finspace/__init__.py +71 -2
  115. aws_cdk/aws_fis/__init__.py +26 -4
  116. aws_cdk/aws_fms/__init__.py +35 -6
  117. aws_cdk/aws_forecast/__init__.py +24 -4
  118. aws_cdk/aws_frauddetector/__init__.py +79 -14
  119. aws_cdk/aws_fsx/__init__.py +1236 -142
  120. aws_cdk/aws_gamelift/__init__.py +653 -78
  121. aws_cdk/aws_gameliftstreams/__init__.py +38 -16
  122. aws_cdk/aws_globalaccelerator/__init__.py +55 -14
  123. aws_cdk/aws_glue/__init__.py +1368 -320
  124. aws_cdk/aws_grafana/__init__.py +13 -2
  125. aws_cdk/aws_greengrass/__init__.py +654 -32
  126. aws_cdk/aws_greengrassv2/__init__.py +53 -4
  127. aws_cdk/aws_groundstation/__init__.py +122 -6
  128. aws_cdk/aws_guardduty/__init__.py +1613 -123
  129. aws_cdk/aws_healthimaging/__init__.py +71 -2
  130. aws_cdk/aws_healthlake/__init__.py +42 -2
  131. aws_cdk/aws_iam/__init__.py +480 -140
  132. aws_cdk/aws_identitystore/__init__.py +24 -4
  133. aws_cdk/aws_imagebuilder/__init__.py +1433 -183
  134. aws_cdk/aws_inspector/__init__.py +38 -6
  135. aws_cdk/aws_inspectorv2/__init__.py +2285 -243
  136. aws_cdk/aws_internetmonitor/__init__.py +71 -2
  137. aws_cdk/aws_invoicing/__init__.py +13 -2
  138. aws_cdk/aws_iot/__init__.py +1730 -86
  139. aws_cdk/aws_iotanalytics/__init__.py +162 -8
  140. aws_cdk/aws_iotcoredeviceadvisor/__init__.py +106 -40
  141. aws_cdk/aws_iotevents/__init__.py +122 -6
  142. aws_cdk/aws_iotfleethub/__init__.py +71 -2
  143. aws_cdk/aws_iotfleetwise/__init__.py +195 -14
  144. aws_cdk/aws_iotsitewise/__init__.py +1837 -89
  145. aws_cdk/aws_iotthingsgraph/__init__.py +13 -2
  146. aws_cdk/aws_iottwinmaker/__init__.py +115 -10
  147. aws_cdk/aws_iotwireless/__init__.py +649 -22
  148. aws_cdk/aws_ivs/__init__.py +561 -57
  149. aws_cdk/aws_ivschat/__init__.py +24 -4
  150. aws_cdk/aws_kafkaconnect/__init__.py +35 -6
  151. aws_cdk/aws_kendra/__init__.py +120 -28
  152. aws_cdk/aws_kendraranking/__init__.py +13 -2
  153. aws_cdk/aws_kinesis/__init__.py +622 -22
  154. aws_cdk/aws_kinesisanalytics/__init__.py +467 -94
  155. aws_cdk/aws_kinesisanalyticsv2/__init__.py +201 -11
  156. aws_cdk/aws_kinesisfirehose/__init__.py +3077 -295
  157. aws_cdk/aws_kinesisvideo/__init__.py +24 -4
  158. aws_cdk/aws_kms/__init__.py +188 -41
  159. aws_cdk/aws_lakeformation/__init__.py +80 -15
  160. aws_cdk/aws_lambda/__init__.py +2101 -252
  161. aws_cdk/aws_lambda_event_sources/__init__.py +638 -1
  162. aws_cdk/aws_lambda_nodejs/__init__.py +63 -24
  163. aws_cdk/aws_launchwizard/__init__.py +13 -2
  164. aws_cdk/aws_lex/__init__.py +871 -8
  165. aws_cdk/aws_licensemanager/__init__.py +24 -4
  166. aws_cdk/aws_lightsail/__init__.py +2159 -975
  167. aws_cdk/aws_location/__init__.py +618 -14
  168. aws_cdk/aws_logs/__init__.py +5904 -956
  169. aws_cdk/aws_lookoutequipment/__init__.py +13 -2
  170. aws_cdk/aws_lookoutmetrics/__init__.py +38 -6
  171. aws_cdk/aws_lookoutvision/__init__.py +71 -2
  172. aws_cdk/aws_m2/__init__.py +94 -19
  173. aws_cdk/aws_macie/__init__.py +49 -11
  174. aws_cdk/aws_managedblockchain/__init__.py +180 -6
  175. aws_cdk/aws_mediaconnect/__init__.py +101 -18
  176. aws_cdk/aws_mediaconvert/__init__.py +35 -6
  177. aws_cdk/aws_medialive/__init__.py +1239 -35
  178. aws_cdk/aws_mediapackage/__init__.py +59 -12
  179. aws_cdk/aws_mediapackagev2/__init__.py +1607 -225
  180. aws_cdk/aws_mediastore/__init__.py +13 -2
  181. aws_cdk/aws_mediatailor/__init__.py +583 -12
  182. aws_cdk/aws_memorydb/__init__.py +271 -12
  183. aws_cdk/aws_mpa/__init__.py +1495 -0
  184. aws_cdk/aws_msk/__init__.py +104 -18
  185. aws_cdk/aws_mwaa/__init__.py +121 -9
  186. aws_cdk/aws_neptune/__init__.py +290 -78
  187. aws_cdk/aws_neptunegraph/__init__.py +24 -4
  188. aws_cdk/aws_networkfirewall/__init__.py +1289 -273
  189. aws_cdk/aws_networkmanager/__init__.py +349 -33
  190. aws_cdk/aws_nimblestudio/__init__.py +75 -8
  191. aws_cdk/aws_notifications/__init__.py +317 -12
  192. aws_cdk/aws_notificationscontacts/__init__.py +13 -2
  193. aws_cdk/aws_oam/__init__.py +24 -4
  194. aws_cdk/aws_observabilityadmin/__init__.py +2561 -0
  195. aws_cdk/aws_odb/__init__.py +5872 -0
  196. aws_cdk/aws_omics/__init__.py +2495 -529
  197. aws_cdk/aws_opensearchserverless/__init__.py +312 -37
  198. aws_cdk/aws_opensearchservice/__init__.py +495 -19
  199. aws_cdk/aws_opsworks/__init__.py +235 -139
  200. aws_cdk/aws_opsworkscm/__init__.py +16 -52
  201. aws_cdk/aws_organizations/__init__.py +70 -10
  202. aws_cdk/aws_osis/__init__.py +167 -2
  203. aws_cdk/aws_panorama/__init__.py +151 -6
  204. aws_cdk/aws_paymentcryptography/__init__.py +24 -4
  205. aws_cdk/aws_pcaconnectorad/__init__.py +59 -10
  206. aws_cdk/aws_pcaconnectorscep/__init__.py +24 -4
  207. aws_cdk/aws_pcs/__init__.py +387 -68
  208. aws_cdk/aws_personalize/__init__.py +46 -8
  209. aws_cdk/aws_pinpoint/__init__.py +329 -38
  210. aws_cdk/aws_pinpointemail/__init__.py +48 -8
  211. aws_cdk/aws_pipes/__init__.py +12 -2
  212. aws_cdk/aws_proton/__init__.py +37 -6
  213. aws_cdk/aws_qbusiness/__init__.py +635 -34
  214. aws_cdk/aws_qldb/__init__.py +24 -4
  215. aws_cdk/aws_quicksight/__init__.py +7900 -1160
  216. aws_cdk/aws_ram/__init__.py +24 -4
  217. aws_cdk/aws_rbin/__init__.py +12 -2
  218. aws_cdk/aws_rds/__init__.py +3345 -512
  219. aws_cdk/aws_redshift/__init__.py +143 -20
  220. aws_cdk/aws_redshiftserverless/__init__.py +692 -4
  221. aws_cdk/aws_refactorspaces/__init__.py +64 -14
  222. aws_cdk/aws_rekognition/__init__.py +93 -6
  223. aws_cdk/aws_resiliencehub/__init__.py +24 -4
  224. aws_cdk/aws_resourceexplorer2/__init__.py +35 -6
  225. aws_cdk/aws_resourcegroups/__init__.py +82 -4
  226. aws_cdk/aws_robomaker/__init__.py +72 -12
  227. aws_cdk/aws_rolesanywhere/__init__.py +180 -6
  228. aws_cdk/aws_route53/__init__.py +3273 -1442
  229. aws_cdk/aws_route53_targets/__init__.py +3 -0
  230. aws_cdk/aws_route53profiles/__init__.py +37 -6
  231. aws_cdk/aws_route53recoverycontrol/__init__.py +46 -8
  232. aws_cdk/aws_route53recoveryreadiness/__init__.py +104 -8
  233. aws_cdk/aws_route53resolver/__init__.py +226 -36
  234. aws_cdk/aws_rtbfabric/__init__.py +3498 -0
  235. aws_cdk/aws_rum/__init__.py +13 -2
  236. aws_cdk/aws_s3/__init__.py +1291 -158
  237. aws_cdk/aws_s3_assets/__init__.py +11 -11
  238. aws_cdk/aws_s3_deployment/__init__.py +147 -11
  239. aws_cdk/aws_s3_notifications/__init__.py +7 -7
  240. aws_cdk/aws_s3express/__init__.py +266 -8
  241. aws_cdk/aws_s3objectlambda/__init__.py +68 -16
  242. aws_cdk/aws_s3outposts/__init__.py +46 -8
  243. aws_cdk/aws_s3tables/__init__.py +2000 -323
  244. aws_cdk/aws_s3vectors/__init__.py +1378 -0
  245. aws_cdk/aws_sagemaker/__init__.py +6617 -363
  246. aws_cdk/aws_sam/__init__.py +79 -14
  247. aws_cdk/aws_scheduler/__init__.py +237 -4
  248. aws_cdk/aws_sdb/__init__.py +12 -2
  249. aws_cdk/aws_secretsmanager/__init__.py +170 -14
  250. aws_cdk/aws_securityhub/__init__.py +3121 -176
  251. aws_cdk/aws_securitylake/__init__.py +46 -8
  252. aws_cdk/aws_servicecatalog/__init__.py +405 -246
  253. aws_cdk/aws_servicecatalogappregistry/__init__.py +164 -8
  254. aws_cdk/aws_servicediscovery/__init__.py +140 -47
  255. aws_cdk/aws_ses/__init__.py +1231 -140
  256. aws_cdk/aws_shield/__init__.py +46 -8
  257. aws_cdk/aws_signer/__init__.py +27 -4
  258. aws_cdk/aws_simspaceweaver/__init__.py +42 -2
  259. aws_cdk/aws_smsvoice/__init__.py +4716 -0
  260. aws_cdk/aws_sns/__init__.py +245 -29
  261. aws_cdk/aws_sns_subscriptions/__init__.py +3 -1
  262. aws_cdk/aws_sqs/__init__.py +211 -14
  263. aws_cdk/aws_ssm/__init__.py +401 -58
  264. aws_cdk/aws_ssmcontacts/__init__.py +46 -8
  265. aws_cdk/aws_ssmguiconnect/__init__.py +13 -2
  266. aws_cdk/aws_ssmincidents/__init__.py +24 -4
  267. aws_cdk/aws_ssmquicksetup/__init__.py +383 -6
  268. aws_cdk/aws_sso/__init__.py +70 -12
  269. aws_cdk/aws_stepfunctions/__init__.py +615 -70
  270. aws_cdk/aws_stepfunctions_tasks/__init__.py +781 -144
  271. aws_cdk/aws_supportapp/__init__.py +39 -6
  272. aws_cdk/aws_synthetics/__init__.py +861 -75
  273. aws_cdk/aws_systemsmanagersap/__init__.py +13 -2
  274. aws_cdk/aws_timestream/__init__.py +104 -8
  275. aws_cdk/aws_transfer/__init__.py +784 -87
  276. aws_cdk/aws_verifiedpermissions/__init__.py +145 -17
  277. aws_cdk/aws_voiceid/__init__.py +41 -2
  278. aws_cdk/aws_vpclattice/__init__.py +376 -30
  279. aws_cdk/aws_waf/__init__.py +79 -14
  280. aws_cdk/aws_wafregional/__init__.py +123 -22
  281. aws_cdk/aws_wafv2/__init__.py +1179 -60
  282. aws_cdk/aws_wisdom/__init__.py +1401 -90
  283. aws_cdk/aws_workspaces/__init__.py +93 -6
  284. aws_cdk/aws_workspacesinstances/__init__.py +3940 -0
  285. aws_cdk/aws_workspacesthinclient/__init__.py +79 -10
  286. aws_cdk/aws_workspacesweb/__init__.py +1057 -141
  287. aws_cdk/aws_xray/__init__.py +48 -8
  288. aws_cdk/cloud_assembly_schema/__init__.py +231 -6
  289. aws_cdk/custom_resources/__init__.py +40 -12
  290. aws_cdk/cx_api/__init__.py +85 -14
  291. aws_cdk/interfaces/__init__.py +739 -0
  292. aws_cdk/interfaces/alexa_ask/__init__.py +146 -0
  293. aws_cdk/interfaces/aws_accessanalyzer/__init__.py +146 -0
  294. aws_cdk/interfaces/aws_acmpca/__init__.py +501 -0
  295. aws_cdk/interfaces/aws_aiops/__init__.py +146 -0
  296. aws_cdk/interfaces/aws_amazonmq/__init__.py +386 -0
  297. aws_cdk/interfaces/aws_amplify/__init__.py +352 -0
  298. aws_cdk/interfaces/aws_amplifyuibuilder/__init__.py +454 -0
  299. aws_cdk/interfaces/aws_apigateway/__init__.py +2486 -0
  300. aws_cdk/interfaces/aws_apigatewayv2/__init__.py +1651 -0
  301. aws_cdk/interfaces/aws_appconfig/__init__.py +1020 -0
  302. aws_cdk/interfaces/aws_appflow/__init__.py +404 -0
  303. aws_cdk/interfaces/aws_appintegrations/__init__.py +396 -0
  304. aws_cdk/interfaces/aws_applicationautoscaling/__init__.py +307 -0
  305. aws_cdk/interfaces/aws_applicationinsights/__init__.py +148 -0
  306. aws_cdk/interfaces/aws_applicationsignals/__init__.py +358 -0
  307. aws_cdk/interfaces/aws_appmesh/__init__.py +888 -0
  308. aws_cdk/interfaces/aws_apprunner/__init__.py +564 -0
  309. aws_cdk/interfaces/aws_appstream/__init__.py +1482 -0
  310. aws_cdk/interfaces/aws_appsync/__init__.py +1326 -0
  311. aws_cdk/interfaces/aws_apptest/__init__.py +163 -0
  312. aws_cdk/interfaces/aws_aps/__init__.py +558 -0
  313. aws_cdk/interfaces/aws_arcregionswitch/__init__.py +146 -0
  314. aws_cdk/interfaces/aws_arczonalshift/__init__.py +273 -0
  315. aws_cdk/interfaces/aws_athena/__init__.py +575 -0
  316. aws_cdk/interfaces/aws_auditmanager/__init__.py +163 -0
  317. aws_cdk/interfaces/aws_autoscaling/__init__.py +705 -0
  318. aws_cdk/interfaces/aws_autoscalingplans/__init__.py +148 -0
  319. aws_cdk/interfaces/aws_b2bi/__init__.py +524 -0
  320. aws_cdk/interfaces/aws_backup/__init__.py +955 -0
  321. aws_cdk/interfaces/aws_backupgateway/__init__.py +146 -0
  322. aws_cdk/interfaces/aws_batch/__init__.py +681 -0
  323. aws_cdk/interfaces/aws_bcmdataexports/__init__.py +146 -0
  324. aws_cdk/interfaces/aws_bedrock/__init__.py +1942 -0
  325. aws_cdk/interfaces/aws_bedrockagentcore/__init__.py +934 -0
  326. aws_cdk/interfaces/aws_billing/__init__.py +146 -0
  327. aws_cdk/interfaces/aws_billingconductor/__init__.py +463 -0
  328. aws_cdk/interfaces/aws_budgets/__init__.py +261 -0
  329. aws_cdk/interfaces/aws_cassandra/__init__.py +381 -0
  330. aws_cdk/interfaces/aws_ce/__init__.py +352 -0
  331. aws_cdk/interfaces/aws_certificatemanager/__init__.py +251 -0
  332. aws_cdk/interfaces/aws_chatbot/__init__.py +366 -0
  333. aws_cdk/interfaces/aws_cleanrooms/__init__.py +1103 -0
  334. aws_cdk/interfaces/aws_cleanroomsml/__init__.py +148 -0
  335. aws_cdk/interfaces/aws_cloud9/__init__.py +166 -0
  336. aws_cdk/interfaces/aws_cloudformation/__init__.py +1919 -0
  337. aws_cdk/interfaces/aws_cloudfront/__init__.py +1998 -0
  338. aws_cdk/interfaces/aws_cloudtrail/__init__.py +570 -0
  339. aws_cdk/interfaces/aws_cloudwatch/__init__.py +733 -0
  340. aws_cdk/interfaces/aws_codeartifact/__init__.py +352 -0
  341. aws_cdk/interfaces/aws_codebuild/__init__.py +487 -0
  342. aws_cdk/interfaces/aws_codecommit/__init__.py +163 -0
  343. aws_cdk/interfaces/aws_codeconnections/__init__.py +146 -0
  344. aws_cdk/interfaces/aws_codedeploy/__init__.py +352 -0
  345. aws_cdk/interfaces/aws_codeguruprofiler/__init__.py +168 -0
  346. aws_cdk/interfaces/aws_codegurureviewer/__init__.py +148 -0
  347. aws_cdk/interfaces/aws_codepipeline/__init__.py +388 -0
  348. aws_cdk/interfaces/aws_codestar/__init__.py +146 -0
  349. aws_cdk/interfaces/aws_codestarconnections/__init__.py +370 -0
  350. aws_cdk/interfaces/aws_codestarnotifications/__init__.py +148 -0
  351. aws_cdk/interfaces/aws_cognito/__init__.py +1929 -0
  352. aws_cdk/interfaces/aws_comprehend/__init__.py +251 -0
  353. aws_cdk/interfaces/aws_config/__init__.py +1165 -0
  354. aws_cdk/interfaces/aws_connect/__init__.py +2949 -0
  355. aws_cdk/interfaces/aws_connectcampaigns/__init__.py +146 -0
  356. aws_cdk/interfaces/aws_connectcampaignsv2/__init__.py +146 -0
  357. aws_cdk/interfaces/aws_controltower/__init__.py +394 -0
  358. aws_cdk/interfaces/aws_cur/__init__.py +146 -0
  359. aws_cdk/interfaces/aws_customerprofiles/__init__.py +915 -0
  360. aws_cdk/interfaces/aws_databrew/__init__.py +661 -0
  361. aws_cdk/interfaces/aws_datapipeline/__init__.py +146 -0
  362. aws_cdk/interfaces/aws_datasync/__init__.py +1384 -0
  363. aws_cdk/interfaces/aws_datazone/__init__.py +2238 -0
  364. aws_cdk/interfaces/aws_dax/__init__.py +364 -0
  365. aws_cdk/interfaces/aws_deadline/__init__.py +1303 -0
  366. aws_cdk/interfaces/aws_detective/__init__.py +364 -0
  367. aws_cdk/interfaces/aws_devicefarm/__init__.py +663 -0
  368. aws_cdk/interfaces/aws_devopsguru/__init__.py +362 -0
  369. aws_cdk/interfaces/aws_directoryservice/__init__.py +251 -0
  370. aws_cdk/interfaces/aws_dlm/__init__.py +166 -0
  371. aws_cdk/interfaces/aws_dms/__init__.py +1176 -0
  372. aws_cdk/interfaces/aws_docdb/__init__.py +560 -0
  373. aws_cdk/interfaces/aws_docdbelastic/__init__.py +146 -0
  374. aws_cdk/interfaces/aws_dsql/__init__.py +146 -0
  375. aws_cdk/interfaces/aws_dynamodb/__init__.py +278 -0
  376. aws_cdk/interfaces/aws_ec2/__init__.py +11963 -0
  377. aws_cdk/interfaces/aws_ecr/__init__.py +814 -0
  378. aws_cdk/interfaces/aws_ecs/__init__.py +845 -0
  379. aws_cdk/interfaces/aws_efs/__init__.py +392 -0
  380. aws_cdk/interfaces/aws_eks/__init__.py +948 -0
  381. aws_cdk/interfaces/aws_elasticache/__init__.py +1108 -0
  382. aws_cdk/interfaces/aws_elasticbeanstalk/__init__.py +503 -0
  383. aws_cdk/interfaces/aws_elasticloadbalancing/__init__.py +148 -0
  384. aws_cdk/interfaces/aws_elasticloadbalancingv2/__init__.py +795 -0
  385. aws_cdk/interfaces/aws_elasticsearch/__init__.py +158 -0
  386. aws_cdk/interfaces/aws_emr/__init__.py +913 -0
  387. aws_cdk/interfaces/aws_emrcontainers/__init__.py +168 -0
  388. aws_cdk/interfaces/aws_emrserverless/__init__.py +166 -0
  389. aws_cdk/interfaces/aws_entityresolution/__init__.py +608 -0
  390. aws_cdk/interfaces/aws_events/__init__.py +872 -0
  391. aws_cdk/interfaces/aws_eventschemas/__init__.py +455 -0
  392. aws_cdk/interfaces/aws_evidently/__init__.py +558 -0
  393. aws_cdk/interfaces/aws_evs/__init__.py +166 -0
  394. aws_cdk/interfaces/aws_finspace/__init__.py +166 -0
  395. aws_cdk/interfaces/aws_fis/__init__.py +271 -0
  396. aws_cdk/interfaces/aws_fms/__init__.py +364 -0
  397. aws_cdk/interfaces/aws_forecast/__init__.py +249 -0
  398. aws_cdk/interfaces/aws_frauddetector/__init__.py +764 -0
  399. aws_cdk/interfaces/aws_fsx/__init__.py +663 -0
  400. aws_cdk/interfaces/aws_gamelift/__init__.py +1325 -0
  401. aws_cdk/interfaces/aws_gameliftstreams/__init__.py +249 -0
  402. aws_cdk/interfaces/aws_globalaccelerator/__init__.py +461 -0
  403. aws_cdk/interfaces/aws_glue/__init__.py +2377 -0
  404. aws_cdk/interfaces/aws_grafana/__init__.py +146 -0
  405. aws_cdk/interfaces/aws_greengrass/__init__.py +1871 -0
  406. aws_cdk/interfaces/aws_greengrassv2/__init__.py +251 -0
  407. aws_cdk/interfaces/aws_groundstation/__init__.py +396 -0
  408. aws_cdk/interfaces/aws_guardduty/__init__.py +1225 -0
  409. aws_cdk/interfaces/aws_healthimaging/__init__.py +163 -0
  410. aws_cdk/interfaces/aws_healthlake/__init__.py +146 -0
  411. aws_cdk/interfaces/aws_iam/__init__.py +1803 -0
  412. aws_cdk/interfaces/aws_identitystore/__init__.py +288 -0
  413. aws_cdk/interfaces/aws_imagebuilder/__init__.py +984 -0
  414. aws_cdk/interfaces/aws_inspector/__init__.py +354 -0
  415. aws_cdk/interfaces/aws_inspectorv2/__init__.py +467 -0
  416. aws_cdk/interfaces/aws_internetmonitor/__init__.py +163 -0
  417. aws_cdk/interfaces/aws_invoicing/__init__.py +146 -0
  418. aws_cdk/interfaces/aws_iot/__init__.py +3483 -0
  419. aws_cdk/interfaces/aws_iotanalytics/__init__.py +455 -0
  420. aws_cdk/interfaces/aws_iotcoredeviceadvisor/__init__.py +168 -0
  421. aws_cdk/interfaces/aws_iotevents/__init__.py +352 -0
  422. aws_cdk/interfaces/aws_iotfleethub/__init__.py +166 -0
  423. aws_cdk/interfaces/aws_iotfleetwise/__init__.py +892 -0
  424. aws_cdk/interfaces/aws_iotsitewise/__init__.py +1097 -0
  425. aws_cdk/interfaces/aws_iotthingsgraph/__init__.py +146 -0
  426. aws_cdk/interfaces/aws_iottwinmaker/__init__.py +711 -0
  427. aws_cdk/interfaces/aws_iotwireless/__init__.py +1401 -0
  428. aws_cdk/interfaces/aws_ivs/__init__.py +1075 -0
  429. aws_cdk/interfaces/aws_ivschat/__init__.py +251 -0
  430. aws_cdk/interfaces/aws_kafkaconnect/__init__.py +354 -0
  431. aws_cdk/interfaces/aws_kendra/__init__.py +428 -0
  432. aws_cdk/interfaces/aws_kendraranking/__init__.py +166 -0
  433. aws_cdk/interfaces/aws_kinesis/__init__.py +364 -0
  434. aws_cdk/interfaces/aws_kinesisanalytics/__init__.py +364 -0
  435. aws_cdk/interfaces/aws_kinesisanalyticsv2/__init__.py +479 -0
  436. aws_cdk/interfaces/aws_kinesisfirehose/__init__.py +168 -0
  437. aws_cdk/interfaces/aws_kinesisvideo/__init__.py +283 -0
  438. aws_cdk/interfaces/aws_kms/__init__.py +376 -0
  439. aws_cdk/interfaces/aws_lakeformation/__init__.py +860 -0
  440. aws_cdk/interfaces/aws_lambda/__init__.py +1141 -0
  441. aws_cdk/interfaces/aws_launchwizard/__init__.py +146 -0
  442. aws_cdk/interfaces/aws_lex/__init__.py +513 -0
  443. aws_cdk/interfaces/aws_licensemanager/__init__.py +249 -0
  444. aws_cdk/interfaces/aws_lightsail/__init__.py +1744 -0
  445. aws_cdk/interfaces/aws_location/__init__.py +879 -0
  446. aws_cdk/interfaces/aws_logs/__init__.py +1667 -0
  447. aws_cdk/interfaces/aws_lookoutequipment/__init__.py +168 -0
  448. aws_cdk/interfaces/aws_lookoutmetrics/__init__.py +251 -0
  449. aws_cdk/interfaces/aws_lookoutvision/__init__.py +163 -0
  450. aws_cdk/interfaces/aws_m2/__init__.py +352 -0
  451. aws_cdk/interfaces/aws_macie/__init__.py +512 -0
  452. aws_cdk/interfaces/aws_managedblockchain/__init__.py +381 -0
  453. aws_cdk/interfaces/aws_mediaconnect/__init__.py +1028 -0
  454. aws_cdk/interfaces/aws_mediaconvert/__init__.py +396 -0
  455. aws_cdk/interfaces/aws_medialive/__init__.py +1755 -0
  456. aws_cdk/interfaces/aws_mediapackage/__init__.py +644 -0
  457. aws_cdk/interfaces/aws_mediapackagev2/__init__.py +618 -0
  458. aws_cdk/interfaces/aws_mediastore/__init__.py +146 -0
  459. aws_cdk/interfaces/aws_mediatailor/__init__.py +788 -0
  460. aws_cdk/interfaces/aws_memorydb/__init__.py +685 -0
  461. aws_cdk/interfaces/aws_mpa/__init__.py +249 -0
  462. aws_cdk/interfaces/aws_msk/__init__.py +764 -0
  463. aws_cdk/interfaces/aws_mwaa/__init__.py +166 -0
  464. aws_cdk/interfaces/aws_neptune/__init__.py +663 -0
  465. aws_cdk/interfaces/aws_neptunegraph/__init__.py +265 -0
  466. aws_cdk/interfaces/aws_networkfirewall/__init__.py +669 -0
  467. aws_cdk/interfaces/aws_networkmanager/__init__.py +1832 -0
  468. aws_cdk/interfaces/aws_nimblestudio/__init__.py +388 -0
  469. aws_cdk/interfaces/aws_notifications/__init__.py +868 -0
  470. aws_cdk/interfaces/aws_notificationscontacts/__init__.py +148 -0
  471. aws_cdk/interfaces/aws_oam/__init__.py +249 -0
  472. aws_cdk/interfaces/aws_observabilityadmin/__init__.py +362 -0
  473. aws_cdk/interfaces/aws_odb/__init__.py +562 -0
  474. aws_cdk/interfaces/aws_omics/__init__.py +838 -0
  475. aws_cdk/interfaces/aws_opensearchserverless/__init__.py +859 -0
  476. aws_cdk/interfaces/aws_opensearchservice/__init__.py +283 -0
  477. aws_cdk/interfaces/aws_opsworks/__init__.py +772 -0
  478. aws_cdk/interfaces/aws_opsworkscm/__init__.py +146 -0
  479. aws_cdk/interfaces/aws_organizations/__init__.py +646 -0
  480. aws_cdk/interfaces/aws_osis/__init__.py +146 -0
  481. aws_cdk/interfaces/aws_panorama/__init__.py +420 -0
  482. aws_cdk/interfaces/aws_paymentcryptography/__init__.py +249 -0
  483. aws_cdk/interfaces/aws_pcaconnectorad/__init__.py +608 -0
  484. aws_cdk/interfaces/aws_pcaconnectorscep/__init__.py +249 -0
  485. aws_cdk/interfaces/aws_pcs/__init__.py +352 -0
  486. aws_cdk/interfaces/aws_personalize/__init__.py +455 -0
  487. aws_cdk/interfaces/aws_pinpoint/__init__.py +2125 -0
  488. aws_cdk/interfaces/aws_pinpointemail/__init__.py +467 -0
  489. aws_cdk/interfaces/aws_pipes/__init__.py +158 -0
  490. aws_cdk/interfaces/aws_proton/__init__.py +360 -0
  491. aws_cdk/interfaces/aws_qbusiness/__init__.py +1122 -0
  492. aws_cdk/interfaces/aws_qldb/__init__.py +283 -0
  493. aws_cdk/interfaces/aws_quicksight/__init__.py +1566 -0
  494. aws_cdk/interfaces/aws_ram/__init__.py +249 -0
  495. aws_cdk/interfaces/aws_rbin/__init__.py +146 -0
  496. aws_cdk/interfaces/aws_rds/__init__.py +1780 -0
  497. aws_cdk/interfaces/aws_redshift/__init__.py +1104 -0
  498. aws_cdk/interfaces/aws_redshiftserverless/__init__.py +356 -0
  499. aws_cdk/interfaces/aws_refactorspaces/__init__.py +605 -0
  500. aws_cdk/interfaces/aws_rekognition/__init__.py +406 -0
  501. aws_cdk/interfaces/aws_resiliencehub/__init__.py +251 -0
  502. aws_cdk/interfaces/aws_resourceexplorer2/__init__.py +354 -0
  503. aws_cdk/interfaces/aws_resourcegroups/__init__.py +261 -0
  504. aws_cdk/interfaces/aws_robomaker/__init__.py +673 -0
  505. aws_cdk/interfaces/aws_rolesanywhere/__init__.py +384 -0
  506. aws_cdk/interfaces/aws_route53/__init__.py +804 -0
  507. aws_cdk/interfaces/aws_route53profiles/__init__.py +368 -0
  508. aws_cdk/interfaces/aws_route53recoverycontrol/__init__.py +463 -0
  509. aws_cdk/interfaces/aws_route53recoveryreadiness/__init__.py +535 -0
  510. aws_cdk/interfaces/aws_route53resolver/__init__.py +1356 -0
  511. aws_cdk/interfaces/aws_rtbfabric/__init__.py +352 -0
  512. aws_cdk/interfaces/aws_rum/__init__.py +146 -0
  513. aws_cdk/interfaces/aws_s3/__init__.py +1171 -0
  514. aws_cdk/interfaces/aws_s3express/__init__.py +392 -0
  515. aws_cdk/interfaces/aws_s3objectlambda/__init__.py +271 -0
  516. aws_cdk/interfaces/aws_s3outposts/__init__.py +455 -0
  517. aws_cdk/interfaces/aws_s3tables/__init__.py +575 -0
  518. aws_cdk/interfaces/aws_s3vectors/__init__.py +354 -0
  519. aws_cdk/interfaces/aws_sagemaker/__init__.py +3797 -0
  520. aws_cdk/interfaces/aws_sam/__init__.py +603 -0
  521. aws_cdk/interfaces/aws_scheduler/__init__.py +286 -0
  522. aws_cdk/interfaces/aws_sdb/__init__.py +146 -0
  523. aws_cdk/interfaces/aws_secretsmanager/__init__.py +461 -0
  524. aws_cdk/interfaces/aws_securityhub/__init__.py +1499 -0
  525. aws_cdk/interfaces/aws_securitylake/__init__.py +474 -0
  526. aws_cdk/interfaces/aws_servicecatalog/__init__.py +1829 -0
  527. aws_cdk/interfaces/aws_servicecatalogappregistry/__init__.py +557 -0
  528. aws_cdk/interfaces/aws_servicediscovery/__init__.py +636 -0
  529. aws_cdk/interfaces/aws_ses/__init__.py +2018 -0
  530. aws_cdk/interfaces/aws_shield/__init__.py +455 -0
  531. aws_cdk/interfaces/aws_signer/__init__.py +266 -0
  532. aws_cdk/interfaces/aws_simspaceweaver/__init__.py +146 -0
  533. aws_cdk/interfaces/aws_smsvoice/__init__.py +892 -0
  534. aws_cdk/interfaces/aws_sns/__init__.py +455 -0
  535. aws_cdk/interfaces/aws_sqs/__init__.py +364 -0
  536. aws_cdk/interfaces/aws_ssm/__init__.py +982 -0
  537. aws_cdk/interfaces/aws_ssmcontacts/__init__.py +455 -0
  538. aws_cdk/interfaces/aws_ssmguiconnect/__init__.py +146 -0
  539. aws_cdk/interfaces/aws_ssmincidents/__init__.py +249 -0
  540. aws_cdk/interfaces/aws_ssmquicksetup/__init__.py +253 -0
  541. aws_cdk/interfaces/aws_sso/__init__.py +797 -0
  542. aws_cdk/interfaces/aws_stepfunctions/__init__.py +459 -0
  543. aws_cdk/interfaces/aws_supportapp/__init__.py +372 -0
  544. aws_cdk/interfaces/aws_synthetics/__init__.py +249 -0
  545. aws_cdk/interfaces/aws_systemsmanagersap/__init__.py +148 -0
  546. aws_cdk/interfaces/aws_timestream/__init__.py +526 -0
  547. aws_cdk/interfaces/aws_transfer/__init__.py +967 -0
  548. aws_cdk/interfaces/aws_verifiedpermissions/__init__.py +538 -0
  549. aws_cdk/interfaces/aws_voiceid/__init__.py +146 -0
  550. aws_cdk/interfaces/aws_vpclattice/__init__.py +1418 -0
  551. aws_cdk/interfaces/aws_waf/__init__.py +764 -0
  552. aws_cdk/interfaces/aws_wafregional/__init__.py +1182 -0
  553. aws_cdk/interfaces/aws_wafv2/__init__.py +870 -0
  554. aws_cdk/interfaces/aws_wisdom/__init__.py +1556 -0
  555. aws_cdk/interfaces/aws_workspaces/__init__.py +352 -0
  556. aws_cdk/interfaces/aws_workspacesinstances/__init__.py +390 -0
  557. aws_cdk/interfaces/aws_workspacesthinclient/__init__.py +168 -0
  558. aws_cdk/interfaces/aws_workspacesweb/__init__.py +1085 -0
  559. aws_cdk/interfaces/aws_xray/__init__.py +457 -0
  560. aws_cdk/pipelines/__init__.py +192 -42
  561. aws_cdk/region_info/__init__.py +3 -0
  562. aws_cdk/triggers/__init__.py +60 -18
  563. {aws_cdk_lib-2.200.2.dist-info → aws_cdk_lib-2.224.0.dist-info}/METADATA +338 -16
  564. aws_cdk_lib-2.224.0.dist-info/RECORD +584 -0
  565. aws_cdk_lib-2.200.2.dist-info/RECORD +0 -304
  566. {aws_cdk_lib-2.200.2.dist-info → aws_cdk_lib-2.224.0.dist-info}/LICENSE +0 -0
  567. {aws_cdk_lib-2.200.2.dist-info → aws_cdk_lib-2.224.0.dist-info}/NOTICE +0 -0
  568. {aws_cdk_lib-2.200.2.dist-info → aws_cdk_lib-2.224.0.dist-info}/WHEEL +0 -0
  569. {aws_cdk_lib-2.200.2.dist-info → aws_cdk_lib-2.224.0.dist-info}/top_level.txt +0 -0
@@ -77,9 +77,31 @@ from .. import (
77
77
  TagManager as _TagManager_0a598cb3,
78
78
  TreeInspector as _TreeInspector_488e0dd5,
79
79
  )
80
+ from ..interfaces.aws_workspacesweb import (
81
+ BrowserSettingsReference as _BrowserSettingsReference_37e59681,
82
+ DataProtectionSettingsReference as _DataProtectionSettingsReference_3de93c3b,
83
+ IBrowserSettingsRef as _IBrowserSettingsRef_27fa755b,
84
+ IDataProtectionSettingsRef as _IDataProtectionSettingsRef_733dabd5,
85
+ IIdentityProviderRef as _IIdentityProviderRef_1989e7fb,
86
+ IIpAccessSettingsRef as _IIpAccessSettingsRef_5ce903cc,
87
+ INetworkSettingsRef as _INetworkSettingsRef_9fcb0139,
88
+ IPortalRef as _IPortalRef_cb17b713,
89
+ ISessionLoggerRef as _ISessionLoggerRef_0b36bc89,
90
+ ITrustStoreRef as _ITrustStoreRef_b3e9ed97,
91
+ IUserAccessLoggingSettingsRef as _IUserAccessLoggingSettingsRef_35b44bda,
92
+ IUserSettingsRef as _IUserSettingsRef_02671625,
93
+ IdentityProviderReference as _IdentityProviderReference_fb66eb46,
94
+ IpAccessSettingsReference as _IpAccessSettingsReference_456f1045,
95
+ NetworkSettingsReference as _NetworkSettingsReference_ed72cf7d,
96
+ PortalReference as _PortalReference_7c6ae828,
97
+ SessionLoggerReference as _SessionLoggerReference_21b78d4c,
98
+ TrustStoreReference as _TrustStoreReference_778699bf,
99
+ UserAccessLoggingSettingsReference as _UserAccessLoggingSettingsReference_b92d801e,
100
+ UserSettingsReference as _UserSettingsReference_9c05e0ee,
101
+ )
80
102
 
81
103
 
82
- @jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
104
+ @jsii.implements(_IInspectable_c2943556, _IBrowserSettingsRef_27fa755b, _ITaggableV2_4e6798f8)
83
105
  class CfnBrowserSettings(
84
106
  _CfnResource_9df397a6,
85
107
  metaclass=jsii.JSIIMeta,
@@ -122,7 +144,8 @@ class CfnBrowserSettings(
122
144
  customer_managed_key: typing.Optional[builtins.str] = None,
123
145
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
124
146
  ) -> None:
125
- '''
147
+ '''Create a new ``AWS::WorkSpacesWeb::BrowserSettings``.
148
+
126
149
  :param scope: Scope in which this resource is defined.
127
150
  :param id: Construct identifier for this resource (unique in its scope).
128
151
  :param additional_encryption_context: Additional encryption context of the browser settings.
@@ -191,6 +214,12 @@ class CfnBrowserSettings(
191
214
  '''
192
215
  return typing.cast(builtins.str, jsii.get(self, "attrBrowserSettingsArn"))
193
216
 
217
+ @builtins.property
218
+ @jsii.member(jsii_name="browserSettingsRef")
219
+ def browser_settings_ref(self) -> _BrowserSettingsReference_37e59681:
220
+ '''A reference to a BrowserSettings resource.'''
221
+ return typing.cast(_BrowserSettingsReference_37e59681, jsii.get(self, "browserSettingsRef"))
222
+
194
223
  @builtins.property
195
224
  @jsii.member(jsii_name="cdkTagManager")
196
225
  def cdk_tag_manager(self) -> _TagManager_0a598cb3:
@@ -377,7 +406,7 @@ class CfnBrowserSettingsProps:
377
406
  )
378
407
 
379
408
 
380
- @jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
409
+ @jsii.implements(_IInspectable_c2943556, _IDataProtectionSettingsRef_733dabd5, _ITaggableV2_4e6798f8)
381
410
  class CfnDataProtectionSettings(
382
411
  _CfnResource_9df397a6,
383
412
  metaclass=jsii.JSIIMeta,
@@ -450,7 +479,8 @@ class CfnDataProtectionSettings(
450
479
  inline_redaction_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnDataProtectionSettings.InlineRedactionConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
451
480
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
452
481
  ) -> None:
453
- '''
482
+ '''Create a new ``AWS::WorkSpacesWeb::DataProtectionSettings``.
483
+
454
484
  :param scope: Scope in which this resource is defined.
455
485
  :param id: Construct identifier for this resource (unique in its scope).
456
486
  :param additional_encryption_context: The additional encryption context of the data protection settings.
@@ -543,6 +573,12 @@ class CfnDataProtectionSettings(
543
573
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
544
574
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
545
575
 
576
+ @builtins.property
577
+ @jsii.member(jsii_name="dataProtectionSettingsRef")
578
+ def data_protection_settings_ref(self) -> _DataProtectionSettingsReference_3de93c3b:
579
+ '''A reference to a DataProtectionSettings resource.'''
580
+ return typing.cast(_DataProtectionSettingsReference_3de93c3b, jsii.get(self, "dataProtectionSettingsRef"))
581
+
546
582
  @builtins.property
547
583
  @jsii.member(jsii_name="additionalEncryptionContext")
548
584
  def additional_encryption_context(
@@ -1298,7 +1334,7 @@ class CfnDataProtectionSettingsProps:
1298
1334
  )
1299
1335
 
1300
1336
 
1301
- @jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
1337
+ @jsii.implements(_IInspectable_c2943556, _IIdentityProviderRef_1989e7fb, _ITaggableV2_4e6798f8)
1302
1338
  class CfnIdentityProvider(
1303
1339
  _CfnResource_9df397a6,
1304
1340
  metaclass=jsii.JSIIMeta,
@@ -1345,7 +1381,8 @@ class CfnIdentityProvider(
1345
1381
  portal_arn: typing.Optional[builtins.str] = None,
1346
1382
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
1347
1383
  ) -> None:
1348
- '''
1384
+ '''Create a new ``AWS::WorkSpacesWeb::IdentityProvider``.
1385
+
1349
1386
  :param scope: Scope in which this resource is defined.
1350
1387
  :param id: Construct identifier for this resource (unique in its scope).
1351
1388
  :param identity_provider_details: The identity provider details. The following list describes the provider detail keys for each identity provider type. - For Google and Login with Amazon: - ``client_id`` - ``client_secret`` - ``authorize_scopes`` - For Facebook: - ``client_id`` - ``client_secret`` - ``authorize_scopes`` - ``api_version`` - For Sign in with Apple: - ``client_id`` - ``team_id`` - ``key_id`` - ``private_key`` - ``authorize_scopes`` - For OIDC providers: - ``client_id`` - ``client_secret`` - ``attributes_request_method`` - ``oidc_issuer`` - ``authorize_scopes`` - ``authorize_url`` *if not available from discovery URL specified by oidc_issuer key* - ``token_url`` *if not available from discovery URL specified by oidc_issuer key* - ``attributes_url`` *if not available from discovery URL specified by oidc_issuer key* - ``jwks_uri`` *if not available from discovery URL specified by oidc_issuer key* - For SAML providers: - ``MetadataFile`` OR ``MetadataURL`` - ``IDPSignout`` (boolean) *optional* - ``IDPInit`` (boolean) *optional* - ``RequestSigningAlgorithm`` (string) *optional* - Only accepts ``rsa-sha256`` - ``EncryptedResponses`` (boolean) *optional*
@@ -1418,6 +1455,12 @@ class CfnIdentityProvider(
1418
1455
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
1419
1456
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
1420
1457
 
1458
+ @builtins.property
1459
+ @jsii.member(jsii_name="identityProviderRef")
1460
+ def identity_provider_ref(self) -> _IdentityProviderReference_fb66eb46:
1461
+ '''A reference to a IdentityProvider resource.'''
1462
+ return typing.cast(_IdentityProviderReference_fb66eb46, jsii.get(self, "identityProviderRef"))
1463
+
1421
1464
  @builtins.property
1422
1465
  @jsii.member(jsii_name="identityProviderDetails")
1423
1466
  def identity_provider_details(
@@ -1654,7 +1697,7 @@ class CfnIdentityProviderProps:
1654
1697
  )
1655
1698
 
1656
1699
 
1657
- @jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
1700
+ @jsii.implements(_IInspectable_c2943556, _IIpAccessSettingsRef_5ce903cc, _ITaggableV2_4e6798f8)
1658
1701
  class CfnIpAccessSettings(
1659
1702
  _CfnResource_9df397a6,
1660
1703
  metaclass=jsii.JSIIMeta,
@@ -1708,7 +1751,8 @@ class CfnIpAccessSettings(
1708
1751
  display_name: typing.Optional[builtins.str] = None,
1709
1752
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
1710
1753
  ) -> None:
1711
- '''
1754
+ '''Create a new ``AWS::WorkSpacesWeb::IpAccessSettings``.
1755
+
1712
1756
  :param scope: Scope in which this resource is defined.
1713
1757
  :param id: Construct identifier for this resource (unique in its scope).
1714
1758
  :param ip_rules: The IP rules of the IP access settings.
@@ -1801,6 +1845,12 @@ class CfnIpAccessSettings(
1801
1845
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
1802
1846
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
1803
1847
 
1848
+ @builtins.property
1849
+ @jsii.member(jsii_name="ipAccessSettingsRef")
1850
+ def ip_access_settings_ref(self) -> _IpAccessSettingsReference_456f1045:
1851
+ '''A reference to a IpAccessSettings resource.'''
1852
+ return typing.cast(_IpAccessSettingsReference_456f1045, jsii.get(self, "ipAccessSettingsRef"))
1853
+
1804
1854
  @builtins.property
1805
1855
  @jsii.member(jsii_name="ipRules")
1806
1856
  def ip_rules(
@@ -2124,7 +2174,7 @@ class CfnIpAccessSettingsProps:
2124
2174
  )
2125
2175
 
2126
2176
 
2127
- @jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
2177
+ @jsii.implements(_IInspectable_c2943556, _INetworkSettingsRef_9fcb0139, _ITaggableV2_4e6798f8)
2128
2178
  class CfnNetworkSettings(
2129
2179
  _CfnResource_9df397a6,
2130
2180
  metaclass=jsii.JSIIMeta,
@@ -2171,7 +2221,8 @@ class CfnNetworkSettings(
2171
2221
  vpc_id: builtins.str,
2172
2222
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
2173
2223
  ) -> None:
2174
- '''
2224
+ '''Create a new ``AWS::WorkSpacesWeb::NetworkSettings``.
2225
+
2175
2226
  :param scope: Scope in which this resource is defined.
2176
2227
  :param id: Construct identifier for this resource (unique in its scope).
2177
2228
  :param security_group_ids: One or more security groups used to control access from streaming instances to your VPC. *Pattern* : ``^[\\w+\\-]+$``
@@ -2251,6 +2302,12 @@ class CfnNetworkSettings(
2251
2302
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
2252
2303
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
2253
2304
 
2305
+ @builtins.property
2306
+ @jsii.member(jsii_name="networkSettingsRef")
2307
+ def network_settings_ref(self) -> _NetworkSettingsReference_ed72cf7d:
2308
+ '''A reference to a NetworkSettings resource.'''
2309
+ return typing.cast(_NetworkSettingsReference_ed72cf7d, jsii.get(self, "networkSettingsRef"))
2310
+
2254
2311
  @builtins.property
2255
2312
  @jsii.member(jsii_name="securityGroupIds")
2256
2313
  def security_group_ids(self) -> typing.List[builtins.str]:
@@ -2426,7 +2483,7 @@ class CfnNetworkSettingsProps:
2426
2483
  )
2427
2484
 
2428
2485
 
2429
- @jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
2486
+ @jsii.implements(_IInspectable_c2943556, _IPortalRef_cb17b713, _ITaggableV2_4e6798f8)
2430
2487
  class CfnPortal(
2431
2488
  _CfnResource_9df397a6,
2432
2489
  metaclass=jsii.JSIIMeta,
@@ -2461,6 +2518,7 @@ class CfnPortal(
2461
2518
  ip_access_settings_arn="ipAccessSettingsArn",
2462
2519
  max_concurrent_sessions=123,
2463
2520
  network_settings_arn="networkSettingsArn",
2521
+ session_logger_arn="sessionLoggerArn",
2464
2522
  tags=[CfnTag(
2465
2523
  key="key",
2466
2524
  value="value"
@@ -2486,12 +2544,14 @@ class CfnPortal(
2486
2544
  ip_access_settings_arn: typing.Optional[builtins.str] = None,
2487
2545
  max_concurrent_sessions: typing.Optional[jsii.Number] = None,
2488
2546
  network_settings_arn: typing.Optional[builtins.str] = None,
2547
+ session_logger_arn: typing.Optional[builtins.str] = None,
2489
2548
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
2490
2549
  trust_store_arn: typing.Optional[builtins.str] = None,
2491
2550
  user_access_logging_settings_arn: typing.Optional[builtins.str] = None,
2492
2551
  user_settings_arn: typing.Optional[builtins.str] = None,
2493
2552
  ) -> None:
2494
- '''
2553
+ '''Create a new ``AWS::WorkSpacesWeb::Portal``.
2554
+
2495
2555
  :param scope: Scope in which this resource is defined.
2496
2556
  :param id: Construct identifier for this resource (unique in its scope).
2497
2557
  :param additional_encryption_context: The additional encryption context of the portal.
@@ -2504,6 +2564,7 @@ class CfnPortal(
2504
2564
  :param ip_access_settings_arn: The ARN of the IP access settings that is associated with the web portal.
2505
2565
  :param max_concurrent_sessions: The maximum number of concurrent sessions for the portal.
2506
2566
  :param network_settings_arn: The ARN of the network settings that is associated with the web portal.
2567
+ :param session_logger_arn: The ARN of the session logger that is assocaited with the portal.
2507
2568
  :param tags: The tags to add to the web portal. A tag is a key-value pair.
2508
2569
  :param trust_store_arn: The ARN of the trust store that is associated with the web portal.
2509
2570
  :param user_access_logging_settings_arn: The ARN of the user access logging settings that is associated with the web portal.
@@ -2524,6 +2585,7 @@ class CfnPortal(
2524
2585
  ip_access_settings_arn=ip_access_settings_arn,
2525
2586
  max_concurrent_sessions=max_concurrent_sessions,
2526
2587
  network_settings_arn=network_settings_arn,
2588
+ session_logger_arn=session_logger_arn,
2527
2589
  tags=tags,
2528
2590
  trust_store_arn=trust_store_arn,
2529
2591
  user_access_logging_settings_arn=user_access_logging_settings_arn,
@@ -2645,6 +2707,12 @@ class CfnPortal(
2645
2707
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
2646
2708
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
2647
2709
 
2710
+ @builtins.property
2711
+ @jsii.member(jsii_name="portalRef")
2712
+ def portal_ref(self) -> _PortalReference_7c6ae828:
2713
+ '''A reference to a Portal resource.'''
2714
+ return typing.cast(_PortalReference_7c6ae828, jsii.get(self, "portalRef"))
2715
+
2648
2716
  @builtins.property
2649
2717
  @jsii.member(jsii_name="additionalEncryptionContext")
2650
2718
  def additional_encryption_context(
@@ -2786,6 +2854,19 @@ class CfnPortal(
2786
2854
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2787
2855
  jsii.set(self, "networkSettingsArn", value) # pyright: ignore[reportArgumentType]
2788
2856
 
2857
+ @builtins.property
2858
+ @jsii.member(jsii_name="sessionLoggerArn")
2859
+ def session_logger_arn(self) -> typing.Optional[builtins.str]:
2860
+ '''The ARN of the session logger that is assocaited with the portal.'''
2861
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "sessionLoggerArn"))
2862
+
2863
+ @session_logger_arn.setter
2864
+ def session_logger_arn(self, value: typing.Optional[builtins.str]) -> None:
2865
+ if __debug__:
2866
+ type_hints = typing.get_type_hints(_typecheckingstub__799f778b7f3d528d4330acec14db7800e1877f11411b658cf7b11ad8463a43b6)
2867
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2868
+ jsii.set(self, "sessionLoggerArn", value) # pyright: ignore[reportArgumentType]
2869
+
2789
2870
  @builtins.property
2790
2871
  @jsii.member(jsii_name="tags")
2791
2872
  def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
@@ -2856,6 +2937,7 @@ class CfnPortal(
2856
2937
  "ip_access_settings_arn": "ipAccessSettingsArn",
2857
2938
  "max_concurrent_sessions": "maxConcurrentSessions",
2858
2939
  "network_settings_arn": "networkSettingsArn",
2940
+ "session_logger_arn": "sessionLoggerArn",
2859
2941
  "tags": "tags",
2860
2942
  "trust_store_arn": "trustStoreArn",
2861
2943
  "user_access_logging_settings_arn": "userAccessLoggingSettingsArn",
@@ -2876,6 +2958,7 @@ class CfnPortalProps:
2876
2958
  ip_access_settings_arn: typing.Optional[builtins.str] = None,
2877
2959
  max_concurrent_sessions: typing.Optional[jsii.Number] = None,
2878
2960
  network_settings_arn: typing.Optional[builtins.str] = None,
2961
+ session_logger_arn: typing.Optional[builtins.str] = None,
2879
2962
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
2880
2963
  trust_store_arn: typing.Optional[builtins.str] = None,
2881
2964
  user_access_logging_settings_arn: typing.Optional[builtins.str] = None,
@@ -2893,6 +2976,7 @@ class CfnPortalProps:
2893
2976
  :param ip_access_settings_arn: The ARN of the IP access settings that is associated with the web portal.
2894
2977
  :param max_concurrent_sessions: The maximum number of concurrent sessions for the portal.
2895
2978
  :param network_settings_arn: The ARN of the network settings that is associated with the web portal.
2979
+ :param session_logger_arn: The ARN of the session logger that is assocaited with the portal.
2896
2980
  :param tags: The tags to add to the web portal. A tag is a key-value pair.
2897
2981
  :param trust_store_arn: The ARN of the trust store that is associated with the web portal.
2898
2982
  :param user_access_logging_settings_arn: The ARN of the user access logging settings that is associated with the web portal.
@@ -2920,6 +3004,7 @@ class CfnPortalProps:
2920
3004
  ip_access_settings_arn="ipAccessSettingsArn",
2921
3005
  max_concurrent_sessions=123,
2922
3006
  network_settings_arn="networkSettingsArn",
3007
+ session_logger_arn="sessionLoggerArn",
2923
3008
  tags=[CfnTag(
2924
3009
  key="key",
2925
3010
  value="value"
@@ -2941,6 +3026,7 @@ class CfnPortalProps:
2941
3026
  check_type(argname="argument ip_access_settings_arn", value=ip_access_settings_arn, expected_type=type_hints["ip_access_settings_arn"])
2942
3027
  check_type(argname="argument max_concurrent_sessions", value=max_concurrent_sessions, expected_type=type_hints["max_concurrent_sessions"])
2943
3028
  check_type(argname="argument network_settings_arn", value=network_settings_arn, expected_type=type_hints["network_settings_arn"])
3029
+ check_type(argname="argument session_logger_arn", value=session_logger_arn, expected_type=type_hints["session_logger_arn"])
2944
3030
  check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
2945
3031
  check_type(argname="argument trust_store_arn", value=trust_store_arn, expected_type=type_hints["trust_store_arn"])
2946
3032
  check_type(argname="argument user_access_logging_settings_arn", value=user_access_logging_settings_arn, expected_type=type_hints["user_access_logging_settings_arn"])
@@ -2966,6 +3052,8 @@ class CfnPortalProps:
2966
3052
  self._values["max_concurrent_sessions"] = max_concurrent_sessions
2967
3053
  if network_settings_arn is not None:
2968
3054
  self._values["network_settings_arn"] = network_settings_arn
3055
+ if session_logger_arn is not None:
3056
+ self._values["session_logger_arn"] = session_logger_arn
2969
3057
  if tags is not None:
2970
3058
  self._values["tags"] = tags
2971
3059
  if trust_store_arn is not None:
@@ -3078,6 +3166,15 @@ class CfnPortalProps:
3078
3166
  result = self._values.get("network_settings_arn")
3079
3167
  return typing.cast(typing.Optional[builtins.str], result)
3080
3168
 
3169
+ @builtins.property
3170
+ def session_logger_arn(self) -> typing.Optional[builtins.str]:
3171
+ '''The ARN of the session logger that is assocaited with the portal.
3172
+
3173
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-portal.html#cfn-workspacesweb-portal-sessionloggerarn
3174
+ '''
3175
+ result = self._values.get("session_logger_arn")
3176
+ return typing.cast(typing.Optional[builtins.str], result)
3177
+
3081
3178
  @builtins.property
3082
3179
  def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
3083
3180
  '''The tags to add to the web portal.
@@ -3128,18 +3225,16 @@ class CfnPortalProps:
3128
3225
  )
3129
3226
 
3130
3227
 
3131
- @jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
3132
- class CfnTrustStore(
3228
+ @jsii.implements(_IInspectable_c2943556, _ISessionLoggerRef_0b36bc89, _ITaggableV2_4e6798f8)
3229
+ class CfnSessionLogger(
3133
3230
  _CfnResource_9df397a6,
3134
3231
  metaclass=jsii.JSIIMeta,
3135
- jsii_type="aws-cdk-lib.aws_workspacesweb.CfnTrustStore",
3232
+ jsii_type="aws-cdk-lib.aws_workspacesweb.CfnSessionLogger",
3136
3233
  ):
3137
- '''This resource specifies a trust store that can be associated with a web portal.
3138
-
3139
- A trust store contains certificate authority (CA) certificates. Once associated with a web portal, the browser in a streaming session will recognize certificates that have been issued using any of the CAs in the trust store. If your organization has internal websites that use certificates issued by private CAs, you should add the private CA certificate to the trust store.
3234
+ '''The session logger resource.
3140
3235
 
3141
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-truststore.html
3142
- :cloudformationResource: AWS::WorkSpacesWeb::TrustStore
3236
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-sessionlogger.html
3237
+ :cloudformationResource: AWS::WorkSpacesWeb::SessionLogger
3143
3238
  :exampleMetadata: fixture=_generated
3144
3239
 
3145
3240
  Example::
@@ -3148,10 +3243,31 @@ class CfnTrustStore(
3148
3243
  # The values are placeholders you should change.
3149
3244
  from aws_cdk import aws_workspacesweb as workspacesweb
3150
3245
 
3151
- cfn_trust_store = workspacesweb.CfnTrustStore(self, "MyCfnTrustStore",
3152
- certificate_list=["certificateList"],
3246
+ # all: Any
3247
+
3248
+ cfn_session_logger = workspacesweb.CfnSessionLogger(self, "MyCfnSessionLogger",
3249
+ event_filter=workspacesweb.CfnSessionLogger.EventFilterProperty(
3250
+ all=all,
3251
+ include=["include"]
3252
+ ),
3253
+ log_configuration=workspacesweb.CfnSessionLogger.LogConfigurationProperty(
3254
+ s3=workspacesweb.CfnSessionLogger.S3LogConfigurationProperty(
3255
+ bucket="bucket",
3256
+ folder_structure="folderStructure",
3257
+ log_file_format="logFileFormat",
3258
+
3259
+ # the properties below are optional
3260
+ bucket_owner="bucketOwner",
3261
+ key_prefix="keyPrefix"
3262
+ )
3263
+ ),
3153
3264
 
3154
3265
  # the properties below are optional
3266
+ additional_encryption_context={
3267
+ "additional_encryption_context_key": "additionalEncryptionContext"
3268
+ },
3269
+ customer_managed_key="customerManagedKey",
3270
+ display_name="displayName",
3155
3271
  tags=[CfnTag(
3156
3272
  key="key",
3157
3273
  value="value"
@@ -3164,20 +3280,36 @@ class CfnTrustStore(
3164
3280
  scope: _constructs_77d1e7e8.Construct,
3165
3281
  id: builtins.str,
3166
3282
  *,
3167
- certificate_list: typing.Sequence[builtins.str],
3283
+ event_filter: typing.Union[_IResolvable_da3f097b, typing.Union["CfnSessionLogger.EventFilterProperty", typing.Dict[builtins.str, typing.Any]]],
3284
+ log_configuration: typing.Union[_IResolvable_da3f097b, typing.Union["CfnSessionLogger.LogConfigurationProperty", typing.Dict[builtins.str, typing.Any]]],
3285
+ additional_encryption_context: typing.Optional[typing.Union[typing.Mapping[builtins.str, builtins.str], _IResolvable_da3f097b]] = None,
3286
+ customer_managed_key: typing.Optional[builtins.str] = None,
3287
+ display_name: typing.Optional[builtins.str] = None,
3168
3288
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
3169
3289
  ) -> None:
3170
- '''
3290
+ '''Create a new ``AWS::WorkSpacesWeb::SessionLogger``.
3291
+
3171
3292
  :param scope: Scope in which this resource is defined.
3172
3293
  :param id: Construct identifier for this resource (unique in its scope).
3173
- :param certificate_list: A list of CA certificates to be added to the trust store.
3174
- :param tags: The tags to add to the trust store. A tag is a key-value pair.
3294
+ :param event_filter: The filter that specifies which events to monitor.
3295
+ :param log_configuration: The configuration that specifies where logs are fowarded.
3296
+ :param additional_encryption_context: The additional encryption context of the session logger.
3297
+ :param customer_managed_key: The custom managed key of the session logger.
3298
+ :param display_name: The human-readable display name.
3299
+ :param tags:
3175
3300
  '''
3176
3301
  if __debug__:
3177
- type_hints = typing.get_type_hints(_typecheckingstub__cc9c8ead0938c5ad416a02ff1511be2c3cbf2519166e43c80e65e581fac2cab7)
3302
+ type_hints = typing.get_type_hints(_typecheckingstub__5ecda6b775e0aad6e840315c150daa1cae407a534f747e34d2336449d0085a29)
3178
3303
  check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
3179
3304
  check_type(argname="argument id", value=id, expected_type=type_hints["id"])
3180
- props = CfnTrustStoreProps(certificate_list=certificate_list, tags=tags)
3305
+ props = CfnSessionLoggerProps(
3306
+ event_filter=event_filter,
3307
+ log_configuration=log_configuration,
3308
+ additional_encryption_context=additional_encryption_context,
3309
+ customer_managed_key=customer_managed_key,
3310
+ display_name=display_name,
3311
+ tags=tags,
3312
+ )
3181
3313
 
3182
3314
  jsii.create(self.__class__, self, [scope, id, props])
3183
3315
 
@@ -3188,7 +3320,7 @@ class CfnTrustStore(
3188
3320
  :param inspector: tree inspector to collect and process attributes.
3189
3321
  '''
3190
3322
  if __debug__:
3191
- type_hints = typing.get_type_hints(_typecheckingstub__5fb3d54892745fdc13234075ce86bd3f8d4acfe9ec88a393309766bcf833012b)
3323
+ type_hints = typing.get_type_hints(_typecheckingstub__32c2901f06899b3e8b2aed11d0479e80af4ae3bd2497852311c46da6edf80e41)
3192
3324
  check_type(argname="argument inspector", value=inspector, expected_type=type_hints["inspector"])
3193
3325
  return typing.cast(None, jsii.invoke(self, "inspect", [inspector]))
3194
3326
 
@@ -3201,7 +3333,7 @@ class CfnTrustStore(
3201
3333
  :param props: -
3202
3334
  '''
3203
3335
  if __debug__:
3204
- type_hints = typing.get_type_hints(_typecheckingstub__836cb2ee4e300cb4cb603faf540c0c6dad36379e65dad6d178875cdc39e56603)
3336
+ type_hints = typing.get_type_hints(_typecheckingstub__02821e951e1a7ebffab0cee338cb22e018833b70a4b8b4db79eadb9491b74956)
3205
3337
  check_type(argname="argument props", value=props, expected_type=type_hints["props"])
3206
3338
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "renderProperties", [props]))
3207
3339
 
@@ -3214,20 +3346,29 @@ class CfnTrustStore(
3214
3346
  @builtins.property
3215
3347
  @jsii.member(jsii_name="attrAssociatedPortalArns")
3216
3348
  def attr_associated_portal_arns(self) -> typing.List[builtins.str]:
3217
- '''A list of web portal ARNs that this trust store is associated with.
3349
+ '''The associated portal ARN.
3218
3350
 
3219
3351
  :cloudformationAttribute: AssociatedPortalArns
3220
3352
  '''
3221
3353
  return typing.cast(typing.List[builtins.str], jsii.get(self, "attrAssociatedPortalArns"))
3222
3354
 
3223
3355
  @builtins.property
3224
- @jsii.member(jsii_name="attrTrustStoreArn")
3225
- def attr_trust_store_arn(self) -> builtins.str:
3226
- '''The ARN of the trust store.
3356
+ @jsii.member(jsii_name="attrCreationDate")
3357
+ def attr_creation_date(self) -> builtins.str:
3358
+ '''The date the session logger resource was created.
3227
3359
 
3228
- :cloudformationAttribute: TrustStoreArn
3360
+ :cloudformationAttribute: CreationDate
3229
3361
  '''
3230
- return typing.cast(builtins.str, jsii.get(self, "attrTrustStoreArn"))
3362
+ return typing.cast(builtins.str, jsii.get(self, "attrCreationDate"))
3363
+
3364
+ @builtins.property
3365
+ @jsii.member(jsii_name="attrSessionLoggerArn")
3366
+ def attr_session_logger_arn(self) -> builtins.str:
3367
+ '''The ARN of the session logger resource.
3368
+
3369
+ :cloudformationAttribute: SessionLoggerArn
3370
+ '''
3371
+ return typing.cast(builtins.str, jsii.get(self, "attrSessionLoggerArn"))
3231
3372
 
3232
3373
  @builtins.property
3233
3374
  @jsii.member(jsii_name="cdkTagManager")
@@ -3241,142 +3382,791 @@ class CfnTrustStore(
3241
3382
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
3242
3383
 
3243
3384
  @builtins.property
3244
- @jsii.member(jsii_name="certificateList")
3245
- def certificate_list(self) -> typing.List[builtins.str]:
3246
- '''A list of CA certificates to be added to the trust store.'''
3247
- return typing.cast(typing.List[builtins.str], jsii.get(self, "certificateList"))
3385
+ @jsii.member(jsii_name="sessionLoggerRef")
3386
+ def session_logger_ref(self) -> _SessionLoggerReference_21b78d4c:
3387
+ '''A reference to a SessionLogger resource.'''
3388
+ return typing.cast(_SessionLoggerReference_21b78d4c, jsii.get(self, "sessionLoggerRef"))
3248
3389
 
3249
- @certificate_list.setter
3250
- def certificate_list(self, value: typing.List[builtins.str]) -> None:
3390
+ @builtins.property
3391
+ @jsii.member(jsii_name="eventFilter")
3392
+ def event_filter(
3393
+ self,
3394
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnSessionLogger.EventFilterProperty"]:
3395
+ '''The filter that specifies which events to monitor.'''
3396
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnSessionLogger.EventFilterProperty"], jsii.get(self, "eventFilter"))
3397
+
3398
+ @event_filter.setter
3399
+ def event_filter(
3400
+ self,
3401
+ value: typing.Union[_IResolvable_da3f097b, "CfnSessionLogger.EventFilterProperty"],
3402
+ ) -> None:
3251
3403
  if __debug__:
3252
- type_hints = typing.get_type_hints(_typecheckingstub__d6c348f8d89e15637f5e7f299791ad808bd6fadfe67032f77e095b03cb3b19f1)
3404
+ type_hints = typing.get_type_hints(_typecheckingstub__0f797a952eee0e5ef3c6c4e74102d30901b3a261e47539149a187359b0273935)
3253
3405
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
3254
- jsii.set(self, "certificateList", value) # pyright: ignore[reportArgumentType]
3406
+ jsii.set(self, "eventFilter", value) # pyright: ignore[reportArgumentType]
3255
3407
 
3256
3408
  @builtins.property
3257
- @jsii.member(jsii_name="tags")
3258
- def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
3259
- '''The tags to add to the trust store.'''
3260
- return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], jsii.get(self, "tags"))
3409
+ @jsii.member(jsii_name="logConfiguration")
3410
+ def log_configuration(
3411
+ self,
3412
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnSessionLogger.LogConfigurationProperty"]:
3413
+ '''The configuration that specifies where logs are fowarded.'''
3414
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnSessionLogger.LogConfigurationProperty"], jsii.get(self, "logConfiguration"))
3261
3415
 
3262
- @tags.setter
3263
- def tags(self, value: typing.Optional[typing.List[_CfnTag_f6864754]]) -> None:
3416
+ @log_configuration.setter
3417
+ def log_configuration(
3418
+ self,
3419
+ value: typing.Union[_IResolvable_da3f097b, "CfnSessionLogger.LogConfigurationProperty"],
3420
+ ) -> None:
3264
3421
  if __debug__:
3265
- type_hints = typing.get_type_hints(_typecheckingstub__413cb334bb35253edc995584173eeea4b9dcaddccf8f42db23cff1eb1c57eba2)
3422
+ type_hints = typing.get_type_hints(_typecheckingstub__e28c4c53e5ee42bd3a2b3077ae66818ce670fc07686e11ffa703be889c6aa901)
3266
3423
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
3267
- jsii.set(self, "tags", value) # pyright: ignore[reportArgumentType]
3424
+ jsii.set(self, "logConfiguration", value) # pyright: ignore[reportArgumentType]
3268
3425
 
3426
+ @builtins.property
3427
+ @jsii.member(jsii_name="additionalEncryptionContext")
3428
+ def additional_encryption_context(
3429
+ self,
3430
+ ) -> typing.Optional[typing.Union[typing.Mapping[builtins.str, builtins.str], _IResolvable_da3f097b]]:
3431
+ '''The additional encryption context of the session logger.'''
3432
+ return typing.cast(typing.Optional[typing.Union[typing.Mapping[builtins.str, builtins.str], _IResolvable_da3f097b]], jsii.get(self, "additionalEncryptionContext"))
3269
3433
 
3270
- @jsii.data_type(
3271
- jsii_type="aws-cdk-lib.aws_workspacesweb.CfnTrustStoreProps",
3272
- jsii_struct_bases=[],
3273
- name_mapping={"certificate_list": "certificateList", "tags": "tags"},
3274
- )
3275
- class CfnTrustStoreProps:
3276
- def __init__(
3434
+ @additional_encryption_context.setter
3435
+ def additional_encryption_context(
3277
3436
  self,
3278
- *,
3279
- certificate_list: typing.Sequence[builtins.str],
3280
- tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
3437
+ value: typing.Optional[typing.Union[typing.Mapping[builtins.str, builtins.str], _IResolvable_da3f097b]],
3281
3438
  ) -> None:
3282
- '''Properties for defining a ``CfnTrustStore``.
3283
-
3284
- :param certificate_list: A list of CA certificates to be added to the trust store.
3285
- :param tags: The tags to add to the trust store. A tag is a key-value pair.
3286
-
3287
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-truststore.html
3288
- :exampleMetadata: fixture=_generated
3439
+ if __debug__:
3440
+ type_hints = typing.get_type_hints(_typecheckingstub__537d3e1f1f27dd421a4b648f2d1cfd2cafc17c6a94f1210fd5389a3d16c72bf0)
3441
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
3442
+ jsii.set(self, "additionalEncryptionContext", value) # pyright: ignore[reportArgumentType]
3289
3443
 
3290
- Example::
3444
+ @builtins.property
3445
+ @jsii.member(jsii_name="customerManagedKey")
3446
+ def customer_managed_key(self) -> typing.Optional[builtins.str]:
3447
+ '''The custom managed key of the session logger.'''
3448
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "customerManagedKey"))
3291
3449
 
3292
- # The code below shows an example of how to instantiate this type.
3293
- # The values are placeholders you should change.
3294
- from aws_cdk import aws_workspacesweb as workspacesweb
3295
-
3296
- cfn_trust_store_props = workspacesweb.CfnTrustStoreProps(
3297
- certificate_list=["certificateList"],
3298
-
3299
- # the properties below are optional
3300
- tags=[CfnTag(
3301
- key="key",
3302
- value="value"
3303
- )]
3304
- )
3305
- '''
3450
+ @customer_managed_key.setter
3451
+ def customer_managed_key(self, value: typing.Optional[builtins.str]) -> None:
3306
3452
  if __debug__:
3307
- type_hints = typing.get_type_hints(_typecheckingstub__7f61f2140f6607d292f5333bbaa4cf73f35e92dd28f8d49fc35bdca25eb8fa18)
3308
- check_type(argname="argument certificate_list", value=certificate_list, expected_type=type_hints["certificate_list"])
3309
- check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
3310
- self._values: typing.Dict[builtins.str, typing.Any] = {
3311
- "certificate_list": certificate_list,
3312
- }
3313
- if tags is not None:
3314
- self._values["tags"] = tags
3453
+ type_hints = typing.get_type_hints(_typecheckingstub__6669ab733027174f86b8134ac28a12b3e8ce058fc6bb771f3ca2e6a1aa4a1ba0)
3454
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
3455
+ jsii.set(self, "customerManagedKey", value) # pyright: ignore[reportArgumentType]
3315
3456
 
3316
3457
  @builtins.property
3317
- def certificate_list(self) -> typing.List[builtins.str]:
3318
- '''A list of CA certificates to be added to the trust store.
3458
+ @jsii.member(jsii_name="displayName")
3459
+ def display_name(self) -> typing.Optional[builtins.str]:
3460
+ '''The human-readable display name.'''
3461
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "displayName"))
3319
3462
 
3320
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-truststore.html#cfn-workspacesweb-truststore-certificatelist
3321
- '''
3322
- result = self._values.get("certificate_list")
3323
- assert result is not None, "Required property 'certificate_list' is missing"
3324
- return typing.cast(typing.List[builtins.str], result)
3463
+ @display_name.setter
3464
+ def display_name(self, value: typing.Optional[builtins.str]) -> None:
3465
+ if __debug__:
3466
+ type_hints = typing.get_type_hints(_typecheckingstub__ae9fd345c1425b64f964d35fc511958d77a0f8f2e8685f0e6c4fca88750edc68)
3467
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
3468
+ jsii.set(self, "displayName", value) # pyright: ignore[reportArgumentType]
3325
3469
 
3326
3470
  @builtins.property
3471
+ @jsii.member(jsii_name="tags")
3327
3472
  def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
3328
- '''The tags to add to the trust store.
3473
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], jsii.get(self, "tags"))
3329
3474
 
3330
- A tag is a key-value pair.
3475
+ @tags.setter
3476
+ def tags(self, value: typing.Optional[typing.List[_CfnTag_f6864754]]) -> None:
3477
+ if __debug__:
3478
+ type_hints = typing.get_type_hints(_typecheckingstub__85de43da52ead721682621ad8e0ec6970bf253d4dc82e6a8b363fb44db534497)
3479
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
3480
+ jsii.set(self, "tags", value) # pyright: ignore[reportArgumentType]
3331
3481
 
3332
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-truststore.html#cfn-workspacesweb-truststore-tags
3333
- '''
3334
- result = self._values.get("tags")
3335
- return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], result)
3482
+ @jsii.data_type(
3483
+ jsii_type="aws-cdk-lib.aws_workspacesweb.CfnSessionLogger.EventFilterProperty",
3484
+ jsii_struct_bases=[],
3485
+ name_mapping={"all": "all", "include": "include"},
3486
+ )
3487
+ class EventFilterProperty:
3488
+ def __init__(
3489
+ self,
3490
+ *,
3491
+ all: typing.Any = None,
3492
+ include: typing.Optional[typing.Sequence[builtins.str]] = None,
3493
+ ) -> None:
3494
+ '''The filter that specifies the events to monitor.
3336
3495
 
3337
- def __eq__(self, rhs: typing.Any) -> builtins.bool:
3338
- return isinstance(rhs, self.__class__) and rhs._values == self._values
3496
+ :param all: The filter that monitors all of the available events, including any new events emitted in the future.
3497
+ :param include: The filter that monitors only the listed set of events. New events are not auto-monitored.
3339
3498
 
3340
- def __ne__(self, rhs: typing.Any) -> builtins.bool:
3341
- return not (rhs == self)
3499
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesweb-sessionlogger-eventfilter.html
3500
+ :exampleMetadata: fixture=_generated
3342
3501
 
3343
- def __repr__(self) -> str:
3344
- return "CfnTrustStoreProps(%s)" % ", ".join(
3345
- k + "=" + repr(v) for k, v in self._values.items()
3346
- )
3502
+ Example::
3347
3503
 
3504
+ # The code below shows an example of how to instantiate this type.
3505
+ # The values are placeholders you should change.
3506
+ from aws_cdk import aws_workspacesweb as workspacesweb
3507
+
3508
+ # all: Any
3509
+
3510
+ event_filter_property = workspacesweb.CfnSessionLogger.EventFilterProperty(
3511
+ all=all,
3512
+ include=["include"]
3513
+ )
3514
+ '''
3515
+ if __debug__:
3516
+ type_hints = typing.get_type_hints(_typecheckingstub__2f1530e33fd800f934515849e7a6b073e430e992de682bef2cf8a8e5c89aa2d7)
3517
+ check_type(argname="argument all", value=all, expected_type=type_hints["all"])
3518
+ check_type(argname="argument include", value=include, expected_type=type_hints["include"])
3519
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
3520
+ if all is not None:
3521
+ self._values["all"] = all
3522
+ if include is not None:
3523
+ self._values["include"] = include
3348
3524
 
3349
- @jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
3350
- class CfnUserAccessLoggingSettings(
3351
- _CfnResource_9df397a6,
3352
- metaclass=jsii.JSIIMeta,
3353
- jsii_type="aws-cdk-lib.aws_workspacesweb.CfnUserAccessLoggingSettings",
3354
- ):
3355
- '''This resource specifies user access logging settings that can be associated with a web portal.
3525
+ @builtins.property
3526
+ def all(self) -> typing.Any:
3527
+ '''The filter that monitors all of the available events, including any new events emitted in the future.
3356
3528
 
3357
- In order to receive logs from WorkSpaces Secure Browser, you must have an Amazon Kinesis Data Stream that starts with "amazon-workspaces-web-*". Your Amazon Kinesis data stream must either have server-side encryption turned off, or must use AWS managed keys for server-side encryption.
3529
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesweb-sessionlogger-eventfilter.html#cfn-workspacesweb-sessionlogger-eventfilter-all
3530
+ '''
3531
+ result = self._values.get("all")
3532
+ return typing.cast(typing.Any, result)
3358
3533
 
3359
- For more information about setting server-side encryption in Amazon Kinesis , see `How Do I Get Started with Server-Side Encryption? <https://docs.aws.amazon.com/streams/latest/dev/getting-started-with-sse.html>`_ .
3534
+ @builtins.property
3535
+ def include(self) -> typing.Optional[typing.List[builtins.str]]:
3536
+ '''The filter that monitors only the listed set of events.
3360
3537
 
3361
- For more information about setting up user access logging, see `Set up user access logging <https://docs.aws.amazon.com/workspaces-web/latest/adminguide/user-logging.html>`_ .
3538
+ New events are not auto-monitored.
3362
3539
 
3363
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-useraccessloggingsettings.html
3364
- :cloudformationResource: AWS::WorkSpacesWeb::UserAccessLoggingSettings
3365
- :exampleMetadata: fixture=_generated
3540
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesweb-sessionlogger-eventfilter.html#cfn-workspacesweb-sessionlogger-eventfilter-include
3541
+ '''
3542
+ result = self._values.get("include")
3543
+ return typing.cast(typing.Optional[typing.List[builtins.str]], result)
3366
3544
 
3367
- Example::
3545
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
3546
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
3368
3547
 
3369
- # The code below shows an example of how to instantiate this type.
3370
- # The values are placeholders you should change.
3371
- from aws_cdk import aws_workspacesweb as workspacesweb
3372
-
3373
- cfn_user_access_logging_settings = workspacesweb.CfnUserAccessLoggingSettings(self, "MyCfnUserAccessLoggingSettings",
3374
- kinesis_stream_arn="kinesisStreamArn",
3375
-
3376
- # the properties below are optional
3377
- tags=[CfnTag(
3378
- key="key",
3379
- value="value"
3548
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
3549
+ return not (rhs == self)
3550
+
3551
+ def __repr__(self) -> str:
3552
+ return "EventFilterProperty(%s)" % ", ".join(
3553
+ k + "=" + repr(v) for k, v in self._values.items()
3554
+ )
3555
+
3556
+ @jsii.data_type(
3557
+ jsii_type="aws-cdk-lib.aws_workspacesweb.CfnSessionLogger.LogConfigurationProperty",
3558
+ jsii_struct_bases=[],
3559
+ name_mapping={"s3": "s3"},
3560
+ )
3561
+ class LogConfigurationProperty:
3562
+ def __init__(
3563
+ self,
3564
+ *,
3565
+ s3: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnSessionLogger.S3LogConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
3566
+ ) -> None:
3567
+ '''The configuration of the log.
3568
+
3569
+ :param s3: The configuration for delivering the logs to S3.
3570
+
3571
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesweb-sessionlogger-logconfiguration.html
3572
+ :exampleMetadata: fixture=_generated
3573
+
3574
+ Example::
3575
+
3576
+ # The code below shows an example of how to instantiate this type.
3577
+ # The values are placeholders you should change.
3578
+ from aws_cdk import aws_workspacesweb as workspacesweb
3579
+
3580
+ log_configuration_property = workspacesweb.CfnSessionLogger.LogConfigurationProperty(
3581
+ s3=workspacesweb.CfnSessionLogger.S3LogConfigurationProperty(
3582
+ bucket="bucket",
3583
+ folder_structure="folderStructure",
3584
+ log_file_format="logFileFormat",
3585
+
3586
+ # the properties below are optional
3587
+ bucket_owner="bucketOwner",
3588
+ key_prefix="keyPrefix"
3589
+ )
3590
+ )
3591
+ '''
3592
+ if __debug__:
3593
+ type_hints = typing.get_type_hints(_typecheckingstub__5e673953fb604a5eaf695974e9bd912f04871f2cb0d15f4408568306f9d8913e)
3594
+ check_type(argname="argument s3", value=s3, expected_type=type_hints["s3"])
3595
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
3596
+ if s3 is not None:
3597
+ self._values["s3"] = s3
3598
+
3599
+ @builtins.property
3600
+ def s3(
3601
+ self,
3602
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnSessionLogger.S3LogConfigurationProperty"]]:
3603
+ '''The configuration for delivering the logs to S3.
3604
+
3605
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesweb-sessionlogger-logconfiguration.html#cfn-workspacesweb-sessionlogger-logconfiguration-s3
3606
+ '''
3607
+ result = self._values.get("s3")
3608
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnSessionLogger.S3LogConfigurationProperty"]], result)
3609
+
3610
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
3611
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
3612
+
3613
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
3614
+ return not (rhs == self)
3615
+
3616
+ def __repr__(self) -> str:
3617
+ return "LogConfigurationProperty(%s)" % ", ".join(
3618
+ k + "=" + repr(v) for k, v in self._values.items()
3619
+ )
3620
+
3621
+ @jsii.data_type(
3622
+ jsii_type="aws-cdk-lib.aws_workspacesweb.CfnSessionLogger.S3LogConfigurationProperty",
3623
+ jsii_struct_bases=[],
3624
+ name_mapping={
3625
+ "bucket": "bucket",
3626
+ "folder_structure": "folderStructure",
3627
+ "log_file_format": "logFileFormat",
3628
+ "bucket_owner": "bucketOwner",
3629
+ "key_prefix": "keyPrefix",
3630
+ },
3631
+ )
3632
+ class S3LogConfigurationProperty:
3633
+ def __init__(
3634
+ self,
3635
+ *,
3636
+ bucket: builtins.str,
3637
+ folder_structure: builtins.str,
3638
+ log_file_format: builtins.str,
3639
+ bucket_owner: typing.Optional[builtins.str] = None,
3640
+ key_prefix: typing.Optional[builtins.str] = None,
3641
+ ) -> None:
3642
+ '''The S3 log configuration.
3643
+
3644
+ :param bucket: The S3 bucket name where logs are delivered.
3645
+ :param folder_structure: The folder structure that defines the organizational structure for log files in S3.
3646
+ :param log_file_format: The format of the LogFile that is written to S3.
3647
+ :param bucket_owner: The expected bucket owner of the target S3 bucket. The caller must have permissions to write to the target bucket.
3648
+ :param key_prefix: The S3 path prefix that determines where log files are stored.
3649
+
3650
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesweb-sessionlogger-s3logconfiguration.html
3651
+ :exampleMetadata: fixture=_generated
3652
+
3653
+ Example::
3654
+
3655
+ # The code below shows an example of how to instantiate this type.
3656
+ # The values are placeholders you should change.
3657
+ from aws_cdk import aws_workspacesweb as workspacesweb
3658
+
3659
+ s3_log_configuration_property = workspacesweb.CfnSessionLogger.S3LogConfigurationProperty(
3660
+ bucket="bucket",
3661
+ folder_structure="folderStructure",
3662
+ log_file_format="logFileFormat",
3663
+
3664
+ # the properties below are optional
3665
+ bucket_owner="bucketOwner",
3666
+ key_prefix="keyPrefix"
3667
+ )
3668
+ '''
3669
+ if __debug__:
3670
+ type_hints = typing.get_type_hints(_typecheckingstub__2932cde5c903e31aee5df2ddaf173b3b2d8262005b0e7a9387a82480cca35f4f)
3671
+ check_type(argname="argument bucket", value=bucket, expected_type=type_hints["bucket"])
3672
+ check_type(argname="argument folder_structure", value=folder_structure, expected_type=type_hints["folder_structure"])
3673
+ check_type(argname="argument log_file_format", value=log_file_format, expected_type=type_hints["log_file_format"])
3674
+ check_type(argname="argument bucket_owner", value=bucket_owner, expected_type=type_hints["bucket_owner"])
3675
+ check_type(argname="argument key_prefix", value=key_prefix, expected_type=type_hints["key_prefix"])
3676
+ self._values: typing.Dict[builtins.str, typing.Any] = {
3677
+ "bucket": bucket,
3678
+ "folder_structure": folder_structure,
3679
+ "log_file_format": log_file_format,
3680
+ }
3681
+ if bucket_owner is not None:
3682
+ self._values["bucket_owner"] = bucket_owner
3683
+ if key_prefix is not None:
3684
+ self._values["key_prefix"] = key_prefix
3685
+
3686
+ @builtins.property
3687
+ def bucket(self) -> builtins.str:
3688
+ '''The S3 bucket name where logs are delivered.
3689
+
3690
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesweb-sessionlogger-s3logconfiguration.html#cfn-workspacesweb-sessionlogger-s3logconfiguration-bucket
3691
+ '''
3692
+ result = self._values.get("bucket")
3693
+ assert result is not None, "Required property 'bucket' is missing"
3694
+ return typing.cast(builtins.str, result)
3695
+
3696
+ @builtins.property
3697
+ def folder_structure(self) -> builtins.str:
3698
+ '''The folder structure that defines the organizational structure for log files in S3.
3699
+
3700
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesweb-sessionlogger-s3logconfiguration.html#cfn-workspacesweb-sessionlogger-s3logconfiguration-folderstructure
3701
+ '''
3702
+ result = self._values.get("folder_structure")
3703
+ assert result is not None, "Required property 'folder_structure' is missing"
3704
+ return typing.cast(builtins.str, result)
3705
+
3706
+ @builtins.property
3707
+ def log_file_format(self) -> builtins.str:
3708
+ '''The format of the LogFile that is written to S3.
3709
+
3710
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesweb-sessionlogger-s3logconfiguration.html#cfn-workspacesweb-sessionlogger-s3logconfiguration-logfileformat
3711
+ '''
3712
+ result = self._values.get("log_file_format")
3713
+ assert result is not None, "Required property 'log_file_format' is missing"
3714
+ return typing.cast(builtins.str, result)
3715
+
3716
+ @builtins.property
3717
+ def bucket_owner(self) -> typing.Optional[builtins.str]:
3718
+ '''The expected bucket owner of the target S3 bucket.
3719
+
3720
+ The caller must have permissions to write to the target bucket.
3721
+
3722
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesweb-sessionlogger-s3logconfiguration.html#cfn-workspacesweb-sessionlogger-s3logconfiguration-bucketowner
3723
+ '''
3724
+ result = self._values.get("bucket_owner")
3725
+ return typing.cast(typing.Optional[builtins.str], result)
3726
+
3727
+ @builtins.property
3728
+ def key_prefix(self) -> typing.Optional[builtins.str]:
3729
+ '''The S3 path prefix that determines where log files are stored.
3730
+
3731
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesweb-sessionlogger-s3logconfiguration.html#cfn-workspacesweb-sessionlogger-s3logconfiguration-keyprefix
3732
+ '''
3733
+ result = self._values.get("key_prefix")
3734
+ return typing.cast(typing.Optional[builtins.str], result)
3735
+
3736
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
3737
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
3738
+
3739
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
3740
+ return not (rhs == self)
3741
+
3742
+ def __repr__(self) -> str:
3743
+ return "S3LogConfigurationProperty(%s)" % ", ".join(
3744
+ k + "=" + repr(v) for k, v in self._values.items()
3745
+ )
3746
+
3747
+
3748
+ @jsii.data_type(
3749
+ jsii_type="aws-cdk-lib.aws_workspacesweb.CfnSessionLoggerProps",
3750
+ jsii_struct_bases=[],
3751
+ name_mapping={
3752
+ "event_filter": "eventFilter",
3753
+ "log_configuration": "logConfiguration",
3754
+ "additional_encryption_context": "additionalEncryptionContext",
3755
+ "customer_managed_key": "customerManagedKey",
3756
+ "display_name": "displayName",
3757
+ "tags": "tags",
3758
+ },
3759
+ )
3760
+ class CfnSessionLoggerProps:
3761
+ def __init__(
3762
+ self,
3763
+ *,
3764
+ event_filter: typing.Union[_IResolvable_da3f097b, typing.Union[CfnSessionLogger.EventFilterProperty, typing.Dict[builtins.str, typing.Any]]],
3765
+ log_configuration: typing.Union[_IResolvable_da3f097b, typing.Union[CfnSessionLogger.LogConfigurationProperty, typing.Dict[builtins.str, typing.Any]]],
3766
+ additional_encryption_context: typing.Optional[typing.Union[typing.Mapping[builtins.str, builtins.str], _IResolvable_da3f097b]] = None,
3767
+ customer_managed_key: typing.Optional[builtins.str] = None,
3768
+ display_name: typing.Optional[builtins.str] = None,
3769
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
3770
+ ) -> None:
3771
+ '''Properties for defining a ``CfnSessionLogger``.
3772
+
3773
+ :param event_filter: The filter that specifies which events to monitor.
3774
+ :param log_configuration: The configuration that specifies where logs are fowarded.
3775
+ :param additional_encryption_context: The additional encryption context of the session logger.
3776
+ :param customer_managed_key: The custom managed key of the session logger.
3777
+ :param display_name: The human-readable display name.
3778
+ :param tags:
3779
+
3780
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-sessionlogger.html
3781
+ :exampleMetadata: fixture=_generated
3782
+
3783
+ Example::
3784
+
3785
+ # The code below shows an example of how to instantiate this type.
3786
+ # The values are placeholders you should change.
3787
+ from aws_cdk import aws_workspacesweb as workspacesweb
3788
+
3789
+ # all: Any
3790
+
3791
+ cfn_session_logger_props = workspacesweb.CfnSessionLoggerProps(
3792
+ event_filter=workspacesweb.CfnSessionLogger.EventFilterProperty(
3793
+ all=all,
3794
+ include=["include"]
3795
+ ),
3796
+ log_configuration=workspacesweb.CfnSessionLogger.LogConfigurationProperty(
3797
+ s3=workspacesweb.CfnSessionLogger.S3LogConfigurationProperty(
3798
+ bucket="bucket",
3799
+ folder_structure="folderStructure",
3800
+ log_file_format="logFileFormat",
3801
+
3802
+ # the properties below are optional
3803
+ bucket_owner="bucketOwner",
3804
+ key_prefix="keyPrefix"
3805
+ )
3806
+ ),
3807
+
3808
+ # the properties below are optional
3809
+ additional_encryption_context={
3810
+ "additional_encryption_context_key": "additionalEncryptionContext"
3811
+ },
3812
+ customer_managed_key="customerManagedKey",
3813
+ display_name="displayName",
3814
+ tags=[CfnTag(
3815
+ key="key",
3816
+ value="value"
3817
+ )]
3818
+ )
3819
+ '''
3820
+ if __debug__:
3821
+ type_hints = typing.get_type_hints(_typecheckingstub__042e70be11dd83b286871d0bfa14e8054acd3b7c9dfd43fc0e770ee8a2dbf3d3)
3822
+ check_type(argname="argument event_filter", value=event_filter, expected_type=type_hints["event_filter"])
3823
+ check_type(argname="argument log_configuration", value=log_configuration, expected_type=type_hints["log_configuration"])
3824
+ check_type(argname="argument additional_encryption_context", value=additional_encryption_context, expected_type=type_hints["additional_encryption_context"])
3825
+ check_type(argname="argument customer_managed_key", value=customer_managed_key, expected_type=type_hints["customer_managed_key"])
3826
+ check_type(argname="argument display_name", value=display_name, expected_type=type_hints["display_name"])
3827
+ check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
3828
+ self._values: typing.Dict[builtins.str, typing.Any] = {
3829
+ "event_filter": event_filter,
3830
+ "log_configuration": log_configuration,
3831
+ }
3832
+ if additional_encryption_context is not None:
3833
+ self._values["additional_encryption_context"] = additional_encryption_context
3834
+ if customer_managed_key is not None:
3835
+ self._values["customer_managed_key"] = customer_managed_key
3836
+ if display_name is not None:
3837
+ self._values["display_name"] = display_name
3838
+ if tags is not None:
3839
+ self._values["tags"] = tags
3840
+
3841
+ @builtins.property
3842
+ def event_filter(
3843
+ self,
3844
+ ) -> typing.Union[_IResolvable_da3f097b, CfnSessionLogger.EventFilterProperty]:
3845
+ '''The filter that specifies which events to monitor.
3846
+
3847
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-sessionlogger.html#cfn-workspacesweb-sessionlogger-eventfilter
3848
+ '''
3849
+ result = self._values.get("event_filter")
3850
+ assert result is not None, "Required property 'event_filter' is missing"
3851
+ return typing.cast(typing.Union[_IResolvable_da3f097b, CfnSessionLogger.EventFilterProperty], result)
3852
+
3853
+ @builtins.property
3854
+ def log_configuration(
3855
+ self,
3856
+ ) -> typing.Union[_IResolvable_da3f097b, CfnSessionLogger.LogConfigurationProperty]:
3857
+ '''The configuration that specifies where logs are fowarded.
3858
+
3859
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-sessionlogger.html#cfn-workspacesweb-sessionlogger-logconfiguration
3860
+ '''
3861
+ result = self._values.get("log_configuration")
3862
+ assert result is not None, "Required property 'log_configuration' is missing"
3863
+ return typing.cast(typing.Union[_IResolvable_da3f097b, CfnSessionLogger.LogConfigurationProperty], result)
3864
+
3865
+ @builtins.property
3866
+ def additional_encryption_context(
3867
+ self,
3868
+ ) -> typing.Optional[typing.Union[typing.Mapping[builtins.str, builtins.str], _IResolvable_da3f097b]]:
3869
+ '''The additional encryption context of the session logger.
3870
+
3871
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-sessionlogger.html#cfn-workspacesweb-sessionlogger-additionalencryptioncontext
3872
+ '''
3873
+ result = self._values.get("additional_encryption_context")
3874
+ return typing.cast(typing.Optional[typing.Union[typing.Mapping[builtins.str, builtins.str], _IResolvable_da3f097b]], result)
3875
+
3876
+ @builtins.property
3877
+ def customer_managed_key(self) -> typing.Optional[builtins.str]:
3878
+ '''The custom managed key of the session logger.
3879
+
3880
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-sessionlogger.html#cfn-workspacesweb-sessionlogger-customermanagedkey
3881
+ '''
3882
+ result = self._values.get("customer_managed_key")
3883
+ return typing.cast(typing.Optional[builtins.str], result)
3884
+
3885
+ @builtins.property
3886
+ def display_name(self) -> typing.Optional[builtins.str]:
3887
+ '''The human-readable display name.
3888
+
3889
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-sessionlogger.html#cfn-workspacesweb-sessionlogger-displayname
3890
+ '''
3891
+ result = self._values.get("display_name")
3892
+ return typing.cast(typing.Optional[builtins.str], result)
3893
+
3894
+ @builtins.property
3895
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
3896
+ '''
3897
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-sessionlogger.html#cfn-workspacesweb-sessionlogger-tags
3898
+ '''
3899
+ result = self._values.get("tags")
3900
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], result)
3901
+
3902
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
3903
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
3904
+
3905
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
3906
+ return not (rhs == self)
3907
+
3908
+ def __repr__(self) -> str:
3909
+ return "CfnSessionLoggerProps(%s)" % ", ".join(
3910
+ k + "=" + repr(v) for k, v in self._values.items()
3911
+ )
3912
+
3913
+
3914
+ @jsii.implements(_IInspectable_c2943556, _ITrustStoreRef_b3e9ed97, _ITaggableV2_4e6798f8)
3915
+ class CfnTrustStore(
3916
+ _CfnResource_9df397a6,
3917
+ metaclass=jsii.JSIIMeta,
3918
+ jsii_type="aws-cdk-lib.aws_workspacesweb.CfnTrustStore",
3919
+ ):
3920
+ '''This resource specifies a trust store that can be associated with a web portal.
3921
+
3922
+ A trust store contains certificate authority (CA) certificates. Once associated with a web portal, the browser in a streaming session will recognize certificates that have been issued using any of the CAs in the trust store. If your organization has internal websites that use certificates issued by private CAs, you should add the private CA certificate to the trust store.
3923
+
3924
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-truststore.html
3925
+ :cloudformationResource: AWS::WorkSpacesWeb::TrustStore
3926
+ :exampleMetadata: fixture=_generated
3927
+
3928
+ Example::
3929
+
3930
+ # The code below shows an example of how to instantiate this type.
3931
+ # The values are placeholders you should change.
3932
+ from aws_cdk import aws_workspacesweb as workspacesweb
3933
+
3934
+ cfn_trust_store = workspacesweb.CfnTrustStore(self, "MyCfnTrustStore",
3935
+ certificate_list=["certificateList"],
3936
+
3937
+ # the properties below are optional
3938
+ tags=[CfnTag(
3939
+ key="key",
3940
+ value="value"
3941
+ )]
3942
+ )
3943
+ '''
3944
+
3945
+ def __init__(
3946
+ self,
3947
+ scope: _constructs_77d1e7e8.Construct,
3948
+ id: builtins.str,
3949
+ *,
3950
+ certificate_list: typing.Sequence[builtins.str],
3951
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
3952
+ ) -> None:
3953
+ '''Create a new ``AWS::WorkSpacesWeb::TrustStore``.
3954
+
3955
+ :param scope: Scope in which this resource is defined.
3956
+ :param id: Construct identifier for this resource (unique in its scope).
3957
+ :param certificate_list: A list of CA certificates to be added to the trust store.
3958
+ :param tags: The tags to add to the trust store. A tag is a key-value pair.
3959
+ '''
3960
+ if __debug__:
3961
+ type_hints = typing.get_type_hints(_typecheckingstub__cc9c8ead0938c5ad416a02ff1511be2c3cbf2519166e43c80e65e581fac2cab7)
3962
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
3963
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
3964
+ props = CfnTrustStoreProps(certificate_list=certificate_list, tags=tags)
3965
+
3966
+ jsii.create(self.__class__, self, [scope, id, props])
3967
+
3968
+ @jsii.member(jsii_name="inspect")
3969
+ def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
3970
+ '''Examines the CloudFormation resource and discloses attributes.
3971
+
3972
+ :param inspector: tree inspector to collect and process attributes.
3973
+ '''
3974
+ if __debug__:
3975
+ type_hints = typing.get_type_hints(_typecheckingstub__5fb3d54892745fdc13234075ce86bd3f8d4acfe9ec88a393309766bcf833012b)
3976
+ check_type(argname="argument inspector", value=inspector, expected_type=type_hints["inspector"])
3977
+ return typing.cast(None, jsii.invoke(self, "inspect", [inspector]))
3978
+
3979
+ @jsii.member(jsii_name="renderProperties")
3980
+ def _render_properties(
3981
+ self,
3982
+ props: typing.Mapping[builtins.str, typing.Any],
3983
+ ) -> typing.Mapping[builtins.str, typing.Any]:
3984
+ '''
3985
+ :param props: -
3986
+ '''
3987
+ if __debug__:
3988
+ type_hints = typing.get_type_hints(_typecheckingstub__836cb2ee4e300cb4cb603faf540c0c6dad36379e65dad6d178875cdc39e56603)
3989
+ check_type(argname="argument props", value=props, expected_type=type_hints["props"])
3990
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "renderProperties", [props]))
3991
+
3992
+ @jsii.python.classproperty
3993
+ @jsii.member(jsii_name="CFN_RESOURCE_TYPE_NAME")
3994
+ def CFN_RESOURCE_TYPE_NAME(cls) -> builtins.str:
3995
+ '''The CloudFormation resource type name for this resource class.'''
3996
+ return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
3997
+
3998
+ @builtins.property
3999
+ @jsii.member(jsii_name="attrAssociatedPortalArns")
4000
+ def attr_associated_portal_arns(self) -> typing.List[builtins.str]:
4001
+ '''A list of web portal ARNs that this trust store is associated with.
4002
+
4003
+ :cloudformationAttribute: AssociatedPortalArns
4004
+ '''
4005
+ return typing.cast(typing.List[builtins.str], jsii.get(self, "attrAssociatedPortalArns"))
4006
+
4007
+ @builtins.property
4008
+ @jsii.member(jsii_name="attrTrustStoreArn")
4009
+ def attr_trust_store_arn(self) -> builtins.str:
4010
+ '''The ARN of the trust store.
4011
+
4012
+ :cloudformationAttribute: TrustStoreArn
4013
+ '''
4014
+ return typing.cast(builtins.str, jsii.get(self, "attrTrustStoreArn"))
4015
+
4016
+ @builtins.property
4017
+ @jsii.member(jsii_name="cdkTagManager")
4018
+ def cdk_tag_manager(self) -> _TagManager_0a598cb3:
4019
+ '''Tag Manager which manages the tags for this resource.'''
4020
+ return typing.cast(_TagManager_0a598cb3, jsii.get(self, "cdkTagManager"))
4021
+
4022
+ @builtins.property
4023
+ @jsii.member(jsii_name="cfnProperties")
4024
+ def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
4025
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
4026
+
4027
+ @builtins.property
4028
+ @jsii.member(jsii_name="trustStoreRef")
4029
+ def trust_store_ref(self) -> _TrustStoreReference_778699bf:
4030
+ '''A reference to a TrustStore resource.'''
4031
+ return typing.cast(_TrustStoreReference_778699bf, jsii.get(self, "trustStoreRef"))
4032
+
4033
+ @builtins.property
4034
+ @jsii.member(jsii_name="certificateList")
4035
+ def certificate_list(self) -> typing.List[builtins.str]:
4036
+ '''A list of CA certificates to be added to the trust store.'''
4037
+ return typing.cast(typing.List[builtins.str], jsii.get(self, "certificateList"))
4038
+
4039
+ @certificate_list.setter
4040
+ def certificate_list(self, value: typing.List[builtins.str]) -> None:
4041
+ if __debug__:
4042
+ type_hints = typing.get_type_hints(_typecheckingstub__d6c348f8d89e15637f5e7f299791ad808bd6fadfe67032f77e095b03cb3b19f1)
4043
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
4044
+ jsii.set(self, "certificateList", value) # pyright: ignore[reportArgumentType]
4045
+
4046
+ @builtins.property
4047
+ @jsii.member(jsii_name="tags")
4048
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
4049
+ '''The tags to add to the trust store.'''
4050
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], jsii.get(self, "tags"))
4051
+
4052
+ @tags.setter
4053
+ def tags(self, value: typing.Optional[typing.List[_CfnTag_f6864754]]) -> None:
4054
+ if __debug__:
4055
+ type_hints = typing.get_type_hints(_typecheckingstub__413cb334bb35253edc995584173eeea4b9dcaddccf8f42db23cff1eb1c57eba2)
4056
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
4057
+ jsii.set(self, "tags", value) # pyright: ignore[reportArgumentType]
4058
+
4059
+
4060
+ @jsii.data_type(
4061
+ jsii_type="aws-cdk-lib.aws_workspacesweb.CfnTrustStoreProps",
4062
+ jsii_struct_bases=[],
4063
+ name_mapping={"certificate_list": "certificateList", "tags": "tags"},
4064
+ )
4065
+ class CfnTrustStoreProps:
4066
+ def __init__(
4067
+ self,
4068
+ *,
4069
+ certificate_list: typing.Sequence[builtins.str],
4070
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
4071
+ ) -> None:
4072
+ '''Properties for defining a ``CfnTrustStore``.
4073
+
4074
+ :param certificate_list: A list of CA certificates to be added to the trust store.
4075
+ :param tags: The tags to add to the trust store. A tag is a key-value pair.
4076
+
4077
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-truststore.html
4078
+ :exampleMetadata: fixture=_generated
4079
+
4080
+ Example::
4081
+
4082
+ # The code below shows an example of how to instantiate this type.
4083
+ # The values are placeholders you should change.
4084
+ from aws_cdk import aws_workspacesweb as workspacesweb
4085
+
4086
+ cfn_trust_store_props = workspacesweb.CfnTrustStoreProps(
4087
+ certificate_list=["certificateList"],
4088
+
4089
+ # the properties below are optional
4090
+ tags=[CfnTag(
4091
+ key="key",
4092
+ value="value"
4093
+ )]
4094
+ )
4095
+ '''
4096
+ if __debug__:
4097
+ type_hints = typing.get_type_hints(_typecheckingstub__7f61f2140f6607d292f5333bbaa4cf73f35e92dd28f8d49fc35bdca25eb8fa18)
4098
+ check_type(argname="argument certificate_list", value=certificate_list, expected_type=type_hints["certificate_list"])
4099
+ check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
4100
+ self._values: typing.Dict[builtins.str, typing.Any] = {
4101
+ "certificate_list": certificate_list,
4102
+ }
4103
+ if tags is not None:
4104
+ self._values["tags"] = tags
4105
+
4106
+ @builtins.property
4107
+ def certificate_list(self) -> typing.List[builtins.str]:
4108
+ '''A list of CA certificates to be added to the trust store.
4109
+
4110
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-truststore.html#cfn-workspacesweb-truststore-certificatelist
4111
+ '''
4112
+ result = self._values.get("certificate_list")
4113
+ assert result is not None, "Required property 'certificate_list' is missing"
4114
+ return typing.cast(typing.List[builtins.str], result)
4115
+
4116
+ @builtins.property
4117
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
4118
+ '''The tags to add to the trust store.
4119
+
4120
+ A tag is a key-value pair.
4121
+
4122
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-truststore.html#cfn-workspacesweb-truststore-tags
4123
+ '''
4124
+ result = self._values.get("tags")
4125
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], result)
4126
+
4127
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
4128
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
4129
+
4130
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
4131
+ return not (rhs == self)
4132
+
4133
+ def __repr__(self) -> str:
4134
+ return "CfnTrustStoreProps(%s)" % ", ".join(
4135
+ k + "=" + repr(v) for k, v in self._values.items()
4136
+ )
4137
+
4138
+
4139
+ @jsii.implements(_IInspectable_c2943556, _IUserAccessLoggingSettingsRef_35b44bda, _ITaggableV2_4e6798f8)
4140
+ class CfnUserAccessLoggingSettings(
4141
+ _CfnResource_9df397a6,
4142
+ metaclass=jsii.JSIIMeta,
4143
+ jsii_type="aws-cdk-lib.aws_workspacesweb.CfnUserAccessLoggingSettings",
4144
+ ):
4145
+ '''This resource specifies user access logging settings that can be associated with a web portal.
4146
+
4147
+ In order to receive logs from WorkSpaces Secure Browser, you must have an Amazon Kinesis Data Stream that starts with "amazon-workspaces-web-*". Your Amazon Kinesis data stream must either have server-side encryption turned off, or must use AWS managed keys for server-side encryption.
4148
+
4149
+ For more information about setting server-side encryption in Amazon Kinesis , see `How Do I Get Started with Server-Side Encryption? <https://docs.aws.amazon.com/streams/latest/dev/getting-started-with-sse.html>`_ .
4150
+
4151
+ For more information about setting up user access logging, see `Set up user access logging <https://docs.aws.amazon.com/workspaces-web/latest/adminguide/user-logging.html>`_ .
4152
+
4153
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-useraccessloggingsettings.html
4154
+ :cloudformationResource: AWS::WorkSpacesWeb::UserAccessLoggingSettings
4155
+ :exampleMetadata: fixture=_generated
4156
+
4157
+ Example::
4158
+
4159
+ # The code below shows an example of how to instantiate this type.
4160
+ # The values are placeholders you should change.
4161
+ from aws_cdk import aws_workspacesweb as workspacesweb
4162
+
4163
+ cfn_user_access_logging_settings = workspacesweb.CfnUserAccessLoggingSettings(self, "MyCfnUserAccessLoggingSettings",
4164
+ kinesis_stream_arn="kinesisStreamArn",
4165
+
4166
+ # the properties below are optional
4167
+ tags=[CfnTag(
4168
+ key="key",
4169
+ value="value"
3380
4170
  )]
3381
4171
  )
3382
4172
  '''
@@ -3389,7 +4179,8 @@ class CfnUserAccessLoggingSettings(
3389
4179
  kinesis_stream_arn: builtins.str,
3390
4180
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
3391
4181
  ) -> None:
3392
- '''
4182
+ '''Create a new ``AWS::WorkSpacesWeb::UserAccessLoggingSettings``.
4183
+
3393
4184
  :param scope: Scope in which this resource is defined.
3394
4185
  :param id: Construct identifier for this resource (unique in its scope).
3395
4186
  :param kinesis_stream_arn: The ARN of the Kinesis stream.
@@ -3464,6 +4255,14 @@ class CfnUserAccessLoggingSettings(
3464
4255
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
3465
4256
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
3466
4257
 
4258
+ @builtins.property
4259
+ @jsii.member(jsii_name="userAccessLoggingSettingsRef")
4260
+ def user_access_logging_settings_ref(
4261
+ self,
4262
+ ) -> _UserAccessLoggingSettingsReference_b92d801e:
4263
+ '''A reference to a UserAccessLoggingSettings resource.'''
4264
+ return typing.cast(_UserAccessLoggingSettingsReference_b92d801e, jsii.get(self, "userAccessLoggingSettingsRef"))
4265
+
3467
4266
  @builtins.property
3468
4267
  @jsii.member(jsii_name="kinesisStreamArn")
3469
4268
  def kinesis_stream_arn(self) -> builtins.str:
@@ -3570,7 +4369,7 @@ class CfnUserAccessLoggingSettingsProps:
3570
4369
  )
3571
4370
 
3572
4371
 
3573
- @jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
4372
+ @jsii.implements(_IInspectable_c2943556, _IUserSettingsRef_02671625, _ITaggableV2_4e6798f8)
3574
4373
  class CfnUserSettings(
3575
4374
  _CfnResource_9df397a6,
3576
4375
  metaclass=jsii.JSIIMeta,
@@ -3655,7 +4454,8 @@ class CfnUserSettings(
3655
4454
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
3656
4455
  toolbar_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnUserSettings.ToolbarConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
3657
4456
  ) -> None:
3658
- '''
4457
+ '''Create a new ``AWS::WorkSpacesWeb::UserSettings``.
4458
+
3659
4459
  :param scope: Scope in which this resource is defined.
3660
4460
  :param id: Construct identifier for this resource (unique in its scope).
3661
4461
  :param copy_allowed: Specifies whether the user can copy text from the streaming session to the local device.
@@ -3753,6 +4553,12 @@ class CfnUserSettings(
3753
4553
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
3754
4554
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
3755
4555
 
4556
+ @builtins.property
4557
+ @jsii.member(jsii_name="userSettingsRef")
4558
+ def user_settings_ref(self) -> _UserSettingsReference_9c05e0ee:
4559
+ '''A reference to a UserSettings resource.'''
4560
+ return typing.cast(_UserSettingsReference_9c05e0ee, jsii.get(self, "userSettingsRef"))
4561
+
3756
4562
  @builtins.property
3757
4563
  @jsii.member(jsii_name="copyAllowed")
3758
4564
  def copy_allowed(self) -> builtins.str:
@@ -4531,6 +5337,8 @@ __all__ = [
4531
5337
  "CfnNetworkSettingsProps",
4532
5338
  "CfnPortal",
4533
5339
  "CfnPortalProps",
5340
+ "CfnSessionLogger",
5341
+ "CfnSessionLoggerProps",
4534
5342
  "CfnTrustStore",
4535
5343
  "CfnTrustStoreProps",
4536
5344
  "CfnUserAccessLoggingSettings",
@@ -4933,6 +5741,7 @@ def _typecheckingstub__239c61bc87a1a693f01a28198d2d3000f7ef790e9684279e807a890b0
4933
5741
  ip_access_settings_arn: typing.Optional[builtins.str] = None,
4934
5742
  max_concurrent_sessions: typing.Optional[jsii.Number] = None,
4935
5743
  network_settings_arn: typing.Optional[builtins.str] = None,
5744
+ session_logger_arn: typing.Optional[builtins.str] = None,
4936
5745
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
4937
5746
  trust_store_arn: typing.Optional[builtins.str] = None,
4938
5747
  user_access_logging_settings_arn: typing.Optional[builtins.str] = None,
@@ -5013,6 +5822,12 @@ def _typecheckingstub__beaa575cd54d9de94a0201b4213524db5df052dd0b9e1605b88d4487f
5013
5822
  """Type checking stubs"""
5014
5823
  pass
5015
5824
 
5825
+ def _typecheckingstub__799f778b7f3d528d4330acec14db7800e1877f11411b658cf7b11ad8463a43b6(
5826
+ value: typing.Optional[builtins.str],
5827
+ ) -> None:
5828
+ """Type checking stubs"""
5829
+ pass
5830
+
5016
5831
  def _typecheckingstub__30535a8dcd75eba19481865deda3eac2505afe537e0650db0a95162feb2563e2(
5017
5832
  value: typing.Optional[typing.List[_CfnTag_f6864754]],
5018
5833
  ) -> None:
@@ -5049,6 +5864,7 @@ def _typecheckingstub__aa147912cdfb0d9ea5356fccc59e7ae5b02c822d1e3f5ae2e4826ae39
5049
5864
  ip_access_settings_arn: typing.Optional[builtins.str] = None,
5050
5865
  max_concurrent_sessions: typing.Optional[jsii.Number] = None,
5051
5866
  network_settings_arn: typing.Optional[builtins.str] = None,
5867
+ session_logger_arn: typing.Optional[builtins.str] = None,
5052
5868
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
5053
5869
  trust_store_arn: typing.Optional[builtins.str] = None,
5054
5870
  user_access_logging_settings_arn: typing.Optional[builtins.str] = None,
@@ -5057,6 +5873,106 @@ def _typecheckingstub__aa147912cdfb0d9ea5356fccc59e7ae5b02c822d1e3f5ae2e4826ae39
5057
5873
  """Type checking stubs"""
5058
5874
  pass
5059
5875
 
5876
+ def _typecheckingstub__5ecda6b775e0aad6e840315c150daa1cae407a534f747e34d2336449d0085a29(
5877
+ scope: _constructs_77d1e7e8.Construct,
5878
+ id: builtins.str,
5879
+ *,
5880
+ event_filter: typing.Union[_IResolvable_da3f097b, typing.Union[CfnSessionLogger.EventFilterProperty, typing.Dict[builtins.str, typing.Any]]],
5881
+ log_configuration: typing.Union[_IResolvable_da3f097b, typing.Union[CfnSessionLogger.LogConfigurationProperty, typing.Dict[builtins.str, typing.Any]]],
5882
+ additional_encryption_context: typing.Optional[typing.Union[typing.Mapping[builtins.str, builtins.str], _IResolvable_da3f097b]] = None,
5883
+ customer_managed_key: typing.Optional[builtins.str] = None,
5884
+ display_name: typing.Optional[builtins.str] = None,
5885
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
5886
+ ) -> None:
5887
+ """Type checking stubs"""
5888
+ pass
5889
+
5890
+ def _typecheckingstub__32c2901f06899b3e8b2aed11d0479e80af4ae3bd2497852311c46da6edf80e41(
5891
+ inspector: _TreeInspector_488e0dd5,
5892
+ ) -> None:
5893
+ """Type checking stubs"""
5894
+ pass
5895
+
5896
+ def _typecheckingstub__02821e951e1a7ebffab0cee338cb22e018833b70a4b8b4db79eadb9491b74956(
5897
+ props: typing.Mapping[builtins.str, typing.Any],
5898
+ ) -> None:
5899
+ """Type checking stubs"""
5900
+ pass
5901
+
5902
+ def _typecheckingstub__0f797a952eee0e5ef3c6c4e74102d30901b3a261e47539149a187359b0273935(
5903
+ value: typing.Union[_IResolvable_da3f097b, CfnSessionLogger.EventFilterProperty],
5904
+ ) -> None:
5905
+ """Type checking stubs"""
5906
+ pass
5907
+
5908
+ def _typecheckingstub__e28c4c53e5ee42bd3a2b3077ae66818ce670fc07686e11ffa703be889c6aa901(
5909
+ value: typing.Union[_IResolvable_da3f097b, CfnSessionLogger.LogConfigurationProperty],
5910
+ ) -> None:
5911
+ """Type checking stubs"""
5912
+ pass
5913
+
5914
+ def _typecheckingstub__537d3e1f1f27dd421a4b648f2d1cfd2cafc17c6a94f1210fd5389a3d16c72bf0(
5915
+ value: typing.Optional[typing.Union[typing.Mapping[builtins.str, builtins.str], _IResolvable_da3f097b]],
5916
+ ) -> None:
5917
+ """Type checking stubs"""
5918
+ pass
5919
+
5920
+ def _typecheckingstub__6669ab733027174f86b8134ac28a12b3e8ce058fc6bb771f3ca2e6a1aa4a1ba0(
5921
+ value: typing.Optional[builtins.str],
5922
+ ) -> None:
5923
+ """Type checking stubs"""
5924
+ pass
5925
+
5926
+ def _typecheckingstub__ae9fd345c1425b64f964d35fc511958d77a0f8f2e8685f0e6c4fca88750edc68(
5927
+ value: typing.Optional[builtins.str],
5928
+ ) -> None:
5929
+ """Type checking stubs"""
5930
+ pass
5931
+
5932
+ def _typecheckingstub__85de43da52ead721682621ad8e0ec6970bf253d4dc82e6a8b363fb44db534497(
5933
+ value: typing.Optional[typing.List[_CfnTag_f6864754]],
5934
+ ) -> None:
5935
+ """Type checking stubs"""
5936
+ pass
5937
+
5938
+ def _typecheckingstub__2f1530e33fd800f934515849e7a6b073e430e992de682bef2cf8a8e5c89aa2d7(
5939
+ *,
5940
+ all: typing.Any = None,
5941
+ include: typing.Optional[typing.Sequence[builtins.str]] = None,
5942
+ ) -> None:
5943
+ """Type checking stubs"""
5944
+ pass
5945
+
5946
+ def _typecheckingstub__5e673953fb604a5eaf695974e9bd912f04871f2cb0d15f4408568306f9d8913e(
5947
+ *,
5948
+ s3: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnSessionLogger.S3LogConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
5949
+ ) -> None:
5950
+ """Type checking stubs"""
5951
+ pass
5952
+
5953
+ def _typecheckingstub__2932cde5c903e31aee5df2ddaf173b3b2d8262005b0e7a9387a82480cca35f4f(
5954
+ *,
5955
+ bucket: builtins.str,
5956
+ folder_structure: builtins.str,
5957
+ log_file_format: builtins.str,
5958
+ bucket_owner: typing.Optional[builtins.str] = None,
5959
+ key_prefix: typing.Optional[builtins.str] = None,
5960
+ ) -> None:
5961
+ """Type checking stubs"""
5962
+ pass
5963
+
5964
+ def _typecheckingstub__042e70be11dd83b286871d0bfa14e8054acd3b7c9dfd43fc0e770ee8a2dbf3d3(
5965
+ *,
5966
+ event_filter: typing.Union[_IResolvable_da3f097b, typing.Union[CfnSessionLogger.EventFilterProperty, typing.Dict[builtins.str, typing.Any]]],
5967
+ log_configuration: typing.Union[_IResolvable_da3f097b, typing.Union[CfnSessionLogger.LogConfigurationProperty, typing.Dict[builtins.str, typing.Any]]],
5968
+ additional_encryption_context: typing.Optional[typing.Union[typing.Mapping[builtins.str, builtins.str], _IResolvable_da3f097b]] = None,
5969
+ customer_managed_key: typing.Optional[builtins.str] = None,
5970
+ display_name: typing.Optional[builtins.str] = None,
5971
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
5972
+ ) -> None:
5973
+ """Type checking stubs"""
5974
+ pass
5975
+
5060
5976
  def _typecheckingstub__cc9c8ead0938c5ad416a02ff1511be2c3cbf2519166e43c80e65e581fac2cab7(
5061
5977
  scope: _constructs_77d1e7e8.Construct,
5062
5978
  id: builtins.str,