cartography 0.104.0rc3__py3-none-any.whl → 0.105.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 cartography might be problematic. Click here for more details.

Files changed (43) hide show
  1. cartography/_version.py +2 -2
  2. cartography/cli.py +26 -1
  3. cartography/client/aws/__init__.py +19 -0
  4. cartography/client/aws/ecr.py +51 -0
  5. cartography/config.py +8 -0
  6. cartography/data/indexes.cypher +0 -3
  7. cartography/data/jobs/cleanup/aws_import_lambda_cleanup.json +1 -1
  8. cartography/graph/cleanupbuilder.py +151 -41
  9. cartography/intel/aws/acm.py +124 -0
  10. cartography/intel/aws/cloudtrail.py +3 -38
  11. cartography/intel/aws/ecr.py +8 -2
  12. cartography/intel/aws/iam.py +1 -1
  13. cartography/intel/aws/lambda_function.py +1 -1
  14. cartography/intel/aws/resources.py +2 -2
  15. cartography/intel/aws/s3.py +195 -4
  16. cartography/intel/aws/sqs.py +36 -90
  17. cartography/intel/entra/__init__.py +11 -0
  18. cartography/intel/entra/groups.py +151 -0
  19. cartography/intel/entra/ou.py +21 -5
  20. cartography/intel/trivy/__init__.py +161 -0
  21. cartography/intel/trivy/scanner.py +363 -0
  22. cartography/models/aws/acm/certificate.py +75 -0
  23. cartography/models/aws/cloudtrail/trail.py +24 -0
  24. cartography/models/aws/s3/notification.py +24 -0
  25. cartography/models/aws/secretsmanager/secret_version.py +0 -2
  26. cartography/models/aws/sqs/__init__.py +0 -0
  27. cartography/models/aws/sqs/queue.py +89 -0
  28. cartography/models/core/nodes.py +15 -2
  29. cartography/models/entra/group.py +91 -0
  30. cartography/models/trivy/__init__.py +0 -0
  31. cartography/models/trivy/findings.py +66 -0
  32. cartography/models/trivy/fix.py +66 -0
  33. cartography/models/trivy/package.py +71 -0
  34. cartography/sync.py +2 -0
  35. {cartography-0.104.0rc3.dist-info → cartography-0.105.0.dist-info}/METADATA +3 -2
  36. {cartography-0.104.0rc3.dist-info → cartography-0.105.0.dist-info}/RECORD +41 -29
  37. cartography/intel/aws/efs.py +0 -93
  38. cartography/models/aws/efs/mount_target.py +0 -52
  39. /cartography/models/aws/{efs → acm}/__init__.py +0 -0
  40. {cartography-0.104.0rc3.dist-info → cartography-0.105.0.dist-info}/WHEEL +0 -0
  41. {cartography-0.104.0rc3.dist-info → cartography-0.105.0.dist-info}/entry_points.txt +0 -0
  42. {cartography-0.104.0rc3.dist-info → cartography-0.105.0.dist-info}/licenses/LICENSE +0 -0
  43. {cartography-0.104.0rc3.dist-info → cartography-0.105.0.dist-info}/top_level.txt +0 -0
@@ -1,19 +1,20 @@
1
1
  cartography/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
2
  cartography/__main__.py,sha256=y5iqUrj4BmqZfjeDT-9balzpXeMARgHeIedRMRI1gr8,100
3
- cartography/_version.py,sha256=LbNL0JS95T6BluJV0C6qKUgT52BiUmmtVsrO5SkFxbM,525
4
- cartography/cli.py,sha256=FCm81J7u_yjOuyuaXiXmZ-7v2i-rl3T6nS_xvnX5ndQ,40226
5
- cartography/config.py,sha256=WlvHWN9zHYNcytMsqgCB2yvR4Llvx-PPFoj-TTUN-DA,13906
3
+ cartography/_version.py,sha256=gxdpR-gLQKp1kUASq4M2OLJ3WIBhZ7POeIyhaomuOPY,515
4
+ cartography/cli.py,sha256=LIH9uY6LyctL8VDsrllxFvU17f1vAAhXQVsQ83wGvRI,41072
5
+ cartography/config.py,sha256=Magq4iNynKdIl3hYjrxlikXfVLxryf73t41L2bAyUPI,14298
6
6
  cartography/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
7
7
  cartography/stats.py,sha256=N95prYlSzY8U52VFgKIDgOWOawu5Mig4N7GcVp3binQ,4420
8
- cartography/sync.py,sha256=eeiIShkhjcAKd3WGvXMn8VQwKOdE0Gq1p3J2QxJTt1Q,13306
8
+ cartography/sync.py,sha256=y9ByjTesFr7VY4EsAO4C9nZ9uXdWK3H_zmg4Au9e9EQ,13401
9
9
  cartography/util.py,sha256=F1-sQrU3x8HdDV2JDTllJvYNy7CKBNg7W93GMqXSjFU,15281
