cartography 0.108.0rc2__py3-none-any.whl → 0.109.0rc2__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 (63) hide show
  1. cartography/_version.py +2 -2
  2. cartography/data/indexes.cypher +0 -17
  3. cartography/data/jobs/cleanup/gcp_compute_vpc_cleanup.json +0 -12
  4. cartography/intel/aws/cloudtrail_management_events.py +36 -3
  5. cartography/intel/aws/ecr.py +55 -80
  6. cartography/intel/aws/glue.py +117 -0
  7. cartography/intel/aws/identitycenter.py +71 -23
  8. cartography/intel/aws/kms.py +160 -200
  9. cartography/intel/aws/lambda_function.py +206 -190
  10. cartography/intel/aws/rds.py +243 -458
  11. cartography/intel/aws/resourcegroupstaggingapi.py +77 -18
  12. cartography/intel/aws/resources.py +2 -0
  13. cartography/intel/aws/route53.py +334 -332
  14. cartography/intel/aws/secretsmanager.py +62 -44
  15. cartography/intel/entra/groups.py +29 -1
  16. cartography/intel/gcp/__init__.py +10 -0
  17. cartography/intel/gcp/compute.py +19 -42
  18. cartography/models/aws/ecr/__init__.py +0 -0
  19. cartography/models/aws/ecr/image.py +41 -0
  20. cartography/models/aws/ecr/repository.py +72 -0
  21. cartography/models/aws/ecr/repository_image.py +95 -0
  22. cartography/models/aws/glue/__init__.py +0 -0
  23. cartography/models/aws/glue/connection.py +51 -0
  24. cartography/models/aws/identitycenter/awspermissionset.py +44 -0
  25. cartography/models/aws/kms/__init__.py +0 -0
  26. cartography/models/aws/kms/aliases.py +86 -0
  27. cartography/models/aws/kms/grants.py +65 -0
  28. cartography/models/aws/kms/keys.py +88 -0
  29. cartography/models/aws/lambda_function/__init__.py +0 -0
  30. cartography/models/aws/lambda_function/alias.py +74 -0
  31. cartography/models/aws/lambda_function/event_source_mapping.py +88 -0
  32. cartography/models/aws/lambda_function/lambda_function.py +89 -0
  33. cartography/models/aws/lambda_function/layer.py +72 -0
  34. cartography/models/aws/rds/__init__.py +0 -0
  35. cartography/models/aws/rds/cluster.py +89 -0
  36. cartography/models/aws/rds/instance.py +154 -0
  37. cartography/models/aws/rds/snapshot.py +108 -0
  38. cartography/models/aws/rds/subnet_group.py +101 -0
  39. cartography/models/aws/route53/__init__.py +0 -0
  40. cartography/models/aws/route53/dnsrecord.py +214 -0
  41. cartography/models/aws/route53/nameserver.py +63 -0
  42. cartography/models/aws/route53/subzone.py +40 -0
  43. cartography/models/aws/route53/zone.py +47 -0
  44. cartography/models/aws/secretsmanager/secret.py +106 -0
  45. cartography/models/entra/group.py +26 -0
  46. cartography/models/entra/user.py +6 -0
  47. cartography/models/gcp/compute/__init__.py +0 -0
  48. cartography/models/gcp/compute/vpc.py +50 -0
  49. cartography/util.py +8 -1
  50. {cartography-0.108.0rc2.dist-info → cartography-0.109.0rc2.dist-info}/METADATA +2 -2
  51. {cartography-0.108.0rc2.dist-info → cartography-0.109.0rc2.dist-info}/RECORD +55 -34
  52. cartography/data/jobs/cleanup/aws_dns_cleanup.json +0 -65
  53. cartography/data/jobs/cleanup/aws_import_identity_center_cleanup.json +0 -16
  54. cartography/data/jobs/cleanup/aws_import_lambda_cleanup.json +0 -50
  55. cartography/data/jobs/cleanup/aws_import_rds_clusters_cleanup.json +0 -23
  56. cartography/data/jobs/cleanup/aws_import_rds_instances_cleanup.json +0 -47
  57. cartography/data/jobs/cleanup/aws_import_rds_snapshots_cleanup.json +0 -23
  58. cartography/data/jobs/cleanup/aws_import_secrets_cleanup.json +0 -8
  59. cartography/data/jobs/cleanup/aws_kms_details.json +0 -10
  60. {cartography-0.108.0rc2.dist-info → cartography-0.109.0rc2.dist-info}/WHEEL +0 -0
  61. {cartography-0.108.0rc2.dist-info → cartography-0.109.0rc2.dist-info}/entry_points.txt +0 -0
  62. {cartography-0.108.0rc2.dist-info → cartography-0.109.0rc2.dist-info}/licenses/LICENSE +0 -0
  63. {cartography-0.108.0rc2.dist-info → cartography-0.109.0rc2.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,63 @@
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 OtherRelationships
11
+ from cartography.models.core.relationships import TargetNodeMatcher
12
+
13
+
14
+ @dataclass(frozen=True)
15
+ class NameServerNodeProperties(CartographyNodeProperties):
16
+ id: PropertyRef = PropertyRef("id")
17
+ name: PropertyRef = PropertyRef("id", extra_index=True)
18
+ zoneid: PropertyRef = PropertyRef("zoneid")
19
+ lastupdated: PropertyRef = PropertyRef("lastupdated", set_in_kwargs=True)
20
+
21
+
22
+ @dataclass(frozen=True)
23
+ class NameServerToZoneRelProperties(CartographyRelProperties):
24
+ lastupdated: PropertyRef = PropertyRef("lastupdated", set_in_kwargs=True)
25
+
26
+
27
+ @dataclass(frozen=True)
28
+ class NameServerToZoneRel(CartographyRelSchema):
29
+ target_node_label: str = "AWSDNSZone"
30
+ target_node_matcher: TargetNodeMatcher = make_target_node_matcher(
31
+ {"zoneid": PropertyRef("zoneid")}
32
+ )
33
+ direction: LinkDirection = LinkDirection.INWARD
34
+ rel_label: str = "NAMESERVER"
35
+ properties: NameServerToZoneRelProperties = NameServerToZoneRelProperties()
36
+
37
+
38
+ @dataclass(frozen=True)
39
+ class NameServerToAWSAccountRelProperties(CartographyRelProperties):
40
+ lastupdated: PropertyRef = PropertyRef("lastupdated", set_in_kwargs=True)
41
+
42
+
43
+ @dataclass(frozen=True)
44
+ class NameServerToAWSAccountRel(CartographyRelSchema):
45
+ target_node_label: str = "AWSAccount"
46
+ target_node_matcher: TargetNodeMatcher = make_target_node_matcher(
47
+ {"id": PropertyRef("AWS_ID", set_in_kwargs=True)}
48
+ )
49
+ direction: LinkDirection = LinkDirection.INWARD
50
+ rel_label: str = "RESOURCE"
51
+ properties: NameServerToAWSAccountRelProperties = (
52
+ NameServerToAWSAccountRelProperties()
53
+ )
54
+
55
+
56
+ @dataclass(frozen=True)
57
+ class NameServerSchema(CartographyNodeSchema):
58
+ label: str = "NameServer"
59
+ properties: NameServerNodeProperties = NameServerNodeProperties()
60
+ sub_resource_relationship: NameServerToAWSAccountRel = NameServerToAWSAccountRel()
61
+ other_relationships: OtherRelationships = OtherRelationships(
62
+ [NameServerToZoneRel()]
63
+ )
@@ -0,0 +1,40 @@
1
+ from dataclasses import dataclass
2
+
3
+ from cartography.models.core.common import PropertyRef
4
+ from cartography.models.core.relationships import CartographyRelProperties
5
+ from cartography.models.core.relationships import CartographyRelSchema
6
+ from cartography.models.core.relationships import LinkDirection
7
+ from cartography.models.core.relationships import make_source_node_matcher
8
+ from cartography.models.core.relationships import make_target_node_matcher
9
+ from cartography.models.core.relationships import SourceNodeMatcher
10
+ from cartography.models.core.relationships import TargetNodeMatcher
11
+
12
+
13
+ @dataclass(frozen=True)
14
+ class AWSDNSZoneSubzoneRelProperties(CartographyRelProperties):
15
+ # Mandatory fields for MatchLinks
16
+ lastupdated: PropertyRef = PropertyRef("lastupdated", set_in_kwargs=True)
17
+ _sub_resource_label: PropertyRef = PropertyRef(
18
+ "_sub_resource_label", set_in_kwargs=True
19
+ )
20
+ _sub_resource_id: PropertyRef = PropertyRef("_sub_resource_id", set_in_kwargs=True)
21
+
22
+
23
+ # MatchLink for creating SUBZONE relationships between DNS zones
24
+ @dataclass(frozen=True)
25
+ class AWSDNSZoneSubzoneMatchLink(CartographyRelSchema):
26
+ target_node_label: str = "AWSDNSZone"
27
+ target_node_matcher: TargetNodeMatcher = make_target_node_matcher(
28
+ {
29
+ "zoneid": PropertyRef("subzone_id"),
30
+ }
31
+ )
32
+ source_node_label: str = "AWSDNSZone"
33
+ source_node_matcher: SourceNodeMatcher = make_source_node_matcher(
34
+ {
35
+ "zoneid": PropertyRef("zone_id"),
36
+ }
37
+ )
38
+ properties: AWSDNSZoneSubzoneRelProperties = AWSDNSZoneSubzoneRelProperties()
39
+ direction: LinkDirection = LinkDirection.OUTWARD
40
+ rel_label: str = "SUBZONE"
@@ -0,0 +1,47 @@
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.nodes import ExtraNodeLabels
7
+ from cartography.models.core.relationships import CartographyRelProperties
8
+ from cartography.models.core.relationships import CartographyRelSchema
9
+ from cartography.models.core.relationships import LinkDirection
10
+ from cartography.models.core.relationships import make_target_node_matcher
11
+ from cartography.models.core.relationships import TargetNodeMatcher
12
+
13
+
14
+ @dataclass(frozen=True)
15
+ class AWSDNSZoneNodeProperties(CartographyNodeProperties):
16
+ id: PropertyRef = PropertyRef("zoneid")
17
+ zoneid: PropertyRef = PropertyRef("zoneid")
18
+ name: PropertyRef = PropertyRef("name", extra_index=True)
19
+ comment: PropertyRef = PropertyRef("comment")
20
+ privatezone: PropertyRef = PropertyRef("privatezone")
21
+ lastupdated: PropertyRef = PropertyRef("lastupdated", set_in_kwargs=True)
22
+
23
+
24
+ @dataclass(frozen=True)
25
+ class AWSDNSZoneToAWSAccountRelProperties(CartographyRelProperties):
26
+ lastupdated: PropertyRef = PropertyRef("lastupdated", set_in_kwargs=True)
27
+
28
+
29
+ @dataclass(frozen=True)
30
+ class AWSDNSZoneToAWSAccountRel(CartographyRelSchema):
31
+ target_node_label: str = "AWSAccount"
32
+ target_node_matcher: TargetNodeMatcher = make_target_node_matcher(
33
+ {"id": PropertyRef("AWS_ID", set_in_kwargs=True)}
34
+ )
35
+ direction: LinkDirection = LinkDirection.INWARD
36
+ rel_label: str = "RESOURCE"
37
+ properties: AWSDNSZoneToAWSAccountRelProperties = (
38
+ AWSDNSZoneToAWSAccountRelProperties()
39
+ )
40
+
41
+
42
+ @dataclass(frozen=True)
43
+ class AWSDNSZoneSchema(CartographyNodeSchema):
44
+ label: str = "AWSDNSZone"
45
+ properties: AWSDNSZoneNodeProperties = AWSDNSZoneNodeProperties()
46
+ extra_node_labels: ExtraNodeLabels = ExtraNodeLabels(["DNSZone"])
47
+ sub_resource_relationship: AWSDNSZoneToAWSAccountRel = AWSDNSZoneToAWSAccountRel()
@@ -0,0 +1,106 @@
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 OtherRelationships
11
+ from cartography.models.core.relationships import TargetNodeMatcher
12
+
13
+
14
+ @dataclass(frozen=True)
15
+ class SecretsManagerSecretNodeProperties(CartographyNodeProperties):
16
+ """
17
+ Properties for AWS Secrets Manager Secret
18
+ """
19
+
20
+ id: PropertyRef = PropertyRef("ARN")
21
+ arn: PropertyRef = PropertyRef("ARN", extra_index=True)
22
+ name: PropertyRef = PropertyRef("Name", extra_index=True)
23
+ description: PropertyRef = PropertyRef("Description")
24
+
25
+ # Rotation properties
26
+ rotation_enabled: PropertyRef = PropertyRef("RotationEnabled")
27
+ rotation_lambda_arn: PropertyRef = PropertyRef("RotationLambdaARN")
28
+ rotation_rules_automatically_after_days: PropertyRef = PropertyRef(
29
+ "RotationRulesAutomaticallyAfterDays"
30
+ )
31
+
32
+ # Date properties (will be converted to epoch timestamps)
33
+ created_date: PropertyRef = PropertyRef("CreatedDate")
34
+ last_rotated_date: PropertyRef = PropertyRef("LastRotatedDate")
35
+ last_changed_date: PropertyRef = PropertyRef("LastChangedDate")
36
+ last_accessed_date: PropertyRef = PropertyRef("LastAccessedDate")
37
+ deleted_date: PropertyRef = PropertyRef("DeletedDate")
38
+
39
+ # Other properties
40
+ kms_key_id: PropertyRef = PropertyRef("KmsKeyId")
41
+ owning_service: PropertyRef = PropertyRef("OwningService")
42
+ primary_region: PropertyRef = PropertyRef("PrimaryRegion")
43
+
44
+ # Standard cartography properties
45
+ region: PropertyRef = PropertyRef("Region", set_in_kwargs=True)
46
+ lastupdated: PropertyRef = PropertyRef("lastupdated", set_in_kwargs=True)
47
+
48
+
49
+ @dataclass(frozen=True)
50
+ class SecretsManagerSecretRelProperties(CartographyRelProperties):
51
+ """
52
+ Properties for relationships between Secret and other nodes
53
+ """
54
+
55
+ lastupdated: PropertyRef = PropertyRef("lastupdated", set_in_kwargs=True)
56
+
57
+
58
+ @dataclass(frozen=True)
59
+ class SecretsManagerSecretToAWSAccountRel(CartographyRelSchema):
60
+ """
61
+ Relationship between Secret and AWS Account
62
+ """
63
+
64
+ target_node_label: str = "AWSAccount"
65
+ target_node_matcher: TargetNodeMatcher = make_target_node_matcher(
66
+ {"id": PropertyRef("AWS_ID", set_in_kwargs=True)},
67
+ )
68
+ direction: LinkDirection = LinkDirection.INWARD
69
+ rel_label: str = "RESOURCE"
70
+ properties: SecretsManagerSecretRelProperties = SecretsManagerSecretRelProperties()
71
+
72
+
73
+ @dataclass(frozen=True)
74
+ class SecretsManagerSecretToKMSKeyRel(CartographyRelSchema):
75
+ """
76
+ Relationship between Secret and its KMS key
77
+ Only created when KmsKeyId is present
78
+ """
79
+
80
+ target_node_label: str = "AWSKMSKey"
81
+ target_node_matcher: TargetNodeMatcher = make_target_node_matcher(
82
+ {"id": PropertyRef("KmsKeyId")},
83
+ )
84
+ direction: LinkDirection = LinkDirection.OUTWARD
85
+ rel_label: str = "ENCRYPTED_BY"
86
+ properties: SecretsManagerSecretRelProperties = SecretsManagerSecretRelProperties()
87
+
88
+
89
+ @dataclass(frozen=True)
90
+ class SecretsManagerSecretSchema(CartographyNodeSchema):
91
+ """
92
+ Schema for AWS Secrets Manager Secret
93
+ """
94
+
95
+ label: str = "SecretsManagerSecret"
96
+ properties: SecretsManagerSecretNodeProperties = (
97
+ SecretsManagerSecretNodeProperties()
98
+ )
99
+ sub_resource_relationship: SecretsManagerSecretToAWSAccountRel = (
100
+ SecretsManagerSecretToAWSAccountRel()
101
+ )
102
+ other_relationships: OtherRelationships = OtherRelationships(
103
+ [
104
+ SecretsManagerSecretToKMSKeyRel(),
105
+ ],
106
+ )
@@ -3,6 +3,7 @@ from dataclasses import dataclass
3
3
  from cartography.models.core.common import PropertyRef
4
4
  from cartography.models.core.nodes import CartographyNodeProperties
5
5
  from cartography.models.core.nodes import CartographyNodeSchema
6
+ from cartography.models.core.nodes import ExtraNodeLabels
6
7
  from cartography.models.core.relationships import CartographyRelProperties
7
8
  from cartography.models.core.relationships import CartographyRelSchema
8
9
  from cartography.models.core.relationships import LinkDirection
@@ -78,6 +79,25 @@ class EntraGroupToGroupRel(CartographyRelSchema):
78
79
  properties: EntraGroupToGroupRelProperties = EntraGroupToGroupRelProperties()
79
80
 
80
81
 
82
+ @dataclass(frozen=True)
83
+ class EntraGroupToOwnerRelProperties(CartographyRelProperties):
84
+ lastupdated: PropertyRef = PropertyRef("lastupdated", set_in_kwargs=True)
85
+
86
+
87
+ @dataclass(frozen=True)
88
+ # (:EntraGroup)<-[:OWNER_OF]-(:EntraUser)
89
+ class EntraGroupToOwnerRel(CartographyRelSchema):
90
+ # EntraUsers and Entra service principals can be owners of a group, so we match on the general label
91
+ # Because id is indexed, this should be fast even though EntraIdentity will also include EntraGroups
92
+ target_node_label: str = "EntraIdentity"
93
+ target_node_matcher: TargetNodeMatcher = make_target_node_matcher(
94
+ {"id": PropertyRef("owner_ids", one_to_many=True)}
95
+ )
96
+ direction: LinkDirection = LinkDirection.INWARD
97
+ rel_label: str = "OWNER_OF"
98
+ properties: EntraGroupToOwnerRelProperties = EntraGroupToOwnerRelProperties()
99
+
100
+
81
101
  @dataclass(frozen=True)
82
102
  class EntraGroupSchema(CartographyNodeSchema):
83
103
  label: str = "EntraGroup"
@@ -87,5 +107,11 @@ class EntraGroupSchema(CartographyNodeSchema):
87
107
  [
88
108
  EntraGroupToGroupRel(),
89
109
  EntraGroupToUserRel(),
110
+ EntraGroupToOwnerRel(),
111
+ ]
112
+ )
113
+ extra_node_labels: ExtraNodeLabels = ExtraNodeLabels(
114
+ [
115
+ "EntraIdentity",
90
116
  ]
91
117
  )
