cdk-iam-floyd 0.710.0 → 0.714.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (277) hide show
  1. package/.claude/settings.local.json +30 -0
  2. package/CLAUDE.md +147 -0
  3. package/README.md +4 -4
  4. package/lib/generated/aws-managed-policies/cdk-iam-floyd.d.ts +74 -14
  5. package/lib/generated/aws-managed-policies/cdk-iam-floyd.js +148 -28
  6. package/lib/generated/aws-managed-policies/iam-floyd.d.ts +74 -14
  7. package/lib/generated/aws-managed-policies/iam-floyd.js +75 -15
  8. package/lib/generated/index.d.ts +11 -3
  9. package/lib/generated/index.js +32 -16
  10. package/lib/generated/policy-statements/aioperations.d.ts +25 -0
  11. package/lib/generated/policy-statements/aioperations.js +39 -8
  12. package/lib/generated/policy-statements/amplify.d.ts +0 -6
  13. package/lib/generated/policy-statements/amplify.js +1 -7
  14. package/lib/generated/policy-statements/apigatewaymanagement.d.ts +26 -0
  15. package/lib/generated/policy-statements/apigatewaymanagement.js +31 -1
  16. package/lib/generated/policy-statements/apigatewaymanagementv2.d.ts +169 -5
  17. package/lib/generated/policy-statements/apigatewaymanagementv2.js +203 -8
  18. package/lib/generated/policy-statements/appintegrations.d.ts +60 -0
  19. package/lib/generated/policy-statements/appintegrations.js +82 -1
  20. package/lib/generated/policy-statements/applicationmigrationservice.d.ts +12 -0
  21. package/lib/generated/policy-statements/applicationmigrationservice.js +13 -1
  22. package/lib/generated/policy-statements/applicationrecoverycontroller-zonalshift.d.ts +35 -0
  23. package/lib/generated/policy-statements/applicationrecoverycontroller-zonalshift.js +42 -1
  24. package/lib/generated/policy-statements/appstream2-0.d.ts +15 -15
  25. package/lib/generated/policy-statements/appstream2-0.js +22 -22
  26. package/lib/generated/policy-statements/appsync.d.ts +1 -1
  27. package/lib/generated/policy-statements/appsync.js +5 -3
  28. package/lib/generated/policy-statements/arcregionswitch.d.ts +277 -0
  29. package/lib/generated/policy-statements/arcregionswitch.js +370 -0
  30. package/lib/generated/policy-statements/artifact.d.ts +10 -25
  31. package/lib/generated/policy-statements/artifact.js +11 -34
  32. package/lib/generated/policy-statements/auditmanager.d.ts +22 -5
  33. package/lib/generated/policy-statements/auditmanager.js +23 -6
  34. package/lib/generated/policy-statements/auroradsql.d.ts +96 -24
  35. package/lib/generated/policy-statements/auroradsql.js +121 -30
  36. package/lib/generated/policy-statements/backup.d.ts +62 -1
  37. package/lib/generated/policy-statements/backup.js +80 -2
  38. package/lib/generated/policy-statements/backupsearch.d.ts +4 -0
  39. package/lib/generated/policy-statements/backupsearch.js +5 -1
  40. package/lib/generated/policy-statements/batch.d.ts +106 -0
  41. package/lib/generated/policy-statements/batch.js +137 -3
  42. package/lib/generated/policy-statements/bedrock.d.ts +471 -0
  43. package/lib/generated/policy-statements/bedrock.js +595 -1
  44. package/lib/generated/policy-statements/bedrockagentcore.d.ts +912 -0
  45. package/lib/generated/policy-statements/bedrockagentcore.js +1203 -0
  46. package/lib/generated/policy-statements/billing.d.ts +6 -0
  47. package/lib/generated/policy-statements/billing.js +10 -1
  48. package/lib/generated/policy-statements/billingandcostmanagementdashboards.d.ts +122 -0
  49. package/lib/generated/policy-statements/billingandcostmanagementdashboards.js +165 -0
  50. package/lib/generated/policy-statements/billingandcostmanagementrecommendedactions.d.ts +25 -0
  51. package/lib/generated/policy-statements/billingandcostmanagementrecommendedactions.js +36 -0
  52. package/lib/generated/policy-statements/braket.d.ts +6 -6
  53. package/lib/generated/policy-statements/braket.js +7 -10
  54. package/lib/generated/policy-statements/budgetservice.d.ts +6 -0
  55. package/lib/generated/policy-statements/budgetservice.js +7 -1
  56. package/lib/generated/policy-statements/certificatemanager.d.ts +30 -1
  57. package/lib/generated/policy-statements/certificatemanager.js +36 -2
  58. package/lib/generated/policy-statements/chatbot.d.ts +128 -1
  59. package/lib/generated/policy-statements/chatbot.js +134 -1
  60. package/lib/generated/policy-statements/cleanrooms.d.ts +56 -0
  61. package/lib/generated/policy-statements/cleanrooms.js +72 -1
  62. package/lib/generated/policy-statements/cleanroomsml.d.ts +14 -0
  63. package/lib/generated/policy-statements/cleanroomsml.js +18 -1
  64. package/lib/generated/policy-statements/cloud9.d.ts +6 -8
  65. package/lib/generated/policy-statements/cloud9.js +8 -13
  66. package/lib/generated/policy-statements/cloudmap.d.ts +57 -0
  67. package/lib/generated/policy-statements/cloudmap.js +69 -1
  68. package/lib/generated/policy-statements/cloudtrail.d.ts +20 -0
  69. package/lib/generated/policy-statements/cloudtrail.js +27 -1
  70. package/lib/generated/policy-statements/cloudwatch.d.ts +8 -0
  71. package/lib/generated/policy-statements/cloudwatch.js +12 -1
  72. package/lib/generated/policy-statements/cloudwatchlogs.d.ts +8 -0
  73. package/lib/generated/policy-statements/cloudwatchlogs.js +12 -1
  74. package/lib/generated/policy-statements/cloudwatchobservabilityadminservice.d.ts +200 -9
  75. package/lib/generated/policy-statements/cloudwatchobservabilityadminservice.js +258 -14
  76. package/lib/generated/policy-statements/codebuild.d.ts +1909 -4
  77. package/lib/generated/policy-statements/codebuild.js +2131 -6
  78. package/lib/generated/policy-statements/codepipeline.d.ts +8 -0
  79. package/lib/generated/policy-statements/codepipeline.js +12 -1
  80. package/lib/generated/policy-statements/cognitouserpools.d.ts +8 -0
  81. package/lib/generated/policy-statements/cognitouserpools.js +12 -1
  82. package/lib/generated/policy-statements/connect.d.ts +44 -0
  83. package/lib/generated/policy-statements/connect.js +52 -1
  84. package/lib/generated/policy-statements/connectcases.d.ts +9 -1
  85. package/lib/generated/policy-statements/connectcases.js +13 -2
  86. package/lib/generated/policy-statements/connectcustomerprofiles.d.ts +106 -0
  87. package/lib/generated/policy-statements/connectcustomerprofiles.js +142 -1
  88. package/lib/generated/policy-statements/connectoutboundcampaigns.d.ts +16 -0
  89. package/lib/generated/policy-statements/connectoutboundcampaigns.js +23 -1
  90. package/lib/generated/policy-statements/controlcatalog.d.ts +8 -0
  91. package/lib/generated/policy-statements/controlcatalog.js +12 -1
  92. package/lib/generated/policy-statements/costandusagereport.d.ts +3 -0
  93. package/lib/generated/policy-statements/costandusagereport.js +4 -1
  94. package/lib/generated/policy-statements/costexplorerservice.d.ts +24 -0
  95. package/lib/generated/policy-statements/costexplorerservice.js +31 -1
  96. package/lib/generated/policy-statements/dataexchange.d.ts +16 -0
  97. package/lib/generated/policy-statements/dataexchange.js +17 -1
  98. package/lib/generated/policy-statements/datazone.d.ts +57 -3
  99. package/lib/generated/policy-statements/datazone.js +89 -8
  100. package/lib/generated/policy-statements/deadlinecloud.d.ts +17 -0
  101. package/lib/generated/policy-statements/deadlinecloud.js +18 -1
  102. package/lib/generated/policy-statements/directoryservice.d.ts +142 -0
  103. package/lib/generated/policy-statements/directoryservice.js +173 -1
  104. package/lib/generated/policy-statements/dynamodb.d.ts +16 -0
  105. package/lib/generated/policy-statements/dynamodb.js +23 -1
  106. package/lib/generated/policy-statements/ec2.d.ts +521 -17
  107. package/lib/generated/policy-statements/ec2.js +580 -29
  108. package/lib/generated/policy-statements/ec2imagebuilder.d.ts +147 -62
  109. package/lib/generated/policy-statements/ec2imagebuilder.js +155 -70
  110. package/lib/generated/policy-statements/elasticblockstore.d.ts +2 -2
  111. package/lib/generated/policy-statements/elasticblockstore.js +4 -4
  112. package/lib/generated/policy-statements/elasticcontainerservice.d.ts +1 -30
  113. package/lib/generated/policy-statements/elasticcontainerservice.js +2 -31
  114. package/lib/generated/policy-statements/elastickubernetesservice.d.ts +47 -0
  115. package/lib/generated/policy-statements/elastickubernetesservice.js +62 -1
  116. package/lib/generated/policy-statements/elasticloadbalancing.d.ts +1 -1
  117. package/lib/generated/policy-statements/elasticloadbalancing.js +2 -2
  118. package/lib/generated/policy-statements/elasticmapreduce.d.ts +8 -0
  119. package/lib/generated/policy-statements/elasticmapreduce.js +12 -1
  120. package/lib/generated/policy-statements/elementalmediaconnect.d.ts +55 -55
  121. package/lib/generated/policy-statements/elementalmediaconnect.js +56 -56
  122. package/lib/generated/policy-statements/elementalmediaconvert.d.ts +8 -0
  123. package/lib/generated/policy-statements/elementalmediaconvert.js +12 -1
  124. package/lib/generated/policy-statements/emroneksemrcontainers.d.ts +2 -13
  125. package/lib/generated/policy-statements/emroneksemrcontainers.js +3 -16
  126. package/lib/generated/policy-statements/emrserverless.d.ts +8 -0
  127. package/lib/generated/policy-statements/emrserverless.js +12 -1
  128. package/lib/generated/policy-statements/endusermessagingsocial.d.ts +64 -0
  129. package/lib/generated/policy-statements/endusermessagingsocial.js +91 -3
  130. package/lib/generated/policy-statements/entityresolution.d.ts +8 -0
  131. package/lib/generated/policy-statements/entityresolution.js +12 -1
  132. package/lib/generated/policy-statements/eventbridge.d.ts +30 -0
  133. package/lib/generated/policy-statements/eventbridge.js +38 -1
  134. package/lib/generated/policy-statements/freetier.d.ts +32 -0
  135. package/lib/generated/policy-statements/freetier.js +48 -2
  136. package/lib/generated/policy-statements/fsx.d.ts +32 -0
  137. package/lib/generated/policy-statements/fsx.js +42 -1
  138. package/lib/generated/policy-statements/{gamelift.d.ts → gameliftservers.d.ts} +131 -131
  139. package/lib/generated/policy-statements/gameliftservers.js +1724 -0
  140. package/lib/generated/policy-statements/glue.d.ts +249 -0
  141. package/lib/generated/policy-statements/glue.js +264 -1
  142. package/lib/generated/policy-statements/gluedatabrew.d.ts +16 -0
  143. package/lib/generated/policy-statements/gluedatabrew.js +17 -1
  144. package/lib/generated/policy-statements/guardduty.d.ts +138 -0
  145. package/lib/generated/policy-statements/guardduty.js +175 -3
  146. package/lib/generated/policy-statements/healthimaging.d.ts +56 -0
  147. package/lib/generated/policy-statements/healthimaging.js +78 -1
  148. package/lib/generated/policy-statements/iamidentitycenter.d.ts +24 -51
  149. package/lib/generated/policy-statements/iamidentitycenter.js +31 -70
  150. package/lib/generated/policy-statements/identityandaccessmanagementiam.d.ts +40 -0
  151. package/lib/generated/policy-statements/identityandaccessmanagementiam.js +45 -1
  152. package/lib/generated/policy-statements/inspector2.d.ts +179 -0
  153. package/lib/generated/policy-statements/inspector2.js +232 -1
  154. package/lib/generated/policy-statements/interactivevideoservice.d.ts +30 -0
  155. package/lib/generated/policy-statements/interactivevideoservice.js +40 -1
  156. package/lib/generated/policy-statements/iot.d.ts +32 -4
  157. package/lib/generated/policy-statements/iot.js +46 -9
  158. package/lib/generated/policy-statements/iotfleetwise.d.ts +0 -32
  159. package/lib/generated/policy-statements/iotfleetwise.js +1 -39
  160. package/lib/generated/policy-statements/iotmanagedintegrations.d.ts +869 -0
  161. package/lib/generated/policy-statements/iotmanagedintegrations.js +1149 -0
  162. package/lib/generated/policy-statements/iotsitewise.d.ts +133 -0
  163. package/lib/generated/policy-statements/iotsitewise.js +178 -1
  164. package/lib/generated/policy-statements/keymanagementservice.d.ts +1 -1
  165. package/lib/generated/policy-statements/keymanagementservice.js +2 -2
  166. package/lib/generated/policy-statements/keyspacesforapachecassandra.d.ts +51 -2
  167. package/lib/generated/policy-statements/keyspacesforapachecassandra.js +68 -3
  168. package/lib/generated/policy-statements/kinesisdatastreams.d.ts +4 -0
  169. package/lib/generated/policy-statements/kinesisdatastreams.js +5 -1
  170. package/lib/generated/policy-statements/lexv2.d.ts +16 -0
  171. package/lib/generated/policy-statements/lexv2.js +23 -1
  172. package/lib/generated/policy-statements/managedserviceforprometheus.d.ts +129 -45
  173. package/lib/generated/policy-statements/managedserviceforprometheus.js +151 -46
  174. package/lib/generated/policy-statements/marketplacecatalog.d.ts +0 -32
  175. package/lib/generated/policy-statements/marketplacecatalog.js +3 -47
  176. package/lib/generated/policy-statements/marketplacemeteringservice.d.ts +4 -4
  177. package/lib/generated/policy-statements/marketplacemeteringservice.js +5 -5
  178. package/lib/generated/policy-statements/memorydb.d.ts +12 -0
  179. package/lib/generated/policy-statements/memorydb.js +16 -1
  180. package/lib/generated/policy-statements/mq.d.ts +6 -0
  181. package/lib/generated/policy-statements/mq.js +10 -1
  182. package/lib/generated/policy-statements/multi-partyapproval.d.ts +391 -0
  183. package/lib/generated/policy-statements/multi-partyapproval.js +495 -0
  184. package/lib/generated/policy-statements/neptuneanalytics.d.ts +28 -0
  185. package/lib/generated/policy-statements/neptuneanalytics.js +35 -1
  186. package/lib/generated/policy-statements/networkfirewall.d.ts +123 -3
  187. package/lib/generated/policy-statements/networkfirewall.js +163 -5
  188. package/lib/generated/policy-statements/opensearchserverless.d.ts +38 -6
  189. package/lib/generated/policy-statements/opensearchserverless.js +51 -7
  190. package/lib/generated/policy-statements/organizations.d.ts +29 -5
  191. package/lib/generated/policy-statements/organizations.js +36 -6
  192. package/lib/generated/policy-statements/outposts.d.ts +14 -0
  193. package/lib/generated/policy-statements/outposts.js +18 -1
  194. package/lib/generated/policy-statements/parallelcomputingservice.d.ts +5 -5
  195. package/lib/generated/policy-statements/parallelcomputingservice.js +6 -6
  196. package/lib/generated/policy-statements/partnercentralselling.d.ts +18 -16
  197. package/lib/generated/policy-statements/partnercentralselling.js +19 -17
  198. package/lib/generated/policy-statements/qbusiness.d.ts +87 -52
  199. package/lib/generated/policy-statements/qbusiness.js +114 -73
  200. package/lib/generated/policy-statements/qbusinessqapps.d.ts +0 -50
  201. package/lib/generated/policy-statements/qbusinessqapps.js +1 -60
  202. package/lib/generated/policy-statements/quicksight.d.ts +25 -20
  203. package/lib/generated/policy-statements/quicksight.js +35 -23
  204. package/lib/generated/policy-statements/rds.d.ts +59 -1
  205. package/lib/generated/policy-statements/rds.js +65 -2
  206. package/lib/generated/policy-statements/redshift.d.ts +0 -4
  207. package/lib/generated/policy-statements/redshift.js +1 -5
  208. package/lib/generated/policy-statements/repostprivate.d.ts +48 -0
  209. package/lib/generated/policy-statements/repostprivate.js +67 -1
  210. package/lib/generated/policy-statements/resourceexplorer.d.ts +2 -2
  211. package/lib/generated/policy-statements/resourceexplorer.js +7 -5
  212. package/lib/generated/policy-statements/s3.d.ts +187 -175
  213. package/lib/generated/policy-statements/s3.js +202 -176
  214. package/lib/generated/policy-statements/s3express.d.ts +151 -2
  215. package/lib/generated/policy-statements/s3express.js +174 -4
  216. package/lib/generated/policy-statements/s3glacier.d.ts +2 -31
  217. package/lib/generated/policy-statements/s3glacier.js +3 -36
  218. package/lib/generated/policy-statements/s3vectors.d.ts +202 -0
  219. package/lib/generated/policy-statements/s3vectors.js +272 -0
  220. package/lib/generated/policy-statements/sagemaker.d.ts +197 -1
  221. package/lib/generated/policy-statements/sagemaker.js +241 -2
  222. package/lib/generated/policy-statements/sagemakerwithmlflow.d.ts +54 -0
  223. package/lib/generated/policy-statements/sagemakerwithmlflow.js +83 -2
  224. package/lib/generated/policy-statements/savingsplans.d.ts +1 -1
  225. package/lib/generated/policy-statements/savingsplans.js +2 -2
  226. package/lib/generated/policy-statements/secretsmanager.d.ts +22 -22
  227. package/lib/generated/policy-statements/secretsmanager.js +23 -23
  228. package/lib/generated/policy-statements/securityhub.d.ts +295 -6
  229. package/lib/generated/policy-statements/securityhub.js +375 -7
  230. package/lib/generated/policy-statements/securityincidentresponse.d.ts +2 -1
  231. package/lib/generated/policy-statements/securityincidentresponse.js +3 -2
  232. package/lib/generated/policy-statements/securitylake.d.ts +4 -0
  233. package/lib/generated/policy-statements/securitylake.js +5 -1
  234. package/lib/generated/policy-statements/securitytokenservice.d.ts +10 -0
  235. package/lib/generated/policy-statements/securitytokenservice.js +13 -1
  236. package/lib/generated/policy-statements/service-oracledatabase-aws.d.ts +548 -0
  237. package/lib/generated/policy-statements/service-oracledatabase-aws.js +718 -0
  238. package/lib/generated/policy-statements/serviceformanagingawsconsoleuserexperiencecapabilities-.d.ts +41 -0
  239. package/lib/generated/policy-statements/serviceformanagingawsconsoleuserexperiencecapabilities-.js +60 -0
  240. package/lib/generated/policy-statements/servicequotas.d.ts +8 -0
  241. package/lib/generated/policy-statements/servicequotas.js +12 -1
  242. package/lib/generated/policy-statements/shield.d.ts +24 -0
  243. package/lib/generated/policy-statements/shield.js +34 -1
  244. package/lib/generated/policy-statements/shieldnetworksecuritydirector.d.ts +89 -0
  245. package/lib/generated/policy-statements/shieldnetworksecuritydirector.js +128 -0
  246. package/lib/generated/policy-statements/simpleemailservicev2.d.ts +211 -0
  247. package/lib/generated/policy-statements/simpleemailservicev2.js +256 -3
  248. package/lib/generated/policy-statements/snowdevicemanagement.d.ts +4 -0
  249. package/lib/generated/policy-statements/snowdevicemanagement.js +5 -1
  250. package/lib/generated/policy-statements/support.d.ts +24 -0
  251. package/lib/generated/policy-statements/support.js +35 -2
  252. package/lib/generated/policy-statements/systemsmanager.d.ts +27 -0
  253. package/lib/generated/policy-statements/systemsmanager.js +32 -1
  254. package/lib/generated/policy-statements/systemsmanagerforsap.d.ts +51 -3
  255. package/lib/generated/policy-statements/systemsmanagerforsap.js +76 -8
  256. package/lib/generated/policy-statements/transcribe.d.ts +27 -1
  257. package/lib/generated/policy-statements/transcribe.js +28 -2
  258. package/lib/generated/policy-statements/transform.d.ts +93 -8
  259. package/lib/generated/policy-statements/transform.js +117 -9
  260. package/lib/generated/policy-statements/usernotifications.d.ts +34 -2
  261. package/lib/generated/policy-statements/usernotifications.js +51 -5
  262. package/lib/generated/policy-statements/vpclattice.d.ts +6 -0
  263. package/lib/generated/policy-statements/vpclattice.js +10 -1
  264. package/lib/generated/policy-statements/workspaces.d.ts +83 -0
  265. package/lib/generated/policy-statements/workspaces.js +113 -1
  266. package/lib/generated/policy-statements/workspacessecurebrowser.d.ts +77 -0
  267. package/lib/generated/policy-statements/workspacessecurebrowser.js +101 -1
  268. package/lib/generated/policy-statements/workspacesthinclient.d.ts +1 -0
  269. package/lib/generated/policy-statements/workspacesthinclient.js +2 -1
  270. package/lib/generated/policy-statements/x-ray.d.ts +35 -1
  271. package/lib/generated/policy-statements/x-ray.js +40 -2
  272. package/package.json +11 -11
  273. package/lib/generated/policy-statements/gamelift.js +0 -1724
  274. package/lib/generated/policy-statements/iotmanagedintegrationsfeatureofiotdevicemanagement.d.ts +0 -517
  275. package/lib/generated/policy-statements/iotmanagedintegrationsfeatureofiotdevicemanagement.js +0 -708
  276. package/lib/generated/policy-statements/supportrecommendations.d.ts +0 -33
  277. package/lib/generated/policy-statements/supportrecommendations.js +0 -47