10
10
  cartography/client/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
11
- cartography/client/aws/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
11
+ cartography/client/aws/__init__.py,sha256=Zj7nX21QQELwPLZlpldm_22IiXZ1VFsEFQbWX_e4okU,558
12
+ cartography/client/aws/ecr.py,sha256=04IXnuEAauyO5Mx9Wmt79WdUnYDhYsk2QSOnwE5_BeM,1664
12
13
  cartography/client/aws/iam.py,sha256=dYsGikc36DEsSeR2XVOVFFUDwuU9yWj_EVkpgVYCFgM,1293
13
14
  cartography/client/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
14
15
  cartography/client/core/tx.py,sha256=1kvITtFseyG4C8h5xUxYEvhatejMs71oE0gCjjbDHkQ,10950
15
16
  cartography/data/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
16
- cartography/data/indexes.cypher,sha256=aUHMiLPsEt09W61GyjJHfpkRJ07S2sGcpU9IReYxKC0,26551
17
+ cartography/data/indexes.cypher,sha256=7W1ZtqiSxDXqm9yNM_mSJXUAfXUhhQgH3k4zaudPIZc,26378
17
18
  cartography/data/permission_relationships.yaml,sha256=RuKGGc_3ZUQ7ag0MssB8k_zaonCkVM5E8I_svBWTmGc,969
18
19
  cartography/data/jobs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
19
20
  cartography/data/jobs/analysis/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -45,7 +46,7 @@ cartography/data/jobs/cleanup/aws_import_groups_policy_cleanup.json,sha256=U_yKH
45
46
  cartography/data/jobs/cleanup/aws_import_identity_center_cleanup.json,sha256=PSyerOlZkiLaWYFa3Hg1mqqX83FGwj36-p0BF1lR-Q8,650
46
47
  cartography/data/jobs/cleanup/aws_import_internet_gateways_cleanup.json,sha256=SHHrR9pX0V1r-RxwJggHGeFA7JVQAAK02D-n-vqOvdU,287
47
48
  cartography/data/jobs/cleanup/aws_import_kms_cleanup.json,sha256=NU9doXVk4UmAY59aYnld95Wc1b8DrfCbvJltUsATxko,1441
48
- cartography/data/jobs/cleanup/aws_import_lambda_cleanup.json,sha256=ntjEpy_WyLxD66Dxydi9GliBVK0DVZWza6908KYeoyA,2268
49
+ cartography/data/jobs/cleanup/aws_import_lambda_cleanup.json,sha256=h219-cmOY19RjcGZiecM21HS52hw4S5EXFVAxIpyyTw,2267
49
50
  cartography/data/jobs/cleanup/aws_import_principals_cleanup.json,sha256=yrI1FISGTlgaUZXFSj7XUCNzRoLqkcavLur4Lw4zSmU,1363
50
51
  cartography/data/jobs/cleanup/aws_import_rds_clusters_cleanup.json,sha256=aHpM8qvN7TNTUJMQjOlv5-lxz0BzJl-tKIj_m5i_uqc,1166
51
52
  cartography/data/jobs/cleanup/aws_import_rds_instances_cleanup.json,sha256=vmulpaxqqzBYSTtS6lYzbm55ksYjCab3UeRI0l13ktY,2733
@@ -130,7 +131,7 @@ cartography/driftdetect/shortcut.py,sha256=0AvX9vZGNRWeLiRqxU7eOOo77gcfufHx4IHZv
130
131
  cartography/driftdetect/storage.py,sha256=xvDY4qn6jDhDpBvc8hFXXpbcYIbMNqkm3wX5LBf28u0,1549
131
132
  cartography/driftdetect/util.py,sha256=Lqxv8QoFn3_3Fz18qCOjkjJ6yBwgrHjrxXmArBAEdkc,929
132
133
  cartography/graph/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
133
- cartography/graph/cleanupbuilder.py,sha256=gyPTnlRJUoA0kF4PvmtFC346Jet4CFPHyvcRdIcRiTI,9598
134
+ cartography/graph/cleanupbuilder.py,sha256=T71aR_IVp4oLu5SQb1miwn9Is8tqg25JJm4SkEdZ-80,14542
134
135
  cartography/graph/context.py,sha256=RGxGb8EnxowcqjR0nFF86baNhgRHeUF9wjIoFUoG8LU,1230
135
136
  cartography/graph/job.py,sha256=5e1L6D3RCM2WgEgbm7CUeqEhMkgw-TEh2cl1-xmzlwQ,7739