@@ -3,6 +3,7 @@ from dataclasses import dataclass
3
3
  from cartography.models.core.common import PropertyRef
4
4
  from cartography.models.core.nodes import CartographyNodeProperties
5
5
  from cartography.models.core.nodes import CartographyNodeSchema
6
+ from cartography.models.core.nodes import ExtraNodeLabels
6
7
  from cartography.models.core.relationships import CartographyRelProperties
7
8
  from cartography.models.core.relationships import CartographyRelSchema
8
9
  from cartography.models.core.relationships import LinkDirection
@@ -63,3 +64,8 @@ class EntraUserSchema(CartographyNodeSchema):
63
64
  label: str = "EntraUser"
64
65
  properties: EntraUserNodeProperties = EntraUserNodeProperties()
65
66
  sub_resource_relationship: EntraUserToTenantRel = EntraUserToTenantRel()
67
+ extra_node_labels: ExtraNodeLabels = ExtraNodeLabels(
68
+ [
69
+ "EntraIdentity",
70
+ ]
71
+ )
File without changes
@@ -0,0 +1,50 @@
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 GCPVpcNodeProperties(CartographyNodeProperties):
15
+ id: PropertyRef = PropertyRef("partial_uri", extra_index=True)
16
+ lastupdated: PropertyRef = PropertyRef("LASTUPDATED", set_in_kwargs=True)
17
+ partial_uri: PropertyRef = PropertyRef("partial_uri")
18
+ self_link: PropertyRef = PropertyRef("self_link")
19
+ name: PropertyRef = PropertyRef("name", extra_index=True)
20
+ project_id: PropertyRef = PropertyRef("PROJECT_ID", set_in_kwargs=True)
21
+ auto_create_subnetworks: PropertyRef = PropertyRef("auto_create_subnetworks")
22
+ routing_config_routing_mode: PropertyRef = PropertyRef(
23
+ "routing_config_routing_mode"
24
+ )
25
+ description: PropertyRef = PropertyRef("description")
26
+
27
+
28
+ @dataclass(frozen=True)
29
+ class GCPVpcToProjectRelProperties(CartographyRelProperties):
30
+ lastupdated: PropertyRef = PropertyRef("LASTUPDATED", set_in_kwargs=True)
31
+
32
+
33
+ @dataclass(frozen=True)
34
+ class GCPVpcToProjectRel(CartographyRelSchema):
35
+ target_node_label: str = "GCPProject"
36
+ target_node_matcher: TargetNodeMatcher = make_target_node_matcher(
37
+ {
38
+ "id": PropertyRef("PROJECT_ID", set_in_kwargs=True),
39
+ }
40
+ )
41
+ direction: LinkDirection = LinkDirection.INWARD
42
+ rel_label: str = "RESOURCE"
43
+ properties: GCPVpcToProjectRelProperties = GCPVpcToProjectRelProperties()
44
+
45
+
46
+ @dataclass(frozen=True)
47
+ class GCPVpcSchema(CartographyNodeSchema):
48
+ label: str = "GCPVpc"
49
+ properties: GCPVpcNodeProperties = GCPVpcNodeProperties()
50
+ sub_resource_relationship: GCPVpcToProjectRel = GCPVpcToProjectRel()
cartography/util.py CHANGED
@@ -291,9 +291,16 @@ def aws_handle_regions(func: AWSGetFunc) -> AWSGetFunc:
291
291
  try:
292
292
  return func(*args, **kwargs)
293
293
  except botocore.exceptions.ClientError as e:
294
+ error_code = e.response.get("Error", {}).get("Code")
295
+ if error_code == "InvalidToken":
296
+ raise RuntimeError(
297
+ "AWS returned an InvalidToken error. Configure regional STS endpoints by "
298
+ "setting environment variable AWS_STS_REGIONAL_ENDPOINTS=regional or adding "
299
+ "'sts_regional_endpoints = regional' to your AWS config file."
300
+ ) from e
294
301
  # The account is not authorized to use this service in this region
295
302
  # so we can continue without raising an exception
296
- if e.response["Error"]["Code"] in ERROR_CODES:
303
+ if error_code in ERROR_CODES:
297
304
  logger.warning(
298
305
  "{} in this region. Skipping...".format(
299
306
  e.response["Error"]["Message"],
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cartography
3
- Version: 0.108.0rc2
3
+ Version: 0.109.0rc2
4
4
  Summary: Explore assets and their relationships across your technical infrastructure.
5
5
  Maintainer: Cartography Contributors
6
6
  License: apache2
@@ -82,7 +82,7 @@ You can learn more about the story behind Cartography in our [presentation at BS
82
82
 
83
83
  ## Supported platforms
84
84
  - [Airbyte](https://cartography-cncf.github.io/cartography/modules/airbyte/index.html) - Organization, Workspace, User, Source, Destination, Connection, Tag, Stream
85
- - [Amazon Web Services](https://cartography-cncf.github.io/cartography/modules/aws/index.html) - ACM, API Gateway, CloudWatch, CodeBuild, Config, EC2, ECS, ECR, Elasticsearch, Elastic Kubernetes Service (EKS), DynamoDB, GuardDuty, IAM, Inspector, KMS, Lambda, RDS, Redshift, Route53, S3, Secrets Manager(Secret Versions), Security Hub, SQS, SSM, STS, Tags
85
+ - [Amazon Web Services](https://cartography-cncf.github.io/cartography/modules/aws/index.html) - ACM, API Gateway, CloudWatch, CodeBuild, Config, EC2, ECS, ECR, EFS, Elasticsearch, Elastic Kubernetes Service (EKS), DynamoDB, Glue, GuardDuty, IAM, Inspector, KMS, Lambda, RDS, Redshift, Route53, S3, Secrets Manager(Secret Versions), Security Hub, SNS, SQS, SSM, STS, Tags
86
86
  - [Anthropic](https://cartography-cncf.github.io/cartography/modules/anthropic/index.html) - Organization, ApiKey, User, Workspace
87
87
  - [BigFix](https://cartography-cncf.github.io/cartography/modules/bigfix/index.html) - Computers
88
88
  - [Cloudflare](https://cartography-cncf.github.io/cartography/modules/cloudflare/index.html) - Account, Role, Member, Zone, DNSRecord
@@ -1,12 +1,12 @@
1
1
  cartography/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
2
  cartography/__main__.py,sha256=y5iqUrj4BmqZfjeDT-9balzpXeMARgHeIedRMRI1gr8,100
3
- cartography/_version.py,sha256=-jKkLBIUcqBMjSG7IeuKsEuUS2MiMWFfQ_YKmiQ1zTE,525
3
+ cartography/_version.py,sha256=nimLevl7Lt41ABvOl3VLASk_dXzF0KzyiM-BgKu2SmU,525
4
4
  cartography/cli.py,sha256=qOu3nSIKWsuDbuPe5XrKBoAArFQKZP8jSjK8OtI69_E,46595
5
5
  cartography/config.py,sha256=q-fVcWJH9ida_cAII9RcOT0FUpFFify7W6NMvmC3kGk,16873
6
6
  cartography/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
7
7
  cartography/stats.py,sha256=N95prYlSzY8U52VFgKIDgOWOawu5Mig4N7GcVp3binQ,4420
8
8
  cartography/sync.py,sha256=-WsU6tGUKpfxPRndm1QU_0HQyE20Q7fexQWRHWFrnQI,13867
9
- cartography/util.py,sha256=YYynw4hblAf7xglGzS7vuHTJXxf7u4WjAiLVM4MiOLU,15535
9
+ cartography/util.py,sha256=DTFfVRN1cv3msm2heIjFkpH3NBJs00IolwzuUcJiDHo,15965
10
10
  cartography/client/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
11
11
  cartography/client/aws/__init__.py,sha256=Zj7nX21QQELwPLZlpldm_22IiXZ1VFsEFQbWX_e4okU,558
12
12
  cartography/client/aws/ecr.py,sha256=04IXnuEAauyO5Mx9Wmt79WdUnYDhYsk2QSOnwE5_BeM,1664
@@ -14,7 +14,7 @@ cartography/client/aws/iam.py,sha256=dYsGikc36DEsSeR2XVOVFFUDwuU9yWj_EVkpgVYCFgM
14
14
  cartography/client/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
15
15
  cartography/client/core/tx.py,sha256=Xx6_a5u7PE5pyREuBL_J39ORcafqieFf4KdosaEv1c4,13530
16
16
  cartography/data/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
17
- cartography/data/indexes.cypher,sha256=QW6YFuxki0wkZKjHZ_AvETXPs2bxHK_mEw5oRZY-0lY,23578
17
+ cartography/data/indexes.cypher,sha256=R1UiBIAYqWGyZmwL0EPaaVWM2P64KKClSj0xPDF715s,22472
18
18
  cartography/data/permission_relationships.yaml,sha256=RuKGGc_3ZUQ7ag0MssB8k_zaonCkVM5E8I_svBWTmGc,969
19
19
  cartography/data/jobs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
20
20
  cartography/data/jobs/analysis/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -30,7 +30,6 @@ cartography/data/jobs/analysis/gcp_gke_basic_auth.json,sha256=qLkrw1eZvV9ETtkIQN
30
30
  cartography/data/jobs/analysis/gsuite_human_link.json,sha256=ArWA51fNIeeXwYiroJbKnuqN8y-TLrndOq0ZdC9q5os,541
31
31
  cartography/data/jobs/cleanup/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
32
32
  cartography/data/jobs/cleanup/aws_account_cleanup.json,sha256=DEB4h6Z4NSpYaLXECPhNk8HHbT0XNlqUA01pXIskBxc,473
33
- cartography/data/jobs/cleanup/aws_dns_cleanup.json,sha256=H5uMZV4tN6HcjTYwh2I1dENzNGqu2D2Rs2q-5CK5e0Y,3498
34
33
  cartography/data/jobs/cleanup/aws_import_account_access_key_cleanup.json,sha256=UCrAXf-8yQIoUa843VLLTpqrSpNa753c1cxzg32oqU0,737
35
34
  cartography/data/jobs/cleanup/aws_import_config_cleanup.json,sha256=VCAJjEnFcQUR16VxKdpsOkBJEnhMuLk-7Kgm_p9k1NM,754
36
35
  cartography/data/jobs/cleanup/aws_import_ec2_launch_configurations_cleanup.json,sha256=x9IIzb9Sr1353ygkA-qqUUbZS9XO2v3GzUHe-0J4Pw8,281
@@ -42,21 +41,15 @@ cartography/data/jobs/cleanup/aws_import_es_cleanup.json,sha256=VqRqiMcT0Ag0Qif2
42
41
  cartography/data/jobs/cleanup/aws_import_groups_cleanup.json,sha256=QSdWIpC_Ru4TFBm9I5mpI-ZHyusbzCzCePWN-yn8TQU,463
43
42
  cartography/data/jobs/cleanup/aws_import_groups_membership_cleanup.json,sha256=OSeasbv01pn47J1ib3yal_dAzbEOCZVJnldMqK0SAOQ,292
44
43
  cartography/data/jobs/cleanup/aws_import_groups_policy_cleanup.json,sha256=U_yKHAsjHoI9fiiTqGyhlMazgeZumlZwMO70CpJpuAM,309
45
- cartography/data/jobs/cleanup/aws_import_identity_center_cleanup.json,sha256=PSyerOlZkiLaWYFa3Hg1mqqX83FGwj36-p0BF1lR-Q8,650
46
44
  cartography/data/jobs/cleanup/aws_import_internet_gateways_cleanup.json,sha256=SHHrR9pX0V1r-RxwJggHGeFA7JVQAAK02D-n-vqOvdU,287
47
45
  cartography/data/jobs/cleanup/aws_import_kms_cleanup.json,sha256=NU9doXVk4UmAY59aYnld95Wc1b8DrfCbvJltUsATxko,1441
48
- cartography/data/jobs/cleanup/aws_import_lambda_cleanup.json,sha256=h219-cmOY19RjcGZiecM21HS52hw4S5EXFVAxIpyyTw,2267
49
46
  cartography/data/jobs/cleanup/aws_import_principals_cleanup.json,sha256=yrI1FISGTlgaUZXFSj7XUCNzRoLqkcavLur4Lw4zSmU,1363
50
- cartography/data/jobs/cleanup/aws_import_rds_clusters_cleanup.json,sha256=aHpM8qvN7TNTUJMQjOlv5-lxz0BzJl-tKIj_m5i_uqc,1166
51
- cartography/data/jobs/cleanup/aws_import_rds_instances_cleanup.json,sha256=vmulpaxqqzBYSTtS6lYzbm55ksYjCab3UeRI0l13ktY,2733
52
- cartography/data/jobs/cleanup/aws_import_rds_snapshots_cleanup.json,sha256=ckOaVSBL-7XLjc0_0sGKNWXj61oVQabj7ZEYG89HnfA,1171
53
47
  cartography/data/jobs/cleanup/aws_import_redshift_clusters_cleanup.json,sha256=TNQ93Z7pPchdBAp3WiuoZMeDWdr_WQ139HiDPl32WhE,1963
54
48
  cartography/data/jobs/cleanup/aws_import_reserved_instances_cleanup.json,sha256=P98o_cdNpso732eE-FjK4UYMp__--ZuedmiA3aXeQig,524
55
49
  cartography/data/jobs/cleanup/aws_import_roles_cleanup.json,sha256=z6M8to_4TcOx4TKVbtfu86gRQgbDfVlJmRn3voNXbaI,500
56
50
  cartography/data/jobs/cleanup/aws_import_roles_policy_cleanup.json,sha256=qssEDBXg5yVaOLg2lpsrnPTHBfW7ERD9BMeciTm22oM,307
57
51
  cartography/data/jobs/cleanup/aws_import_s3_acl_cleanup.json,sha256=AmQDF8VZwXLtZ9cYe4xB7uY-VA3BMhc1YUS8HJKZ2q4,533
58
52
  cartography/data/jobs/cleanup/aws_import_s3_buckets_cleanup.json,sha256=zF_TRTZGorQO6SIXryO3qAUVWM8We2fBABuTS3rflQU,756
59
- cartography/data/jobs/cleanup/aws_import_secrets_cleanup.json,sha256=ehQJQSoWmDths9FjhBJZA3SndlvmzWjzrUaKxmz-2PY,283
60
53
  cartography/data/jobs/cleanup/aws_import_securityhub_cleanup.json,sha256=WO6OrIFr6tqbRtF0bG_JwVp4ofnnsHciJISnDBZkZxU,266
61
54
  cartography/data/jobs/cleanup/aws_import_sqs_queues_cleanup.json,sha256=Mla8y-CWaQdPJO9IDmWDz_zCAuclcJ4GRhlAlYVj_qw,629
62
55
  cartography/data/jobs/cleanup/aws_import_tags_cleanup.json,sha256=mVOmhpoeHYItYQFATlTTeBhUt2GipAliRhh69zQcHok,7360
@@ -68,7 +61,6 @@ cartography/data/jobs/cleanup/aws_ingest_ec2_auto_scaling_groups_cleanup.json,sh
68
61
  cartography/data/jobs/cleanup/aws_ingest_load_balancers_cleanup.json,sha256=1vidNCrITt-_bxw5lsSzyqGsuyWiNhI6-bnuv5lMvRI,1729
69
62
  cartography/data/jobs/cleanup/aws_ingest_load_balancers_v2_cleanup.json,sha256=kIMc5YTkWDOLdHCOAHPb7Q8Oz9pP6GzGO9gjBo0ZhR0,1596
70
63
  cartography/data/jobs/cleanup/aws_ingest_subnets_cleanup.json,sha256=HtTXrA50PzBJ6LFnKZkO4hnnKxKqF6xUwqUrtFrp29Y,527
71
- cartography/data/jobs/cleanup/aws_kms_details.json,sha256=awluz0DhiAcdABiTYL9M8EUQz2FAuXVpu8lICRpTEnU,319
72
64
  cartography/data/jobs/cleanup/aws_post_ingestion_principals_cleanup.json,sha256=h3A6jNk7DGLFq6ob06-V9qzuYN-CltyHq_r2Gj8DqCI,266
73
65
  cartography/data/jobs/cleanup/aws_s3_details.json,sha256=-GEnBicRjLBNEDS2k2MzE2PUFbQ5WmxXUbYeVTvlJzQ,316
74
66
  cartography/data/jobs/cleanup/azure_cosmosdb_cassandra_keyspace_cleanup.json,sha256=_WIFvR-OGvG2q163NKsNXPqbDATz7rv7FLUTlWtnvK4,1358
@@ -90,7 +82,7 @@ cartography/data/jobs/cleanup/digitalocean_project_cleanup.json,sha256=5mo9vPshC
90
82
  cartography/data/jobs/cleanup/gcp_compute_firewall_cleanup.json,sha256=FVNJ8EPaPhmQ_sh4vyTdMyEgs6Y-DIoFTdWJaELgz44,1904
91
83
  cartography/data/jobs/cleanup/gcp_compute_forwarding_rules_cleanup.json,sha256=1xP5eTaHkAuVIRU5fHAOIv2tG90rdl2sFpIm-1Yv39E,992
92
84
  cartography/data/jobs/cleanup/gcp_compute_instance_cleanup.json,sha256=i_Ni3HfuralAWxePLVAv09DNWwTl6_8l6q7HnlPO254,2774
93
- cartography/data/jobs/cleanup/gcp_compute_vpc_cleanup.json,sha256=Rvh6sKun9fYKU6-EYp3f28o3kv_BfsXBCkOE5gPGk5w,931
85
+ cartography/data/jobs/cleanup/gcp_compute_vpc_cleanup.json,sha256=MipVxpRuzsYt2F1-ioZxGg94MsL8yK6ciULjEtMWG1Y,355
94
86
  cartography/data/jobs/cleanup/gcp_compute_vpc_subnet_cleanup.json,sha256=4OhOBCSAbaED-HdKTCcaYyYjyq4HCRIR05qYy4ZdI2c,1610
95
87
  cartography/data/jobs/cleanup/gcp_crm_folder_cleanup.json,sha256=hjEcSzG775un37uPBGz3FWm6nSQPQx9glWvGi1DrRN8,950
96
88
  cartography/data/jobs/cleanup/gcp_crm_organization_cleanup.json,sha256=Jftx00zgZRBwnCRWF7oie9ZQnydshN0qnGx0HXnraxc,613
@@ -155,35 +147,36 @@ cartography/intel/aws/__init__.py,sha256=lgu0kxERg_dJGuktEDU0ImpHuNGHJharoLEpirK
155
147
  cartography/intel/aws/acm.py,sha256=a_i2pYPpocjlL8itwlcrmg8KrSLfjcmrkhcrPP-Omj8,3827
156
148
  cartography/intel/aws/apigateway.py,sha256=hOYVSY70DbrEfhi9gkX7PAMtg9WiPE0Pbp2wqGes7Vs,12198
157
149
  cartography/intel/aws/cloudtrail.py,sha256=LCqf3pQMiMY4h1Wehb_OjwXst2fMIEnNOD8HbXsK4X4,2753
158
- cartography/intel/aws/cloudtrail_management_events.py,sha256=cNVJkjenr4J9Cec8PGykdEFDcJaK2wmKPv7yiQC5Cd0,33792
150
+ cartography/intel/aws/cloudtrail_management_events.py,sha256=e4P9HTqv7JKqJk-QtjWuFFt4X753PPw5JgtT5Y6GW2U,34732
159
151
  cartography/intel/aws/cloudwatch.py,sha256=bBPlx5W15nun-jhYs-UAZQpo9Qm7FcBs4gBQevTqmi4,7246
160
152
  cartography/intel/aws/codebuild.py,sha256=8I-Xzm_c5-ixnGOOHIQLYYpClnaGjjHrEMjQ0-DGsgM,3958
161
153
  cartography/intel/aws/config.py,sha256=IIICicLQ0OTT3H3o8LDakIkA1BPUMwSyzpKonet-PaY,7658
162
154
  cartography/intel/aws/dynamodb.py,sha256=VvvjeUgi1ZrqY9flXIQnfhhaSVSEqXXHW6T9917VLBk,5728
163
- cartography/intel/aws/ecr.py,sha256=7a9EHZru6AUIGE_6MJ4h4_ZmrvBxsXaerCHtGr59lJ0,8393
155
+ cartography/intel/aws/ecr.py,sha256=_caYJexDxTzYMzyJ3oJwEOuEQJKjwEuH-5PHOejt7Ec,7131
164
156
  cartography/intel/aws/ecs.py,sha256=h5Nn09MzqPftbXV46jybjsxnYVYW1Vit41kCkaFIq_4,14105
165
157
  cartography/intel/aws/efs.py,sha256=6ZvFmVHLfZlyo8xx2dlRsC1IoVOpBOtsij_AdFczkDo,7884
166
158
  cartography/intel/aws/eks.py,sha256=bPItyEj5q0nSDltJrr0S5MIrTPV0fK3xkqF6EV8fcqA,3759
167
159
  cartography/intel/aws/elasticache.py,sha256=ePTi-49Lbw94L6m7id5dUk1cG6FZRizFxojxKZBk8XY,5552
168
160
  cartography/intel/aws/elasticsearch.py,sha256=8X_Rp1zejkvXho0Zz_Cr4g-w9IpompdYRc-YS595Aso,8645
169
161
  cartography/intel/aws/emr.py,sha256=EJoKjHQP7-F_A1trUNU05Sb42yNR1i0C9VIpGcCfAXw,3662
162
+ cartography/intel/aws/glue.py,sha256=-AQh1PIbWzi7y-uZbx2yaHnrEpMsENSBX-pGUFqc6xQ,3349
170
163
  cartography/intel/aws/guardduty.py,sha256=QpwWisz3TzbOxkRKNjByk4WWDCCMXr8jgNOgOdjQM5g,8532
171
164
  cartography/intel/aws/iam.py,sha256=bkyIzWw2OC4MHxuoCvTiZ5eEGEQhz2asiUgY_tkX2GY,34322
172
165
  cartography/intel/aws/iam_instance_profiles.py,sha256=QUyu30xid60BFaemp-q0y9FgNsHaIQyQnQ8gHUzWC4k,2211
173
- cartography/intel/aws/identitycenter.py,sha256=C2EOfwQO1zBjePAXtreUcJIy7RU__ior3liRT4SpGO8,9544
166
+ cartography/intel/aws/identitycenter.py,sha256=Q1k1BuBmtA85s5tHGS7lvgGxQ-H-piIyiWgyevFL92U,11161
174
167
  cartography/intel/aws/inspector.py,sha256=G8a60uuFCuENvR2DNJ9VmWEJwG9UDENaC1buULvuSZc,12415
175
- cartography/intel/aws/kms.py,sha256=RtCxNG-Den-f4Il-NO3YL_-BFUmg1qFt4lNucue9SQM,12130
176
- cartography/intel/aws/lambda_function.py,sha256=cutCsMnvyJB8vKUP0fHORrhijw944cXSoLKOHYdi6SM,10389
168
+ cartography/intel/aws/kms.py,sha256=cnWZtzI7hsaXAt4CpdddAVDqaPZvtoXCoJIdqapHAbA,10754
169
+ cartography/intel/aws/lambda_function.py,sha256=3hpgqI1HOeywcP3xV-OcoCOxfyyqfyMaYeb46xdf8B4,9585
177
170
  cartography/intel/aws/organizations.py,sha256=m5qk60N6pe7iKLN-Rtfg9aYv7OozoloSkcsuePd-RGs,4680
178
171
  cartography/intel/aws/permission_relationships.py,sha256=LTmnHS6zk9hcdL548V5ka3Ey-6NsFjy1JYZTfRyB9Ys,15647
179
- cartography/intel/aws/rds.py,sha256=9TQsoUQAJXj3x7laqJp06N9TQIN9ARyRiImBW9lQKOI,26574
172
+ cartography/intel/aws/rds.py,sha256=are2LsWe8tM4UkCaGVnXS7F-ZVawklpc9h4lsM-fpGY,16173
180
173
  cartography/intel/aws/redshift.py,sha256=FGcCzcnm1OOrbJvLqtR1DwWVn1pt4Y6_eKkTUERT7Ws,7108
181
- cartography/intel/aws/resourcegroupstaggingapi.py,sha256=CebHaVLh8cr4CDYz54p5MGANPuE5Ni-_nFC78Znh4uU,10807
182
- cartography/intel/aws/resources.py,sha256=rr5TB5QiOymjoTR7Lr09HbdnCgycMGq52mC4CP7MhQo,4238
183
- cartography/intel/aws/route53.py,sha256=-AZDD4zVR5pQ_c1bx87UZuzbC0mDiI-YS_8llFMZkwI,14424
174
+ cartography/intel/aws/resourcegroupstaggingapi.py,sha256=TkMlUKLrRBWAyeUu-cHKce7TFkwBnWV_Im8DONgnLGU,12852
175
+ cartography/intel/aws/resources.py,sha256=R4pDieVCbvvz_gAde606vnxFafKWjE2YfyE8-fv6R7o,4280
176
+ cartography/intel/aws/route53.py,sha256=27ocRlNnxiXi7M7eYLUCVBNwaLyArX4CAExoOBxGl3Y,14294
184
177
  cartography/intel/aws/s3.py,sha256=Da_5NYvQ7MN1AIN7CK9XXlVZo0fPdNHkqBZY1JWnHH4,33598
185
178
  cartography/intel/aws/s3accountpublicaccessblock.py,sha256=XkqHnbj9ODRcc7Rbl4swi03qvw_T-7Bnx3BHpTmlxio,4688
186
- cartography/intel/aws/secretsmanager.py,sha256=TelS5Th0Yooj-cv243VHWu-xEadhfyP9x7B1sjPWDIM,7606
179
+ cartography/intel/aws/secretsmanager.py,sha256=xM6znqD0cKNJbAhO2Zg3svyO7YUOqPFbunhODAVXMgw,7777
187
180
  cartography/intel/aws/securityhub.py,sha256=oR808vrEAHsHH79u8hf-hkVTBcdNd6ZObCeNGD_xnSo,2324
188
181
  cartography/intel/aws/sns.py,sha256=UlBvYzEjjXDgxN_dihqRatIcAt-NivNp_YsZPasVuT4,6377
189
182
  cartography/intel/aws/sqs.py,sha256=RUR8chO1oU5esZbHzKyhOO4L7LXmH78G6kGGtUCqB5Q,4096
@@ -250,11 +243,11 @@ cartography/intel/duo/users.py,sha256=e2eK716wVlO71O9Q9KrWZot2cHjHZ7KgC9ZW27pCDa
250
243
  cartography/intel/duo/web_authn_credentials.py,sha256=mLWXdBe4V6fHCFotmtJmwhTSoOY6Hx87D3zI3hlL2nc,2656
251
244
  cartography/intel/entra/__init__.py,sha256=c4zkMFKRem8aRDUqjAvcNw8UwBvAv24Xq8yednlhAjU,2331
252
245
  cartography/intel/entra/applications.py,sha256=RAvUxk_hwsKbf64ohhg3f-QuTzsT7zb8q13d9nQuyqg,13625
253
- cartography/intel/entra/groups.py,sha256=PiXW28jWv1zoAYsTy_6ntAUDdQWdO2-AZvH5BfGytvg,5026
246
+ cartography/intel/entra/groups.py,sha256=dENox8CUU_ngHkH0dDgzhH7mBthEovE6Trw6TyNAfGo,5994
254
247
  cartography/intel/entra/ou.py,sha256=iv5UgRcPIaUZ8DdveKTmMkz0thEPYichpL9XntbHiPo,3803
255
248
  cartography/intel/entra/users.py,sha256=LiQuvpzPefRWvW1o07l-8TYrr6sUmpiYFli_4ROKJEw,8491
256
- cartography/intel/gcp/__init__.py,sha256=PtzheGqf2otRVmDe3Ai1n6JFq3_OtS2hmJrRfj8_BnQ,18896
257
- cartography/intel/gcp/compute.py,sha256=BShmgIhv_9E4rYfDe2ER3XIWZmU1NJIyZWIAvZY0uh0,49805
249
+ cartography/intel/gcp/__init__.py,sha256=K8UOJmrhmG6b3ULJQVmOM4UC-v0KyKMKmhR_07_O41M,19421
250
+ cartography/intel/gcp/compute.py,sha256=id8B8RqrfyfRITD57KPh4zIHmjrQFSwtH4aNq3XHB2A,48897
258
251
  cartography/intel/gcp/crm.py,sha256=BoVBKthjviOD7WSGhXdKtBhrk4TR9qTxMQX6xsmEedw,12682
259
252
  cartography/intel/gcp/dns.py,sha256=motkUXZLO30FEemqdffWuZA1Y1DLv0lGOgUqOi6ep4c,8157
260
253
  cartography/intel/gcp/gke.py,sha256=2-lhTzFEh-gAQ756Sr0kZZJY5_zcFWPS7_p0EVNzuR8,8326
@@ -412,6 +405,10 @@ cartography/models/aws/ec2/subnet_instance.py,sha256=6bgrWbFcCjBIjqd_6lcKv6rWyll
412
405
  cartography/models/aws/ec2/subnet_networkinterface.py,sha256=B60S1YvEopVWNlRL5W-hMby3-P06uaNcC_8oOLoRGik,3872
413
406
  cartography/models/aws/ec2/subnets.py,sha256=BtlFgf03IaD9XFesv5uzHBCm6xr71LT435m9t4MHkY8,2915
414
407
  cartography/models/aws/ec2/volumes.py,sha256=spAi4QjoYjp5G-qNuFJdW4b-oZg7by5g5FEaqJv1mZo,5242
408
+ cartography/models/aws/ecr/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
409
+ cartography/models/aws/ecr/image.py,sha256=8atk1Z13BgUOcAq3uIK-sJ9gDxwcmeCIk7x1PW9B4BE,1753
410
+ cartography/models/aws/ecr/repository.py,sha256=goItMJ3XnLSSk8FCMvgCpWCSsleTqdNzUT_Asvw8Yhk,2908
411
+ cartography/models/aws/ecr/repository_image.py,sha256=p_uV3rImyWMYl9DdLU7mpHI74xRuBd4cJvJI5wutBeM,3883
415
412
  cartography/models/aws/ecs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
416
413
  cartography/models/aws/ecs/clusters.py,sha256=uu-UzkSbpLu4UG5I6NsFMaThrPYl6jYe71EX8baMy1Q,2845
417
414
  cartography/models/aws/ecs/container_definitions.py,sha256=ocJMyl6wfxbW3aPrR6xwzqP9VMpkanKA3ghqcM5BWL0,4169
@@ -429,21 +426,43 @@ cartography/models/aws/eks/clusters.py,sha256=OthI554MrYNSl-p6ArMJsSH43xKPRDSnEm
429
426
  cartography/models/aws/elasticache/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
430
427
  cartography/models/aws/elasticache/cluster.py,sha256=3tx3fL3FPSp4QX3pd42sV71t6kYRl-IfvU_56S7WmGo,3227
431
428
  cartography/models/aws/elasticache/topic.py,sha256=Rq-Hj6xo9xouRLw2NRNU1cmmVUlOP0ieRA8fT5GlZ2w,2757
429
+ cartography/models/aws/glue/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
430
+ cartography/models/aws/glue/connection.py,sha256=wG7mDMoYnmAHXrLfi52_1wPHF6VcrLOKfDmZaJJti1Q,2213
432
431
  cartography/models/aws/guardduty/__init__.py,sha256=ILQhP6R9RLgXzPKdmPzuGqhOgAXeIReUEyqKS-ZXS3k,19
433
432
  cartography/models/aws/guardduty/findings.py,sha256=LwUE1DbDyl9c3g5fUSZxsYKQ8U44wDS4Pps-QPMyr3Y,4184
434
433
  cartography/models/aws/iam/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
435
434
  cartography/models/aws/iam/instanceprofile.py,sha256=tlIkiCPX_9B9XPNAR0LcJAec8AbJq4dxgN8dgvEPXLs,2942
436
435
  cartography/models/aws/identitycenter/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
437
436
  cartography/models/aws/identitycenter/awsidentitycenter.py,sha256=-ybcEgdZjwF0RINR_iLpmf5EOjuXYbz_CtixP-yqV30,2038
438
- cartography/models/aws/identitycenter/awspermissionset.py,sha256=12kDKzsJQOHg6d9dlX98sM9gKXGMQh7FaxzlJov7Dgo,3651
437
+ cartography/models/aws/identitycenter/awspermissionset.py,sha256=egFas3D4tkUZhaE2uQTwLihsVtJB8QBMlgBO5Px4UYs,5294
439
438
  cartography/models/aws/identitycenter/awsssouser.py,sha256=EWnyX5ev2aaK64YjKGuJSoknBF5b_kS5xc0kDf_0xfo,2886
440
439
  cartography/models/aws/inspector/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
441
440
  cartography/models/aws/inspector/findings.py,sha256=ikm0vvjhGK_-BDt5VGyS4_0KwJsq81T6VgROq9HK2NE,8188
442
441
  cartography/models/aws/inspector/packages.py,sha256=IoJT7w6n8Vx3vGGJPWKDgJLRpioqtOS5iMYZLnX7thg,2113
442
+ cartography/models/aws/kms/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
443
+ cartography/models/aws/kms/aliases.py,sha256=dJizJxxPzsWuZGY77gPcX7OlPO5Y3nHOUJoqf0CNKos,2998
444
+ cartography/models/aws/kms/grants.py,sha256=oBSRRgme3dVejgilkBPcdPsHhyNAxGyhyQuVQmAP0fc,2623
445
+ cartography/models/aws/kms/keys.py,sha256=qfdc5wlN84j00Pjxq85GHQxLZ_asyNq2oD5Tj--MCZ4,3401
446
+ cartography/models/aws/lambda_function/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
447
+ cartography/models/aws/lambda_function/alias.py,sha256=4NSxgpxAIY1Zzx9ApH9v4Oli5czisRLDKKByaRWy2eQ,3023
448
+ cartography/models/aws/lambda_function/event_source_mapping.py,sha256=nx4niDZ-cKwMmQrieqOgmThN-ITfF-o8AB6epKDvBfs,3997
449
+ cartography/models/aws/lambda_function/lambda_function.py,sha256=YRwoVcfD8xpVPz2YJsgfA6Y0jEVF_PnJ0WFynMu6gXg,4027
450
+ cartography/models/aws/lambda_function/layer.py,sha256=kKMxm5XkAIx-VBZZX3teA6Md-jByBBdFnSoebjqq3ik,2868
451
+ cartography/models/aws/rds/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
452
+ cartography/models/aws/rds/cluster.py,sha256=chxwnOU7hGOvlnyTtaHx0ZxqyJIXQJ1qWEv68ti_nqo,4330
453
+ cartography/models/aws/rds/instance.py,sha256=B6vMGNDR9JhheJbnHGdrU0ZFyLorw55ZIsvlkkxjw6Q,6450
454
+ cartography/models/aws/rds/snapshot.py,sha256=T_2kqvJW2iDjPSg2cr9amXZNTotE9Zm66GSCDteiNbQ,4821
455
+ cartography/models/aws/rds/subnet_group.py,sha256=0tr68MYpWwRC-P23XLh-GecMQAfrQwLZ82LfdbcLsSc,3676
456
+ cartography/models/aws/route53/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
457
+ cartography/models/aws/route53/dnsrecord.py,sha256=JNkK7S1B7rB-uag1LuLhe2Rkct5foJ2X_bmUzUZsbuo,7552
458
+ cartography/models/aws/route53/nameserver.py,sha256=yKH3u_PDi7C-UQ69mNPiiFppsfiFC4nN0glouAGOoN8,2511
459
+ cartography/models/aws/route53/subzone.py,sha256=g3k4RHm5YqH-AjIZynlF4sj64cBhkiZ2L2CwV23j_L4,1674
460
+ cartography/models/aws/route53/zone.py,sha256=6yNSdZcmJZOzGjVG7HSC35P9fFKaxYTUp_O_Ptzt1Fk,2011
443
461
  cartography/models/aws/s3/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
444
462
  cartography/models/aws/s3/account_public_access_block.py,sha256=L6AS0OncfSOWHP4pOXshnJFDPwnWqywzUIeUppJcw-Q,2256
445
463
  cartography/models/aws/s3/notification.py,sha256=SF1VvCP_2WVh8K29d4ms8MUcg9AyO_MN8vCgzLFlGAs,1017
446
464
  cartography/models/aws/secretsmanager/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
465
+ cartography/models/aws/secretsmanager/secret.py,sha256=q1uSqqL6wCvSJuCooORqHg6uMXiWxiGZYhDzYtF54wo,3928
447
466
  cartography/models/aws/secretsmanager/secret_version.py,sha256=Ah4b9BjgL24MhmxRV-HarvmNs_uCRNVMkxgvzIEp9uk,4167
448
467
  cartography/models/aws/sns/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
449
468
  cartography/models/aws/sns/topic.py,sha256=_Lcu7_c_UCUcPKEo5-kCdX3fAOkar_YKZbLmonX3BR8,2349
@@ -487,11 +506,13 @@ cartography/models/duo/web_authn_credential.py,sha256=nCdonZFyShuE5-CnI2Vxiu5BZ0
487
506
  cartography/models/entra/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
488
507
  cartography/models/entra/app_role_assignment.py,sha256=BvZBWq3jd1Fw448dmIXQpHT-mBOqevNY_my-iQHpZp8,4618
489
508
  cartography/models/entra/application.py,sha256=ZNVY0a0T2nmdoVj2i5Xri0J8oIR5d9HVcLAl0yLG6s8,1968
490
- cartography/models/entra/group.py,sha256=d8QLBzqje4MkdN2uC4LXSxjUQ8_2T_cv4YbrPGfZ994,3809
509
+ cartography/models/entra/group.py,sha256=Ora5w7t7D7m98EVjknchsAmoEhEtlMJAeziCvkbYtAU,4859
491
510
  cartography/models/entra/ou.py,sha256=YmtW1Cp_XX29uzbunhEGl073AzV6PZsQtLs_MR-ACNU,2056
492
511
  cartography/models/entra/tenant.py,sha256=abpNTvOtXHgdrU-y7q6jt--odcq1eRsT2j5nMdVy_Gw,1793
493
- cartography/models/entra/user.py,sha256=uVMOYhVMwnR1dqokhAzk1IlHpmKwGpz0H5osS_9ENBE,3144
512
+ cartography/models/entra/user.py,sha256=UIZ3y4JRMfU5QgcOSGAdURH1wKvtQwicDw1q48AbhX8,3315
494
513
  cartography/models/gcp/iam.py,sha256=k6egP-DHvMX18QcLuwklxqLZXd4YPMhAs5-qWWloqJ4,3071
514
+ cartography/models/gcp/compute/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
515
+ cartography/models/gcp/compute/vpc.py,sha256=bbFfo_Rh7brXvNqY8fx-jz9zUDtPew_Wcq-WGv9j9cI,2131
495
516
  cartography/models/github/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
496
517
  cartography/models/github/dependencies.py,sha256=QHUgWSLTkSdhTxcgx5ct-yD2-Il7plg3N-fcZGZpKM4,3143
497
518
  cartography/models/github/manifests.py,sha256=1trwgECCjvZKS63z2k8mB55Fa8d2l-uU7HSgfL95iwA,2078
@@ -557,9 +578,9 @@ cartography/models/trivy/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZ
557
578
  cartography/models/trivy/findings.py,sha256=SgI_h1aRyR20uAHvuXIZ1T6r4IZJt6SVhxRaF2bTsm0,3085
558
579
  cartography/models/trivy/fix.py,sha256=ho9ENVl9HSXqyggyCwR6ilkOBKDxpQ7rGibo_j21NA4,2587
559
580
  cartography/models/trivy/package.py,sha256=IwO1RZZ-MFRtNbt8Cq6YFl6fdNJMFmULnJkkK8Q4rL4,2809
560
- cartography-0.108.0rc2.dist-info/licenses/LICENSE,sha256=kvLEBRYaQ1RvUni6y7Ti9uHeooqnjPoo6n_-0JO1ETc,11351
561
- cartography-0.108.0rc2.dist-info/METADATA,sha256=r1dvNQTpsRcZZeMToOuD39Nb6RUDfKt8EMpEWjFfSIU,12914
562
- cartography-0.108.0rc2.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
563
- cartography-0.108.0rc2.dist-info/entry_points.txt,sha256=GVIAWD0o0_K077qMA_k1oZU4v-M0a8GLKGJR8tZ-qH8,112
564
- cartography-0.108.0rc2.dist-info/top_level.txt,sha256=BHqsNJQiI6Q72DeypC1IINQJE59SLhU4nllbQjgJi9g,12
565
- cartography-0.108.0rc2.dist-info/RECORD,,
581
+ cartography-0.109.0rc2.dist-info/licenses/LICENSE,sha256=kvLEBRYaQ1RvUni6y7Ti9uHeooqnjPoo6n_-0JO1ETc,11351
582
+ cartography-0.109.0rc2.dist-info/METADATA,sha256=x8x0Hg37Mn7ctpEhcGeHqxPkCZkB7CbuM-3xf3AJHvs,12930
583
+ cartography-0.109.0rc2.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
584
+ cartography-0.109.0rc2.dist-info/entry_points.txt,sha256=GVIAWD0o0_K077qMA_k1oZU4v-M0a8GLKGJR8tZ-qH8,112
585
+ cartography-0.109.0rc2.dist-info/top_level.txt,sha256=BHqsNJQiI6Q72DeypC1IINQJE59SLhU4nllbQjgJi9g,12
586
+ cartography-0.109.0rc2.dist-info/RECORD,,