@@ -0,0 +1,30 @@
1
+ {
2
+ "permissions": {
3
+ "allow": [
4
+ "Bash(make build)",
5
+ "Bash(make generate)",
6
+ "Bash(SERVICE=* make generate)",
7
+ "Bash(make generate-force)",
8
+ "Bash(SERVICE=* make generate-force)",
9
+ "Bash(make index-managed-policies)",
10
+ "Bash(make package)",
11
+ "Bash(make cdk)",
12
+ "Bash(make uncdk)",
13
+ "Bash(make test)",
14
+ "Bash(make cdk-test)",
15
+ "Bash(make cdk-all)",
16
+ "Bash(make changelog)",
17
+ "Bash(make stats)",
18
+ "Bash(make clean)",
19
+ "Bash(make install)",
20
+ "Bash(make docs)",
21
+ "Bash(make test-typescript)",
22
+ "Bash(make test-typescript-cdk)",
23
+ "Bash(make regenerate-code-example-results)",
24
+ "Bash(make eslint)",
25
+ "Bash(npx tsc:*)"
26
+ ],
27
+ "deny": [],
28
+ "ask": []
29
+ }
30
+ }
package/CLAUDE.md ADDED
@@ -0,0 +1,147 @@
1
+ # CLAUDE.md
2
+
3
+ This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
4
+
5
+ ## Project Overview
6
+
7
+ IAM Floyd is an AWS IAM policy statement generator with a fluent interface. It generates TypeScript classes for all AWS services and their actions, resources, and condition keys from AWS documentation. The project supports both standalone usage (`iam-floyd`) and AWS CDK integration (`cdk-iam-floyd`).
8
+
9
+ ## Core Architecture
10
+
11
+ ### Generated Code Structure
12
+
13
+ - `lib/generated/policy-statements/` - Contains generated TypeScript classes for each AWS service (400+ services)
14
+ - `lib/generated/index.ts` - Main export file that re-exports all service classes
15
+ - `lib/generated/aws-managed-policies/` - Generated AWS managed policies
16
+ - `lib/shared/` - Core shared classes like `PolicyStatement`, `All`, and `Operator`
17
+ - `lib/collection/` - Predefined policy collections and utilities
18
+
19
+ ### Code Generation Pipeline
20
+
21
+ The codebase uses a sophisticated generation system:
22
+
23
+ 1. `bin/generate.ts` - Main generation entry point that orchestrates the process
24
+ 2. `lib/generator/` - Contains the generation logic that scrapes AWS documentation
25
+ 3. Generated files are created in TypeScript and compiled to JavaScript for distribution
26
+
27
+ ### Key Classes
28
+
29
+ - `PolicyStatement` - Base class for all policy statement builders
30
+ - `All` - Global action provider for cross-service policies
31
+ - Service-specific classes (e.g., `S3`, `EC2`, `Lambda`) - Each AWS service gets its own class with methods for actions, resources, and conditions
32
+
33
+ ## Development Commands
34
+
35
+ ### Building and Compilation
36
+
37
+ ```bash
38
+ # Build the project (compiles TypeScript)
39
+ make build
40
+ # Convert project to CDK-variant
41
+ ```
42
+
43
+ ### Code Generation
44
+
45
+ ```bash
46
+ # Generate service classes from AWS documentation
47
+ make generate
48
+ # Force regeneration (ignores time-based cache)
49
+ make generate-force
50
+ # Generate AWS managed policies index
51
+ make index-managed-policies
52
+ ```
53
+
54
+ ### Testing
55
+
56
+ ```bash
57
+ # Run main tests
58
+ make test
59
+ # Run CDK-specific tests
60
+ make cdk-test
61
+ # Convert package to CDK variant and run CDK-specific tests
62
+ make cdk-all
63
+ ```
64
+
65
+ ### Linting and Code Quality
66
+
67
+ ```bash
68
+ # Run ESLint
69
+ make eslint
70
+ # ESLint is configured with TypeScript, Prettier, and deprecation rules
71
+ ```
72
+
73
+ ### Package Management
74
+
75
+ ```bash
76
+ # Create npm package
77
+ make package
78
+ # Clean all generated files and dependencies
79
+ make clean
80
+ # Reinstall dependencies
81
+ make install
82
+ ```
83
+
84
+ ### CDK Variant Management
85
+
86
+ ```bash
87
+ # Convert to CDK variant (modifies package.json and lib structure)
88
+ make cdk
89
+ # Revert CDK changes
90
+ make uncdk
91
+ ```
92
+
93
+ ## Project Structure Patterns
94
+
95
+ ### Dual Package Strategy
96
+
97
+ The project maintains two npm packages from a single codebase:
98
+
99
+ - `iam-floyd` - Standalone IAM policy generator
100
+ - `cdk-iam-floyd` - AWS CDK integration that extends `iam.PolicyStatement`
101
+
102
+ The `bin/mkcdk.ts` script transforms the codebase between variants by modifying imports and package configuration.
103
+
104
+ ### TypeScript Configuration
105
+
106
+ - `tsconfig.json` - Main TypeScript configuration with strict settings
107
+ - `tsconfig.main.json` - Production build configuration
108
+ - `tsconfig.test-*.json` - Test-specific configurations
109
+ - Uses SWC for faster compilation via ts-node
110
+
111
+ ### Generated Code Conventions
112
+
113
+ - All generated classes follow the pattern: `export class ServiceName extends PolicyStatement`
114
+ - Method names correspond to AWS IAM action names (e.g., `getObject()`, `listBuckets()`)
115
+ - Resource and condition methods use fluent interface patterns
116
+ - Generated files include comprehensive JSDoc comments from AWS documentation
117
+
118
+ ## Important Notes
119
+
120
+ ### File Modification Rules
121
+
122
+ - **Never manually edit files in `lib/generated/`** - These are auto-generated and will be overwritten
123
+ - Generated code is created from AWS documentation and should only be updated via the generation process
124
+ - Manual changes should only be made to files in `lib/shared/`, `lib/collection/`, and core infrastructure
125
+
126
+ ### Code Style
127
+
128
+ - ESLint enforces strict TypeScript rules with Prettier formatting
129
+ - Single quotes for strings, except in YAML files
130
+ - Comprehensive type checking with `noImplicitAny` and strict null checks
131
+ - Generated files are excluded from linting (`lib/generated/*` in `.eslintrc`)
132
+
133
+ ### Testing Strategy
134
+
135
+ - Tests are located in the `test/` directory with its own Makefile
136
+ - Supports both unit tests for the main package and CDK integration tests
137
+ - CDK tests include actual deployment and destruction cycles for validation
138
+
139
+ ## Git Commit Conventions
140
+
141
+ This project follows conventional commit patterns:
142
+
143
+ - `chore(deps): description` - Dependency updates
144
+ - `feat: description` - New features
145
+ - `fix: description` - Bug fixes
146
+ - `docs: description` - Documentation changes
147
+ - Simple format: "Updates AWS managed policies" for automated policy updates
package/README.md CHANGED
@@ -16,10 +16,10 @@
16
16
  <!-- stats -->