136
137
  cartography/graph/querybuilder.py,sha256=Pd_WVJtZB_vh9VR7cm9PAS5Fl4qW783Hvq5njW5XMxA,21814
@@ -145,37 +146,37 @@ cartography/intel/anthropic/users.py,sha256=8tE18LVlweG2BhdMPdicEw-_WCmFs5AR6cyF
145
146
  cartography/intel/anthropic/util.py,sha256=m2OopxCC6chCwOxUXmc9nWW--nOlYyBL_Nc3Kd4CEwY,1847
146
147
  cartography/intel/anthropic/workspaces.py,sha256=_t2kdGIFceDziC_BqIJa9-nLWIoWJbPoFNX1JYqbQ-w,2544
147
148
  cartography/intel/aws/__init__.py,sha256=ZF59ftkFFnGKXxKvm0ONg3YNQGc38xhDxAH78DufoXE,12130
149
+ cartography/intel/aws/acm.py,sha256=a_i2pYPpocjlL8itwlcrmg8KrSLfjcmrkhcrPP-Omj8,3827
148
150
  cartography/intel/aws/apigateway.py,sha256=hOYVSY70DbrEfhi9gkX7PAMtg9WiPE0Pbp2wqGes7Vs,12198
149
- cartography/intel/aws/cloudtrail.py,sha256=5PwogjaraliVB7pgy-eCk5AD_OjJtRPUKdM0vzZ9M8Q,3579
151
+ cartography/intel/aws/cloudtrail.py,sha256=kip3O39ulRmuo9RpfkofzUcGnkNnF8ksD7hP0Qe75-A,2441
150
152
  cartography/intel/aws/cloudwatch.py,sha256=k9A8h__dE8N2LeF0o8lpJcNqNAaTCG1Ip3PgAF9mnlQ,2488
151
153
  cartography/intel/aws/config.py,sha256=IIICicLQ0OTT3H3o8LDakIkA1BPUMwSyzpKonet-PaY,7658
152
154
  cartography/intel/aws/dynamodb.py,sha256=VvvjeUgi1ZrqY9flXIQnfhhaSVSEqXXHW6T9917VLBk,5728
153
- cartography/intel/aws/ecr.py,sha256=ucIzMm-Gazo7tRuuKmipqPqsOrJ23o7aK-ZEjxdY6Qg,8013
155
+ cartography/intel/aws/ecr.py,sha256=7a9EHZru6AUIGE_6MJ4h4_ZmrvBxsXaerCHtGr59lJ0,8393
154
156
  cartography/intel/aws/ecs.py,sha256=LRaVdu-6aFOoO8ctHJaJl5O1ieKAVUjGp-KGUAApn20,23965
155
- cartography/intel/aws/efs.py,sha256=u5vOib8E5ZvWeMEzTIHLkczxLv-G4CERX5EAqlmOyqI,2486
156
157
  cartography/intel/aws/eks.py,sha256=bPItyEj5q0nSDltJrr0S5MIrTPV0fK3xkqF6EV8fcqA,3759
157
158
  cartography/intel/aws/elasticache.py,sha256=dpRJCYxgUW2ImgGMt4L54xFil8apUoJxZq6hpewXxAE,4590
158
159
  cartography/intel/aws/elasticsearch.py,sha256=8X_Rp1zejkvXho0Zz_Cr4g-w9IpompdYRc-YS595Aso,8645
159
160
  cartography/intel/aws/emr.py,sha256=EJoKjHQP7-F_A1trUNU05Sb42yNR1i0C9VIpGcCfAXw,3662
160
- cartography/intel/aws/iam.py,sha256=qak7ZEvhjEWgKTolozbEF8njv2v6kq7IKZO5rvfTXXM,34323
161
+ cartography/intel/aws/iam.py,sha256=bkyIzWw2OC4MHxuoCvTiZ5eEGEQhz2asiUgY_tkX2GY,34322
161
162
  cartography/intel/aws/iam_instance_profiles.py,sha256=QUyu30xid60BFaemp-q0y9FgNsHaIQyQnQ8gHUzWC4k,2211
162
163
  cartography/intel/aws/identitycenter.py,sha256=J5Qnt3FddWBrJUVvQDdhOZdOErri0tJ55VJu8C9fEiY,9212
163
164
  cartography/intel/aws/inspector.py,sha256=oF-QLWN2Bt73YsuR5RW5wnPNnATkd4zUuLZumtZeO8c,9957
164
165
  cartography/intel/aws/kms.py,sha256=RtCxNG-Den-f4Il-NO3YL_-BFUmg1qFt4lNucue9SQM,12130
165
- cartography/intel/aws/lambda_function.py,sha256=0ObieuMNOxzxtabczmlM2WuCrb0xomAJC8Sdr5yGhP4,10390
166
+ cartography/intel/aws/lambda_function.py,sha256=cutCsMnvyJB8vKUP0fHORrhijw944cXSoLKOHYdi6SM,10389
166
167
  cartography/intel/aws/organizations.py,sha256=m5qk60N6pe7iKLN-Rtfg9aYv7OozoloSkcsuePd-RGs,4680
167
168
  cartography/intel/aws/permission_relationships.py,sha256=LTmnHS6zk9hcdL548V5ka3Ey-6NsFjy1JYZTfRyB9Ys,15647
168
169
  cartography/intel/aws/rds.py,sha256=mjGrn7ftpk_Xdm-jBdP-PXyGhtv3zAEpYDPs-SaKwiE,26542
169
170
  cartography/intel/aws/redshift.py,sha256=FGcCzcnm1OOrbJvLqtR1DwWVn1pt4Y6_eKkTUERT7Ws,7108
170
171
  cartography/intel/aws/resourcegroupstaggingapi.py,sha256=CebHaVLh8cr4CDYz54p5MGANPuE5Ni-_nFC78Znh4uU,10807
171
- cartography/intel/aws/resources.py,sha256=79alRrmn-T3G9uRKxUVAwxdWPMWV32ncUPb5KbBVWKY,3959
172
+ cartography/intel/aws/resources.py,sha256=UJ0J_akiGW2LTU6Nj4L6NMS0zgn34Z7EwGcHRcYRmZY,3971
172
173
  cartography/intel/aws/route53.py,sha256=-AZDD4zVR5pQ_c1bx87UZuzbC0mDiI-YS_8llFMZkwI,14424
173
- cartography/intel/aws/s3.py,sha256=2mLYIPwyZu2oBxP_zFbTi713cgjuOkjIjjwxxCDE7mo,27581
174
+ cartography/intel/aws/s3.py,sha256=Da_5NYvQ7MN1AIN7CK9XXlVZo0fPdNHkqBZY1JWnHH4,33598
174
175
  cartography/intel/aws/s3accountpublicaccessblock.py,sha256=XkqHnbj9ODRcc7Rbl4swi03qvw_T-7Bnx3BHpTmlxio,4688
175
176
  cartography/intel/aws/secretsmanager.py,sha256=TelS5Th0Yooj-cv243VHWu-xEadhfyP9x7B1sjPWDIM,7606
176
177
  cartography/intel/aws/securityhub.py,sha256=oR808vrEAHsHH79u8hf-hkVTBcdNd6ZObCeNGD_xnSo,2324
177
178
  cartography/intel/aws/sns.py,sha256=R92aSStNxr8Qu3iVFShSXeTBXOOkebiQMXNoQM9HjCc,4793
178
- cartography/intel/aws/sqs.py,sha256=HUZZlNdyjt1ZIkSaTEDUXsWuIVxGxTC0ypNSsRvXKVQ,6519
179
+ cartography/intel/aws/sqs.py,sha256=RUR8chO1oU5esZbHzKyhOO4L7LXmH78G6kGGtUCqB5Q,4096
179
180
  cartography/intel/aws/ssm.py,sha256=fHcx929my-Lb6fgJavyWLTBtPV6onaY7_GPnhKsv8hk,8173
180
181
  cartography/intel/aws/ec2/__init__.py,sha256=Lh_keh8WH-GNxxT4-Gw5MNiZFhDHe2kr3AChPgELa9w,346
181
182
  cartography/intel/aws/ec2/auto_scaling_groups.py,sha256=s2XP1HPEWYg752trj_bwH9kB5zsRORErD9VFqfU6c1s,9141
@@ -237,8 +238,9 @@ cartography/intel/duo/phones.py,sha256=3_MPXmR4ub4Jra0ISr6cKzC5z_Pvx7YhHojWeJJku
237
238
  cartography/intel/duo/tokens.py,sha256=lVe0ByS3ncLA3FZXoqN8eLj_HMsl5s4uDT-uWlLJhSs,2407
238
239
  cartography/intel/duo/users.py,sha256=e2eK716wVlO71O9Q9KrWZot2cHjHZ7KgC9ZW27pCDaI,4143
239
240
  cartography/intel/duo/web_authn_credentials.py,sha256=mLWXdBe4V6fHCFotmtJmwhTSoOY6Hx87D3zI3hlL2nc,2656