17
17
  Support for:
18
18
 
19
- - 421 Services
20
- - 18549 Actions
21
- - 1992 Resource Types
22
- - 1957 Condition keys
19
+ - 429 Services
20
+ - 19150 Actions
21
+ - 2051 Resource Types
22
+ - 2131 Condition keys
23
23
  <!-- /stats -->
24
24
 
25
25
  ![EXPERIMENTAL](https://img.shields.io/badge/stability-experimantal-orange?style=for-the-badge)**<br>This is an early version of the package. The API will change while I implement new features. Therefore make sure you use an exact version in your `package.json` before it reaches 1.0.0.**
@@ -70,8 +70,14 @@ export declare class AwsManagedPolicy extends AwsManagedPolicyStatic {
70
70
  AmazonAuroraDSQLFullAccess(): aws_iam.IManagedPolicy;
71
71
  /** Provides read only access to Aurora DSQL */
72
72
  AmazonAuroraDSQLReadOnlyAccess(): aws_iam.IManagedPolicy;
73
+ /** Provides Bedrock Model inference permission to Bedrock agent core memory */
74
+ AmazonBedrockAgentCoreMemoryBedrockModelInferenceExecutionRolePolicy(): aws_iam.IManagedPolicy;
73
75
  /** Provides full access to Amazon Bedrock as well as limited access to related services that are required by it */
74
76
  AmazonBedrockFullAccess(): aws_iam.IManagedPolicy;
77
+ /** Provides limited access to Amazon Bedrock as well as to related services that are required by it */
78
+ AmazonBedrockLimitedAccess(): aws_iam.IManagedPolicy;
79
+ /** Provides limited access to Amazon Bedrock Marketplace as well as to related services that are required by it */
80
+ AmazonBedrockMarketplaceAccess(): aws_iam.IManagedPolicy;
75
81
  /** Provides read only access to Amazon Bedrock */
76
82
  AmazonBedrockReadOnly(): aws_iam.IManagedPolicy;
77
83
  /** Defines the maximum permissions of IAM roles that Amazon Bedrock Studio creates for operating Amazon Bedrock Studio resources. */
@@ -256,6 +262,8 @@ export declare class AwsManagedPolicy extends AwsManagedPolicyStatic {
256
262
  AmazonEC2ContainerServiceRole(): aws_iam.IManagedPolicy;
257
263
  /** Provides full access to Amazon EC2 via the AWS Management Console. */
258
264
  AmazonEC2FullAccess(): aws_iam.IManagedPolicy;
265
+ /** Provides read-only access to scan all supported resource types for relevant data when using DescribeImageReferences. */
266
+ AmazonEC2ImageReferencesAccessPolicy(): aws_iam.IManagedPolicy;
259
267
  /** Provides read only access to Amazon EC2 via the AWS Management Console. */
260
268
  AmazonEC2ReadOnlyAccess(): aws_iam.IManagedPolicy;
261
269
  /** Provides EC2 access to S3 bucket to download revision. This role is needed by the CodeDeploy agent on EC2 instances. */
@@ -276,6 +284,8 @@ export declare class AwsManagedPolicy extends AwsManagedPolicyStatic {
276
284
  AmazonECSFullAccess(): aws_iam.IManagedPolicy;
277
285
  /** Policy to enable Amazon ECS Compute to manage your EC2 instances and related resources as part of ECS managed instances */
278
286
  AmazonECSComputeServiceRolePolicy(): aws_iam.IManagedPolicy;
287
+ /** Provides access to other AWS service resources required to manage load balancers associated with ECS workloads on your behalf. */
288
+ AmazonECSInfrastructureRolePolicyForLoadBalancers(): aws_iam.IManagedPolicy;
279
289
  /** Provides administrative access to Private Certificate Authority, AWS Secrets Manager and other AWS Services required to manage ECS Service Connect TLS features on your behalf. */
280
290
  AmazonECSInfrastructureRolePolicyForServiceConnectTransportLayerSecurity(): aws_iam.IManagedPolicy;
281
291
  /** Provides access to other AWS service resources required to manage volumes associated with ECS workloads on your behalf. */
@@ -298,6 +308,8 @@ export declare class AwsManagedPolicy extends AwsManagedPolicyStatic {
298
308
  AmazonEKSComputePolicy(): aws_iam.IManagedPolicy;
299
309
  /** This policy allows Amazon EKS to manage AWS resources for EKS connector */
300
310
  AmazonEKSConnectorServiceRolePolicy(): aws_iam.IManagedPolicy;
311
+ /** Provides read only access to view the dashboard in the Amazon EKS console. The dashboard aggregates information about multiple clusters and related resources using AWS Organizations. */
312
+ AmazonEKSDashboardConsoleReadOnly(): aws_iam.IManagedPolicy;
301
313
  /** This policy enables the Amazon EKS Dashboard to access and display organization-wide information. The policy allows the EKS Dashboard service to gather information about your AWS Organizations structure and accounts. */
302
314
  AmazonEKSDashboardServiceRolePolicy(): aws_iam.IManagedPolicy;
303
315
  /** Provides access to other AWS service resources that are required to run Amazon EKS pods on AWS Fargate */
@@ -476,6 +488,8 @@ export declare class AwsManagedPolicy extends AwsManagedPolicyStatic {
476
488
  AmazonInspector2AgentlessServiceRolePolicy(): aws_iam.IManagedPolicy;
477
489
  /** Provides full access to Amazon Inspector and access to other related services such as organizations. */
478
490
  AmazonInspector2FullAccess(): aws_iam.IManagedPolicy;
491
+ /** Provides full access to Amazon Inspector and access to other related services such as organizations with restrictive organizational access. */
492
+ AmazonInspector2FullAccessV2(): aws_iam.IManagedPolicy;
479
493
  /** This is a managed policy that customer should attach to their roles to communicate with inspector service for CIS scans */
480
494
  AmazonInspector2ManagedCisPolicy(): aws_iam.IManagedPolicy;
481
495
  /** Provides read only access to the Amazon inspector2 service and relevant support services */
@@ -780,6 +794,8 @@ export declare class AwsManagedPolicy extends AwsManagedPolicyStatic {
780
794
  AmazonS3ReadOnlyAccess(): aws_iam.IManagedPolicy;
781
795
  /** Provides full access to all S3 table buckets. */
782
796
  AmazonS3TablesFullAccess(): aws_iam.IManagedPolicy;
797
+ /** This managed policy grants AWS Lake Formation permissions to act on all table buckets, namespaces, and tables within the account. */
798
+ AmazonS3TablesLakeFormationServiceRole(): aws_iam.IManagedPolicy;
783
799
  /** Provides read only access to all S3 table buckets. */
784
800
  AmazonS3TablesReadOnlyAccess(): aws_iam.IManagedPolicy;
785
801
  /** Service role policy used by the AWS Service Catalog service to provision products from Amazon SageMaker portfolio of products. Grants permissions to a set of related services including CodePipeline, CodeBuild, CodeCommit, Glue, CloudFormation, etc,. */
@@ -816,8 +832,12 @@ export declare class AwsManagedPolicy extends AwsManagedPolicyStatic {
816
832
  AmazonSageMakerGeospatialFullAccess(): aws_iam.IManagedPolicy;
817
833
  /** Provides access to AWS services that are required to run SageMaker GroundTruth Labeling job */
818
834
  AmazonSageMakerGroundTruthExecution(): aws_iam.IManagedPolicy;
835
+ /** This policy provides administrative privileges required for setting up SageMaker HyperPod observability. It enables access to Amazon Managed Prometheus, Amazon Managed Grafana and EKS Addons. The policy also includes broad access to Grafana HTTP APIs through ServiceAccountTokens across all Amazon Managed Grafana workspaces in your account. */
836
+ AmazonSageMakerHyperPodObservabilityAdminAccess(): aws_iam.IManagedPolicy;
819
837
  /** This policy grants permissions to Amazon SageMaker HyperPod to related AWS services such as Amazon EKS, Amazon CloudWatch etc. */
820
838
  AmazonSageMakerHyperPodServiceRolePolicy(): aws_iam.IManagedPolicy;
839
+ /** This policy provides administrative permissions required to set up the SageMaker HyperPod training operator. It enables access to Amazon SageMaker HyperPod and EKS add-ons. The policy includes permissions to describe the SageMaker HyperPod resources in your account. */
840
+ AmazonSageMakerHyperPodTrainingOperatorAccess(): aws_iam.IManagedPolicy;
821
841
  /** Provides access to create Amazon Augmented AI FlowDefinition resources against any Workteam. */
822
842
  AmazonSageMakerMechanicalTurkAccess(): aws_iam.IManagedPolicy;
823
843
  /** This AWS managed policy grants permissions needed to use all Amazon SageMaker Governance features. The policy also provides select access to related services (e.g., S3, KMS). */
@@ -1184,6 +1204,8 @@ export declare class AwsManagedPolicy extends AwsManagedPolicyStatic {
1184
1204
  AWSBatchServiceEventTargetRole(): aws_iam.IManagedPolicy;
1185
1205
  /** Policy for AWS Batch service role which allows access to related services including EC2, Autoscaling, EC2 Container service and Cloudwatch Logs. */
1186
1206
  AWSBatchServiceRole(): aws_iam.IManagedPolicy;
1207
+ /** Provides access for AWS Batch to queue and manage Amazon SageMaker workloads */
1208
+ AWSBatchServiceRolePolicyForSageMaker(): aws_iam.IManagedPolicy;
1187
1209
  /** A service linked role to provide Billing and Cost Management Data Exports access to AWS service data for exporting the data to a target location, such as Amazon S3, on behalf of a customer. */
1188
1210
  AWSBCMDataExportsServiceRolePolicy(): aws_iam.IManagedPolicy;
1189
1211
  /** Use the AWSBillingConductorFullAccess managed policy to allow complete access to AWS Billing Conductor (ABC) console and APIs. This policy allows users to list, create and delete ABC resources. */
@@ -1192,6 +1214,8 @@ export declare class AwsManagedPolicy extends AwsManagedPolicyStatic {
1192
1214
  AWSBillingConductorReadOnlyAccess(): aws_iam.IManagedPolicy;
1193
1215
  /** Allows users to view bills on the Billing Console. */
1194
1216
  AWSBillingReadOnlyAccess(): aws_iam.IManagedPolicy;
1217
+ /** Allows billing service to validate access to billing view data for derived billing views */
1218
+ AWSBillingServiceRolePolicy(): aws_iam.IManagedPolicy;
1195
1219
  /** This policy gives permissions to control AWS resources. For example, to start and stop EC2 or RDS instances by executing AWS Systems Manager (SSM) scripts. */
1196
1220
  AWSBudgetsActionsRolePolicyForResourceAdministrationWithSSM(): aws_iam.IManagedPolicy;
1197
1221
  /** Provides full access to AWS Budgets Actions including using Budgets Actions to control states of running AWS resources via AWS Management Console */
@@ -1428,6 +1452,8 @@ export declare class AwsManagedPolicy extends AwsManagedPolicyStatic {
1428
1452
  AWSDirectoryServiceFullAccess(): aws_iam.IManagedPolicy;
1429
1453
  /** Provides read only access to AWS Directory Service. */
1430
1454
  AWSDirectoryServiceReadOnlyAccess(): aws_iam.IManagedPolicy;
1455
+ /** Policy for the Directory Service Service Linked Role */
1456
+ AWSDirectoryServiceServiceRolePolicy(): aws_iam.IManagedPolicy;
1431
1457
  /** Provides write access to AWS resources required for AWS Discovery Continuous Export */
1432
1458
  AWSDiscoveryContinuousExportFirehosePolicy(): aws_iam.IManagedPolicy;
1433
1459
  /** Allows DMS Fleet Advisor to manage CloudWatch metrics on your behalf. */
@@ -1792,6 +1818,10 @@ export declare class AwsManagedPolicy extends AwsManagedPolicyStatic {
1792
1818
  AWSManagedServicesSelfServiceReportingServiceRolePolicy(): aws_iam.IManagedPolicy;
1793
1819
  /** Allows AWS Managed Services to manage deployment toolkit on your behalf. */
1794
1820
  AWSManagedServicesDeploymentToolkitPolicy(): aws_iam.IManagedPolicy;
1821
+ /** Provides full access to configure and customize the AWS Management Console */
1822
+ AWSManagementConsoleAdministratorAccess(): aws_iam.IManagedPolicy;
1823
+ /** Grants access to essential AWS Management Console features and user experience (UX) capabilities for non-administrative users. */
1824
+ AWSManagementConsoleBasicUserAccess(): aws_iam.IManagedPolicy;
1795
1825
  /** Allows AWS Marketplace to copy your Amazon Machine Images (AMIs) in order to list them on AWS Marketplace */
1796
1826
  AWSMarketplaceAmiIngestion(): aws_iam.IManagedPolicy;
1797
1827
  /** Allows AWS Marketplace to create and manage seller deployment parameters for the products that you subscribe to on AWS Marketplace. */
@@ -1878,20 +1908,8 @@ export declare class AwsManagedPolicy extends AwsManagedPolicyStatic {
1878
1908
  AWSNetworkManagerServiceRolePolicy(): aws_iam.IManagedPolicy;
1879
1909
  /** Provides access to manage AWS Config Configuration Recorder, manage AWS Config Configuration Aggregator, create AWS Config Service Linked Role for Configuration Recorder functionality, consume recorder configuration data, and read AWS Organizations data for organizational features. */
1880
1910
  AWSObservabilityAdminServiceRolePolicy(): aws_iam.IManagedPolicy;
1881
- /** Provides full access to AWS OpsWorks. */
1882
- AWSOpsWorksFullAccess(): aws_iam.IManagedPolicy;
1883
- /** Enables OpsWorks instances with the CWLogs integration enabled to ship logs and create required log groups */
1884
- AWSOpsWorksCloudWatchLogs(): aws_iam.IManagedPolicy;
1885
- /** Provides S3 access for instances launched by OpsWorks CM. */
1886
- AWSOpsWorksCMInstanceProfileRole(): aws_iam.IManagedPolicy;
1887
- /** Service Role Policy to be used for Creating OpsWorks CM servers. */
1888
- AWSOpsWorksCMServiceRole(): aws_iam.IManagedPolicy;
1889
- /** Provides access for an Amazon EC2 instance to register with an AWS OpsWorks stack. */
1890
- AWSOpsWorksInstanceRegistration(): aws_iam.IManagedPolicy;
1891
- /** Policy to enable registration of EC2 instances via the OpsWorks CLI */
1892
- AWSOpsWorksRegisterCLIEC2(): aws_iam.IManagedPolicy;
1893
- /** Policy to enable registration of On-Premises instances via the OpsWorks CLI */
1894
- AWSOpsWorksRegisterCLIOnPremises(): aws_iam.IManagedPolicy;
1911
+ /** Provides access to manage AWS Config recorder resource and telemetry settings on AWS resources including logs, metrics. */
1912
+ AWSObservabilityAdminTelemetryEnablementServiceRolePolicy(): aws_iam.IManagedPolicy;
1895
1913
  /** Provides full access to AWS Organizations. */
1896
1914
  AWSOrganizationsFullAccess(): aws_iam.IManagedPolicy;
1897
1915
  /** Provides read-only access to AWS Organizations. */
@@ -1926,6 +1944,8 @@ export declare class AwsManagedPolicy extends AwsManagedPolicyStatic {
1926
1944
  AWSPartnerCentralSellingResourceSnapshotJobExecutionRolePolicy(): aws_iam.IManagedPolicy;
1927
1945
  /** This policy can be used to grant read-only access to APIs that can read service metadata for services in your AWS account. You can use this policy to provide your partners in the Partner-Led Support Program with access to the services specified in the permissions details section below. */
1928
1946
  AWSPartnerLedSupportReadOnlyAccess(): aws_iam.IManagedPolicy;
1947
+ /** Grants permission to AWS PCS compute nodes to connect to AWS PCS clusters. */
1948
+ AWSPCSComputeNodePolicy(): aws_iam.IManagedPolicy;
1929
1949
  /** Grants permissions to PCS to manage resources on your behalf. */
1930
1950
  AWSPCSServiceRolePolicy(): aws_iam.IManagedPolicy;
1931
1951
  /** Provides full access to AWS Price List Service. */
@@ -2000,6 +2020,10 @@ export declare class AwsManagedPolicy extends AwsManagedPolicyStatic {
2000
2020
  AWSQuickSetupSSMLifecycleManagementExecutionPolicy(): aws_iam.IManagedPolicy;
2001
2021
  /** This policy grants permissions that allow Systems Manager to create prerequisites such as IAM roles required for Systems Manager onboarding. */
2002
2022
  AWSQuickSetupSSMManageResourcesExecutionPolicy(): aws_iam.IManagedPolicy;
2023
+ /** This policy grants permissions that allow principals to run the AWSQuickSetupType-StartSSMAssociations Automation runbook, which starts State Manager Associations. */
2024
+ AWSQuickSetupStartSSMAssociationsExecutionPolicy(): aws_iam.IManagedPolicy;
2025
+ /** The managed policy AWSQuickSetupStartStopInstancesExecutionPolicy provides permissions for Quick Setup to start and stop Amazon EC2 instances on a schedule. This policy is used with the Quick Setup scheduler configuration type. */
2026
+ AWSQuickSetupStartStopInstancesExecutionPolicy(): aws_iam.IManagedPolicy;
2003
2027
  /** Provides the set of permissions required to perform QuickSight Asset Bundle Export Operations */
2004
2028
  AWSQuickSightAssetBundleExportPolicy(): aws_iam.IManagedPolicy;
2005
2029
  /** Provides the set of permissions required to perform QuickSight Asset Bundle Import Operations */
@@ -2064,6 +2088,10 @@ export declare class AwsManagedPolicy extends AwsManagedPolicyStatic {
2064
2088
  AWSRoboMakerServicePolicy(): aws_iam.IManagedPolicy;
2065
2089
  /** RoboMaker service policy */
2066
2090
  AWSRoboMakerServiceRolePolicy(): aws_iam.IManagedPolicy;
2091
+ /** Provides all permissions to IAM Roles Anywhere resources, including but not limited to: CreateProfile, DeleteTrustAnchor, DisableCRL, ResetNotificationSettings. */
2092
+ AWSRolesAnywhereFullAccess(): aws_iam.IManagedPolicy;
2093
+ /** Provides read-only permissions to IAM Roles Anywhere resources, including but not limited to: GetTrustAnchor, ListProfiles, GetCRL. There will be no other permissions for other services included in this policy. */
2094
+ AWSRolesAnywhereReadOnly(): aws_iam.IManagedPolicy;
2067
2095
  /** Allows IAM Roles Anywhere to publish service/usage metrics to CloudWatch and check the status of Private Certificate Authorities on your behalf. */
2068
2096
  AWSRolesAnywhereServicePolicy(): aws_iam.IManagedPolicy;
2069
2097
  /** Allow Amazon S3 on Outposts service to manage EC2 network resources on your behalf. */
@@ -2248,6 +2276,8 @@ export declare class AwsManagedPolicy extends AwsManagedPolicyStatic {
2248
2276
  AWSTransferLoggingAccess(): aws_iam.IManagedPolicy;
2249
2277
  /** Provide readonly access to AWS Transfer services. */
2250
2278
  AWSTransferReadOnlyAccess(): aws_iam.IManagedPolicy;
2279
+ /** Enables the AWS Transform service to deploy transformed .NET applications by creating and managing AWS resources. This policy grants permissions to provision infrastructure, manage compute resources, and configure deployment settings across various AWS services. */
2280
+ AWSTransformApplicationDeploymentPolicy(): aws_iam.IManagedPolicy;
2251
2281
  /** Provides full access to AWS Trusted Advisor Priority. This policy also enables the user to add Trusted Advisor as a trusted service with AWS Organizations and to specify delegated administrator accounts for Trusted Advisor Priority. */
2252
2282
  AWSTrustedAdvisorPriorityFullAccess(): aws_iam.IManagedPolicy;
2253
2283
  /** Provides read-only access to AWS Trusted Advisor Priority. This includes permission to view the delegated administrator accounts. */
@@ -2300,10 +2330,16 @@ export declare class AwsManagedPolicy extends AwsManagedPolicyStatic {
2300
2330
  AWSXrayWriteOnlyAccess(): aws_iam.IManagedPolicy;
2301
2331
  /** Provides administrative access for ARC zonal shift practice runs, and access to CloudWatch alarm statuses to monitor practice runs. */
2302
2332
  AWSZonalAutoshiftPracticeRunSLRPolicy(): aws_iam.IManagedPolicy;
2333
+ /** Provides read-only access to the APIs needed to support zone-group access-management for organizations. */
2334
+ AWSZoneGroupAccessManagementServiceRolePolicy(): aws_iam.IManagedPolicy;
2303
2335
  /** Provides access for the AWS Batch service to manage the required resources, including Amazon EC2 and Amazon ECS resources. */
2304
2336
  BatchServiceRolePolicy(): aws_iam.IManagedPolicy;
2337
+ /** Provides full access to Bedrock AgentCore as well as limited access to related services */
2338
+ BedrockAgentCoreFullAccess(): aws_iam.IManagedPolicy;
2305
2339
  /** Grants permissions for billing and cost management. This includes viewing account usage and viewing and modifying budgets and payment methods. */
2306
2340
  Billing(): aws_iam.IManagedPolicy;
2341
+ /** Allows Budgets to verify access to Billing Views shared across account boundaries. */
2342
+ BudgetsServiceRolePolicy(): aws_iam.IManagedPolicy;
2307
2343
  /** Amazon Certificate Manager Service Role Policy */
2308
2344
  CertificateManagerServiceRolePolicy(): aws_iam.IManagedPolicy;
2309
2345
  /** Policy to enable AWS Client VPN to manage your Client VPN endpoint connections. */
@@ -2530,6 +2566,8 @@ export declare class AwsManagedPolicy extends AwsManagedPolicyStatic {
2530
2566
  KafkaConnectServiceRolePolicy(): aws_iam.IManagedPolicy;
2531
2567
  /** IAM service linked role policy for Kafka. */
2532
2568
  KafkaServiceRolePolicy(): aws_iam.IManagedPolicy;
2569
+ /** Grants the required permissions to Amazon Keyspaces for Change Data Capture */
2570
+ KeyspacesCDCServiceRolePolicy(): aws_iam.IManagedPolicy;
2533
2571
  /** Permissions required by Keyspaces for cross-region data replication */
2534
2572
  KeyspacesReplicationServiceRolePolicy(): aws_iam.IManagedPolicy;
2535
2573
  /** Policy to grant temporary data access to Lake Formation resources */
@@ -2554,6 +2592,10 @@ export declare class AwsManagedPolicy extends AwsManagedPolicyStatic {
2554
2592
  MigrationHubSMSAccessServiceRolePolicy(): aws_iam.IManagedPolicy;
2555
2593
  /** Policy for AWS Monitron service linked role granting access to required customer resources. */
2556
2594
  MonitronServiceRolePolicy(): aws_iam.IManagedPolicy;
2595
+ /** Provides full access to Multi-party approval. This policy also includes related permissions to AWS Organizations and AWS IAM Identity for managing approval teams and identity sources. */
2596
+ MultiPartyApprovalFullAccess(): aws_iam.IManagedPolicy;
2597
+ /** Provides read-only access to Multi-party approval. This policy also includes related read permission to AWS Organizations and AWS IAM Identity for approval teams and identity sources. */
2598
+ MultiPartyApprovalReadOnlyAccess(): aws_iam.IManagedPolicy;
2557
2599
  /** Provides full access to manage Amazon Neptune using the AWS Console. Note this policy also grants full access to publish on all SNS topics within the account, permissions to create and edit Amazon EC2 instances and VPC configurations, permissions to view and list keys on Amazon KMS, and full access to Amazon RDS. For more information, see https://aws.amazon.com/neptune/faqs/. */
2558
2600
  NeptuneConsoleFullAccess(): aws_iam.IManagedPolicy;
2559
2601
  /** Provides full access to Amazon Neptune. Note this policy also grants full access to publish on all SNS topics within the account and full access to Amazon RDS. For more information, see https://aws.amazon.com/neptune/faqs/. */
@@ -2616,6 +2658,10 @@ export declare class AwsManagedPolicy extends AwsManagedPolicyStatic {
2616
2658
  ROSAManageSubscription(): aws_iam.IManagedPolicy;
2617
2659
  /** Allows Red Hat OpenShift Service on AWS (ROSA) to manage cluster EC2 instances as worker nodes, including permission to configure security groups and tag instances and volumes. This policy also allows for the use of EC2 instances with disk encryption provided by AWS Key Management Service (KMS) keys. */
2618
2660
  ROSANodePoolManagementPolicy(): aws_iam.IManagedPolicy;
2661
+ /** Allows the Red Hat OpenShift Service on AWS (ROSA) installer to configure VPC Endpoints and Security Groups. Intended to be used on a shared VPC. */
2662
+ ROSASharedVPCEndpointPolicy(): aws_iam.IManagedPolicy;
2663
+ /** Allows the Red Hat OpenShift Service on AWS (ROSA) installer to configure Route53 records. Intended to be used on a shared VPC. */
2664
+ ROSASharedVPCRoute53Policy(): aws_iam.IManagedPolicy;
2619
2665
  /** Provides ROSA site reliability engineering (SRE) the permissions needed to initially observe, diagnose, and support AWS resources associated with Red Hat OpenShift Service on AWS (ROSA) clusters, including the ability to change ROSA cluster node state. */
2620
2666
  ROSASRESupportPolicy(): aws_iam.IManagedPolicy;
2621
2667
  /** Allows Red Hat OpenShift Service on AWS (ROSA) worker nodes in your account read-only access to Amazon EC2 instances and AWS Regions for compute node lifecycle management. */
@@ -2628,6 +2674,14 @@ export declare class AwsManagedPolicy extends AwsManagedPolicyStatic {
2628
2674
  S3StorageLensServiceRolePolicy(): aws_iam.IManagedPolicy;
2629
2675
  /** Provides access required to unlock a S3 bucket policy using the Security Token Service (STS) AssumeRoot API. Use this managed policy only with the STS AssumeRoot action. */
2630
2676
  S3UnlockBucketPolicy(): aws_iam.IManagedPolicy;
2677
+ /** Provides initial administrative and individual setup privileges for Amazon SageMaker Unified Studio via the AWS Management Console and SDK. Allows launching of SageMaker Unified Studio Portal. */
2678
+ SageMakerStudioAdminIAMConsolePolicy(): aws_iam.IManagedPolicy;
2679
+ /** Administrative execution policy for using IAM roles with SageMaker Unified Studio. Allows admins to provision, manage and access resources in your account (excluding access to data resources) for IAM-based usage of SageMaker Unified Studio. */
2680
+ SageMakerStudioAdminIAMDefaultExecutionPolicy(): aws_iam.IManagedPolicy;
2681
+ /** Administrative execution policy for using IAM roles with SageMaker Unified Studio. Allows admins to provision, manage and access resources in the local account (including broad access to all APIs in data services like S3, Glue, CloudWatch Logs, and others) for IAM-based usage of SageMaker Unified Studio. */
2682
+ SageMakerStudioAdminIAMPermissiveExecutionPolicy(): aws_iam.IManagedPolicy;
2683
+ /** This IAM policy grants an IAM role full access to AWS Glue Data Catalog (metadata) and Amazon S3 (actual data) for data lake operations, with access scoped by account, and role tags. */
2684
+ SageMakerStudioAdminProjectUserRolePolicy(): aws_iam.IManagedPolicy;
2631
2685
  /** Allows Amazon Bedrock Agents to access Amazon Bedrock models and other resources attached to an agent in SageMaker Studio. */
2632
2686
  SageMakerStudioBedrockAgentServiceRolePolicy(): aws_iam.IManagedPolicy;
2633
2687
  /** Provides access to an Amazon Bedrock chat agent app's configuration and Amazon Bedrock agent in SageMaker Studio. */
@@ -2664,6 +2718,12 @@ export declare class AwsManagedPolicy extends AwsManagedPolicyStatic {
2664
2718
  SageMakerStudioProjectUserRolePolicy(): aws_iam.IManagedPolicy;
2665
2719
  /** Amazon SageMaker Studio uses this policy when running query executions on federated connections. */
2666
2720
  SageMakerStudioQueryExecutionRolePolicy(): aws_iam.IManagedPolicy;
2721
+ /** Provides individual setup privileges for Amazon SageMaker Unified Studio via the AWS Management Console and SDK. Allows launching of SageMaker Unified Studio Portal. */
2722
+ SageMakerStudioUserIAMConsolePolicy(): aws_iam.IManagedPolicy;
2723
+ /** Execution policy for using IAM roles with SageMaker Unified Studio. Allows users to access resources in the local account (excluding access to data resources) for IAM-based usage of SageMaker Unified Studio. */
2724
+ SageMakerStudioUserIAMDefaultExecutionPolicy(): aws_iam.IManagedPolicy;
2725
+ /** Execution policy for using IAM roles with SageMaker Unified Studio. Allows users to access resources in your account (including broad access to all APIs in data services like S3, Glue, CloudWatch Logs, and others) for IAM-based usage of SageMaker Unified Studio. */
2726
+ SageMakerStudioUserIAMPermissiveExecutionPolicy(): aws_iam.IManagedPolicy;
2667
2727
  /** Provides read/write access to AWS Secrets Manager via the AWS Management Console. Note: this exludes IAM actions, so combine with IAMFullAccess if rotation configuration is required. */
2668
2728
  SecretsManagerReadWrite(): aws_iam.IManagedPolicy;
2669
2729
  /** The security audit template grants access to read security configuration metadata. It is useful for software that audits the configuration of an AWS account. */