240
- cartography/intel/entra/__init__.py,sha256=QuJHoxw06JBHt18JCuiMA2oNTRgBIPCiS2_Uz5CdgaE,1637
241
- cartography/intel/entra/ou.py,sha256=xoKxl6KjtpTIBr64vaefpojR1iJiTSAyO70kAOF9rJs,3242
241
+ cartography/intel/entra/__init__.py,sha256=oqdLlzQv9tYXn-BuKBlPmZ87ljl5MOih_REHM_L6mas,1972
242
+ cartography/intel/entra/groups.py,sha256=PiXW28jWv1zoAYsTy_6ntAUDdQWdO2-AZvH5BfGytvg,5026
243
+ cartography/intel/entra/ou.py,sha256=iv5UgRcPIaUZ8DdveKTmMkz0thEPYichpL9XntbHiPo,3803
242
244
  cartography/intel/entra/users.py,sha256=Zk9k8A3XeE-ZgUhY9fwN7GYhzbguGE-nHNOm6kvOCpo,7557
243
245
  cartography/intel/gcp/__init__.py,sha256=PtzheGqf2otRVmDe3Ai1n6JFq3_OtS2hmJrRfj8_BnQ,18896
244
246
  cartography/intel/gcp/compute.py,sha256=BShmgIhv_9E4rYfDe2ER3XIWZmU1NJIyZWIAvZY0uh0,49805
@@ -311,6 +313,8 @@ cartography/intel/tailscale/postureintegrations.py,sha256=C75HPfJkWHqlcXjk81YYcS
311
313
  cartography/intel/tailscale/tailnets.py,sha256=Ooc4XSOArWWFJoKykJDrk_tm2OKK1BHwfK_KEhckPp4,1679
312
314
  cartography/intel/tailscale/users.py,sha256=kjHAdIVGUwx28RRQ0KwLsdsZT9L-HlfwTph9dis7grc,1820
313
315
  cartography/intel/tailscale/utils.py,sha256=Xhwcb_31LWQy4MhoFWre_fX8gvddFVt13jjk5p0TPH4,4828
316
+ cartography/intel/trivy/__init__.py,sha256=hYroW2ewXRiTPYC7QqxFBaakUgk6j7U66bCSh8cgrGY,5277
317
+ cartography/intel/trivy/scanner.py,sha256=u9b5ORpVXaqR6owO6QXjNh9Nz1Vx1nn-rsYfcyrSlx8,12021
314
318
  cartography/models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
315
319
  cartography/models/anthropic/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
316
320
  cartography/models/anthropic/apikey.py,sha256=eDaaXBHkZtRrKCDgeBD5BYR4jVUH-5QTi7Ji9uEpd-0,3578
@@ -323,8 +327,10 @@ cartography/models/aws/apigatewaycertificate.py,sha256=vFKip_EeOws3Ke-77xI6eyUMD
323
327
  cartography/models/aws/apigatewayresource.py,sha256=iyri4znJo1pgAAe4xBs-eoE5dHK8fEsg6-5OusdvwE0,2856
324
328
  cartography/models/aws/apigatewaystage.py,sha256=d3m82TH4ggC--0HdE3SG7n-Uwm5Gu9eZMRT23h7a2as,3179
325
329
  cartography/models/aws/emr.py,sha256=iZPzyqFrDsyRSRZqjCHlyDkO91H__6iszJq5hkNpOLU,3071
330
+ cartography/models/aws/acm/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
331
+ cartography/models/aws/acm/certificate.py,sha256=GvB7xKBCoPmLsV9LnqAUg8x8sGTsDDsr7WIaqh4Sc-M,3141
326
332
  cartography/models/aws/cloudtrail/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
327
- cartography/models/aws/cloudtrail/trail.py,sha256=kd_nOBdIDXZDTbLc7HwIuDvI23edySxtKVsROwPCHjY,2849
333
+ cartography/models/aws/cloudtrail/trail.py,sha256=qQnpqFypKef8E7-JOR83euAtI6_j2KdjzGGFiQa6xkA,3676
328
334
  cartography/models/aws/cloudwatch/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
329
335
  cartography/models/aws/cloudwatch/loggroup.py,sha256=_MRpRvU_Vg2rVlUdzfae6vOpbpmYaYE1EVN5zWucFbE,2456
330
336
  cartography/models/aws/dynamodb/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -356,8 +362,6 @@ cartography/models/aws/ec2/securitygroup_networkinterface.py,sha256=2MBxYXxuq_L0
356
362
  cartography/models/aws/ec2/subnet_instance.py,sha256=gAw2TJIlBnBNWn83l60N_Pi5Ni4oNe2lbZpg-u39BU8,2818
357
363
  cartography/models/aws/ec2/subnet_networkinterface.py,sha256=YCfribtM4gEIb2Jan3xoBZke_IeNnejB95unfnIrX3Y,3739
358
364
  cartography/models/aws/ec2/volumes.py,sha256=ITSJ_1HgrU5wTF1zZV8sYRZsI0QzktoHkvTgpnfM1hI,4547
359
- cartography/models/aws/efs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
360
- cartography/models/aws/efs/mount_target.py,sha256=GRV5wcVcg6D-UTntFaD54G3_YLP8sLTq4SVB-Zz1Iqk,2376
361
365
  cartography/models/aws/eks/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
362
366
  cartography/models/aws/eks/clusters.py,sha256=OthI554MrYNSl-p6ArMJsSH43xKPRDSnEmvJEmXwLeU,2327
363
367
  cartography/models/aws/iam/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -371,10 +375,13 @@ cartography/models/aws/inspector/findings.py,sha256=z6fVygv8rmlYB1huX64jDgrCEjoT
371
375
  cartography/models/aws/inspector/packages.py,sha256=4TWu9EiS8aOR-n5z0FqG7564t-GKS4zrD4THX_2NKRo,3348
372
376
  cartography/models/aws/s3/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
373
377
  cartography/models/aws/s3/account_public_access_block.py,sha256=L6AS0OncfSOWHP4pOXshnJFDPwnWqywzUIeUppJcw-Q,2256
378
+ cartography/models/aws/s3/notification.py,sha256=SF1VvCP_2WVh8K29d4ms8MUcg9AyO_MN8vCgzLFlGAs,1017
374
379
  cartography/models/aws/secretsmanager/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
375
- cartography/models/aws/secretsmanager/secret_version.py,sha256=y-iSOkbTZjHKw4RMW6B2W5l-5g_ndYz24N-4myHScC0,4271
380
+ cartography/models/aws/secretsmanager/secret_version.py,sha256=Ah4b9BjgL24MhmxRV-HarvmNs_uCRNVMkxgvzIEp9uk,4167
376
381
  cartography/models/aws/sns/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
377
382
  cartography/models/aws/sns/topic.py,sha256=_Lcu7_c_UCUcPKEo5-kCdX3fAOkar_YKZbLmonX3BR8,2349
383
+ cartography/models/aws/sqs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
384
+ cartography/models/aws/sqs/queue.py,sha256=ELSbeeYXotmzku6KAeDt2i1qMTUsV4tOIVA5JaPgXEE,3992
378
385
  cartography/models/aws/ssm/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
379
386
  cartography/models/aws/ssm/instance_information.py,sha256=URlqoum2ZSKrd2BYgqFRwqJxW8mdgzjNhlvzM02v2_4,4149
380
387
  cartography/models/aws/ssm/instance_patch.py,sha256=03eHkwLaCXDv5LR9yJXH8DYfUYH6O6uZcGtaI9PV5B0,3158
@@ -390,7 +397,7 @@ cartography/models/cloudflare/role.py,sha256=HRjDoLMSs0YJlJosZsXEZV58OE_3vGAWSDN
390
397
  cartography/models/cloudflare/zone.py,sha256=uMHTSHq32eWe47k3b08sbnQBLrbNWPKpL9Osc4jcFD0,2805
391
398
  cartography/models/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
392
399
  cartography/models/core/common.py,sha256=O8hF-kNdQ5-1NGKJuX5fcOcHf4kDYYc1b9tndPCcwUU,6202
393
- cartography/models/core/nodes.py,sha256=Yrl06yqE1Z1uQxVjRIAL5tW_RYG1ZfI6JTiBF3WcecM,3714
400
+ cartography/models/core/nodes.py,sha256=GFK-optqan5L57D36ZQ7AdylGRELUl9pMyBfZ7l-cz4,4367
394
401
  cartography/models/core/relationships.py,sha256=_ph52obhjeqc67IZ_rwuAtIbBqMHtKb04ceCP6g4Q04,5151
395
402
  cartography/models/crowdstrike/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
396
403
  cartography/models/crowdstrike/hosts.py,sha256=J4UpdsVUNiQXqxnvmWdVkwsFueVagPV-7sTV3D7Lkts,2686
@@ -410,6 +417,7 @@ cartography/models/duo/token.py,sha256=WTV7Lv-_X1HH_tmyiK0dC0zfwkaHyXcHWH6XDPThv
410
417
  cartography/models/duo/user.py,sha256=Yqc4BUZ8DlFrYtJwHYn-QtID_T5Plc7TkQvJ3Wq8PsI,6570
411
418
  cartography/models/duo/web_authn_credential.py,sha256=nCdonZFyShuE5-CnI2Vxiu5BZ07TWJ5dZ7wx2Oe-0QE,2993
412
419
  cartography/models/entra/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
420
+ cartography/models/entra/group.py,sha256=d8QLBzqje4MkdN2uC4LXSxjUQ8_2T_cv4YbrPGfZ994,3809
413
421
  cartography/models/entra/ou.py,sha256=YmtW1Cp_XX29uzbunhEGl073AzV6PZsQtLs_MR-ACNU,2056
414
422
  cartography/models/entra/tenant.py,sha256=abpNTvOtXHgdrU-y7q6jt--odcq1eRsT2j5nMdVy_Gw,1793
415
423
  cartography/models/entra/user.py,sha256=YExHNKhHHhnwal0O12OCpvtdjcED5RONdBjMpPeMDBw,4877
@@ -447,9 +455,13 @@ cartography/models/tailscale/postureintegration.py,sha256=nwyzYoCZn9PPaChVxCL7ib
447
455
  cartography/models/tailscale/tag.py,sha256=7a8SidgsBI8f_ZzoHo3NPAA83JSXgS785VxlDeU2cBs,3955
448
456
  cartography/models/tailscale/tailnet.py,sha256=QE7Wl_JEthqZbfUK9fgURERnd91i-a3VIchxi6H7Css,1341
449
457
  cartography/models/tailscale/user.py,sha256=i3skB3IYQgRSuHkP3SUWEyv3QnyPwnXjdBUkhwQBWko,2299
450
- cartography-0.104.0rc3.dist-info/licenses/LICENSE,sha256=kvLEBRYaQ1RvUni6y7Ti9uHeooqnjPoo6n_-0JO1ETc,11351
451
- cartography-0.104.0rc3.dist-info/METADATA,sha256=vQIpkWa_RYWf5AVKkhRMkTLo-LfK4i3Kj7qTZ70EoZA,12296
452
- cartography-0.104.0rc3.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
453
- cartography-0.104.0rc3.dist-info/entry_points.txt,sha256=GVIAWD0o0_K077qMA_k1oZU4v-M0a8GLKGJR8tZ-qH8,112
454
- cartography-0.104.0rc3.dist-info/top_level.txt,sha256=BHqsNJQiI6Q72DeypC1IINQJE59SLhU4nllbQjgJi9g,12
455
- cartography-0.104.0rc3.dist-info/RECORD,,
458
+ cartography/models/trivy/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
459
+ cartography/models/trivy/findings.py,sha256=SgI_h1aRyR20uAHvuXIZ1T6r4IZJt6SVhxRaF2bTsm0,3085
460
+ cartography/models/trivy/fix.py,sha256=ho9ENVl9HSXqyggyCwR6ilkOBKDxpQ7rGibo_j21NA4,2587
461
+ cartography/models/trivy/package.py,sha256=IwO1RZZ-MFRtNbt8Cq6YFl6fdNJMFmULnJkkK8Q4rL4,2809
462
+ cartography-0.105.0.dist-info/licenses/LICENSE,sha256=kvLEBRYaQ1RvUni6y7Ti9uHeooqnjPoo6n_-0JO1ETc,11351
463
+ cartography-0.105.0.dist-info/METADATA,sha256=6qMEpGPsSOaFa8c_lkpHqsgNEtnlGst6SLyMrxsrJ9M,12406
464
+ cartography-0.105.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
465
+ cartography-0.105.0.dist-info/entry_points.txt,sha256=GVIAWD0o0_K077qMA_k1oZU4v-M0a8GLKGJR8tZ-qH8,112
466
+ cartography-0.105.0.dist-info/top_level.txt,sha256=BHqsNJQiI6Q72DeypC1IINQJE59SLhU4nllbQjgJi9g,12
467
+ cartography-0.105.0.dist-info/RECORD,,
@@ -1,93 +0,0 @@
1
- import logging
2
- from typing import Any
3
- from typing import Dict
4
- from typing import List
5
-
6
- import boto3
7
- import neo4j
8
-
9
- from cartography.client.core.tx import load
10
- from cartography.graph.job import GraphJob
11
- from cartography.intel.aws.ec2.util import get_botocore_config
12
- from cartography.models.aws.efs.mount_target import EfsMountTargetSchema
13
- from cartography.util import aws_handle_regions
14
- from cartography.util import timeit
15
-
16
- logger = logging.getLogger(__name__)
17
-
18
-
19
- @timeit
20
- @aws_handle_regions
21
- def get_efs_mount_targets(
22
- boto3_session: boto3.Session, region: str
23
- ) -> List[Dict[str, Any]]:
24
- client = boto3_session.client(
25
- "efs", region_name=region, config=get_botocore_config()
26
- )
27
- paginator = client.get_paginator("describe_mount_targets")
28
- mountTargets = []
29
- for page in paginator.paginate():
30
- mountTargets.extend(page["MountTargets"])
31
- return mountTargets
32
-
33
-
34
- @timeit
35
- def load_efs_mount_targets(
36
- neo4j_session: neo4j.Session,
37
- data: List[Dict[str, Any]],
38
- region: str,
39
- current_aws_account_id: str,
40
- aws_update_tag: int,
41
- ) -> None:
42
- logger.info(
43
- f"Loading Efs {len(data)} mount targets for region '{region}' into graph.",
44
- )
45
- load(
46
- neo4j_session,
47
- EfsMountTargetSchema(),
48
- data,
49
- lastupdated=aws_update_tag,
50
- Region=region,
51
- AWS_ID=current_aws_account_id,
52
- )
53
-
54
-
55
- @timeit
56
- def cleanup(
57
- neo4j_session: neo4j.Session,
58
- common_job_parameters: Dict[str, Any],
59
- ) -> None:
60
- logger.debug("Running Efs cleanup job.")
61
- cleanup_job = GraphJob.from_node_schema(
62
- EfsMountTargetSchema(), common_job_parameters
63
- )
64
- cleanup_job.run(neo4j_session)
65
-
66
-
67
- @timeit
68
- def sync(
69
- neo4j_session: neo4j.Session,
70
- boto3_session: boto3.session.Session,
71
- regions: List[str],
72
- current_aws_account_id: str,
73
- update_tag: int,
74
- common_job_parameters: Dict[str, Any],
75
- ) -> None:
76
- for region in regions:
77
- logger.info(
78
- f"Syncing Efs for region '{region}' in account '{current_aws_account_id}'.",
79
- )
80
- mountTargets = get_efs_mount_targets(boto3_session, region)
81
- mount_target_data: List[Dict[str, Any]] = []
82
- for mountTarget in mountTargets:
83
- mount_target_data.append(mountTarget)
84
-
85
- load_efs_mount_targets(
86
- neo4j_session,
87
- mount_target_data,
88
- region,
89
- current_aws_account_id,
90
- update_tag,
91
- )
92
-
93
- cleanup(neo4j_session, common_job_parameters)
@@ -1,52 +0,0 @@
1
- from dataclasses import dataclass
2
-
3
- from cartography.models.core.common import PropertyRef
4
- from cartography.models.core.nodes import CartographyNodeProperties
5
- from cartography.models.core.nodes import CartographyNodeSchema
6
- from cartography.models.core.relationships import CartographyRelProperties
7
- from cartography.models.core.relationships import CartographyRelSchema
8
- from cartography.models.core.relationships import LinkDirection
9
- from cartography.models.core.relationships import make_target_node_matcher
10
- from cartography.models.core.relationships import TargetNodeMatcher
11
-
12
-
13
- @dataclass(frozen=True)
14
- class EfsMountTargetNodeProperties(CartographyNodeProperties):
15
- id: PropertyRef = PropertyRef("MountTargetId")
16
- arn: PropertyRef = PropertyRef("MountTargetId", extra_index=True)
17
- fileSystem_id: PropertyRef = PropertyRef("FileSystemId")
18
- lifecycle_state: PropertyRef = PropertyRef("LifeCycleState")
19
- mount_target_id: PropertyRef = PropertyRef("MountTargetId")
20
- subnet_id: PropertyRef = PropertyRef("SubnetId")
21
- availability_zone_id: PropertyRef = PropertyRef("AvailabilityZoneId")
22
- availability_zone_name: PropertyRef = PropertyRef("AvailabilityZoneName")
23
- ip_address: PropertyRef = PropertyRef("IpAddress")
24
- network_interface_id: PropertyRef = PropertyRef("NetworkInterfaceId")
25
- owner_id: PropertyRef = PropertyRef("OwnerId")
26
- vpc_id: PropertyRef = PropertyRef("VpcId")
27
- lastupdated: PropertyRef = PropertyRef("lastupdated", set_in_kwargs=True)
28
-
29
-
30
- @dataclass(frozen=True)
31
- class EfsMountTargetToAwsAccountRelProperties(CartographyRelProperties):
32
- lastupdated: PropertyRef = PropertyRef("lastupdated", set_in_kwargs=True)
33
-
34
-
35
- @dataclass(frozen=True)
36
- class EfsToAWSAccountRel(CartographyRelSchema):
37
- target_node_label: str = "AWSAccount"
38
- target_node_matcher: TargetNodeMatcher = make_target_node_matcher(
39
- {"id": PropertyRef("AWS_ID", set_in_kwargs=True)},
40
- )
41
- direction: LinkDirection = LinkDirection.INWARD
42
- rel_label: str = "RESOURCE"
43
- properties: EfsMountTargetToAwsAccountRelProperties = (
44
- EfsMountTargetToAwsAccountRelProperties()
45
- )
46
-
47
-
48
- @dataclass(frozen=True)
49
- class EfsMountTargetSchema(CartographyNodeSchema):
50
- label: str = "EfsMountTarget"
51
- properties: EfsMountTargetNodeProperties = EfsMountTargetNodeProperties()
52
- sub_resource_relationship: EfsToAWSAccountRel = EfsToAWSAccountRel()
File without changes