cartography 0.114.0__py3-none-any.whl → 0.115.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 (39) hide show
  1. cartography/_version.py +2 -2
  2. cartography/cli.py +2 -2
  3. cartography/client/core/tx.py +11 -0
  4. cartography/intel/aws/config.py +7 -3
  5. cartography/intel/aws/ecr.py +9 -9
  6. cartography/intel/aws/identitycenter.py +240 -13
  7. cartography/intel/aws/lambda_function.py +69 -2
  8. cartography/intel/aws/organizations.py +3 -1
  9. cartography/intel/aws/permission_relationships.py +3 -1
  10. cartography/intel/aws/redshift.py +9 -4
  11. cartography/intel/aws/route53.py +53 -3
  12. cartography/intel/aws/securityhub.py +3 -1
  13. cartography/intel/azure/__init__.py +8 -0
  14. cartography/intel/azure/logic_apps.py +101 -0
  15. cartography/intel/create_indexes.py +2 -1
  16. cartography/intel/dns.py +5 -2
  17. cartography/intel/gcp/dns.py +2 -1
  18. cartography/intel/github/repos.py +3 -6
  19. cartography/intel/gsuite/api.py +17 -4
  20. cartography/intel/okta/applications.py +9 -4
  21. cartography/intel/okta/awssaml.py +5 -2
  22. cartography/intel/okta/factors.py +3 -1
  23. cartography/intel/okta/groups.py +5 -2
  24. cartography/intel/okta/organization.py +3 -1
  25. cartography/intel/okta/origins.py +3 -1
  26. cartography/intel/okta/roles.py +5 -2
  27. cartography/intel/okta/users.py +3 -1
  28. cartography/models/aws/identitycenter/awspermissionset.py +24 -1
  29. cartography/models/aws/identitycenter/awssogroup.py +70 -0
  30. cartography/models/aws/identitycenter/awsssouser.py +37 -1
  31. cartography/models/aws/lambda_function/lambda_function.py +2 -0
  32. cartography/models/azure/logic_apps.py +56 -0
  33. cartography/models/entra/user.py +18 -0
  34. {cartography-0.114.0.dist-info → cartography-0.115.0.dist-info}/METADATA +3 -2
  35. {cartography-0.114.0.dist-info → cartography-0.115.0.dist-info}/RECORD +39 -36
  36. {cartography-0.114.0.dist-info → cartography-0.115.0.dist-info}/WHEEL +0 -0
  37. {cartography-0.114.0.dist-info → cartography-0.115.0.dist-info}/entry_points.txt +0 -0
  38. {cartography-0.114.0.dist-info → cartography-0.115.0.dist-info}/licenses/LICENSE +0 -0
  39. {cartography-0.114.0.dist-info → cartography-0.115.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,70 @@
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 SSOGroupProperties(CartographyNodeProperties):
16
+ id: PropertyRef = PropertyRef("GroupId")
17
+ display_name: PropertyRef = PropertyRef("DisplayName")
18
+ description: PropertyRef = PropertyRef("Description")
19
+ identity_store_id: PropertyRef = PropertyRef("IdentityStoreId")
20
+ external_id: PropertyRef = PropertyRef("ExternalId", extra_index=True)
21
+ region: PropertyRef = PropertyRef("Region")
22
+ lastupdated: PropertyRef = PropertyRef("lastupdated", set_in_kwargs=True)
23
+
24
+
25
+ @dataclass(frozen=True)
26
+ class AWSSSOGroupToAWSAccountRelProperties(CartographyRelProperties):
27
+ lastupdated: PropertyRef = PropertyRef("lastupdated", set_in_kwargs=True)
28
+
29
+
30
+ @dataclass(frozen=True)
31
+ class AWSSSOGroupToAWSAccountRel(CartographyRelSchema):
32
+ target_node_label: str = "AWSAccount"
33
+ target_node_matcher: TargetNodeMatcher = make_target_node_matcher(
34
+ {"id": PropertyRef("AWS_ID", set_in_kwargs=True)},
35
+ )
36
+ direction: LinkDirection = LinkDirection.INWARD
37
+ rel_label: str = "RESOURCE"
38
+ properties: AWSSSOGroupToAWSAccountRelProperties = (
39
+ AWSSSOGroupToAWSAccountRelProperties()
40
+ )
41
+
42
+
43
+ @dataclass(frozen=True)
44
+ class AWSSSOGroupToPermissionSetRelProperties(CartographyRelProperties):
45
+ lastupdated: PropertyRef = PropertyRef("lastupdated", set_in_kwargs=True)
46
+
47
+
48
+ @dataclass(frozen=True)
49
+ class AWSSSOGroupToPermissionSetRel(CartographyRelSchema):
50
+ target_node_label: str = "AWSPermissionSet"
51
+ target_node_matcher: TargetNodeMatcher = make_target_node_matcher(
52
+ {"arn": PropertyRef("AssignedPermissionSets", one_to_many=True)},
53
+ )
54
+ direction: LinkDirection = LinkDirection.OUTWARD
55
+ rel_label: str = "HAS_PERMISSION_SET"
56
+ properties: AWSSSOGroupToPermissionSetRelProperties = (
57
+ AWSSSOGroupToPermissionSetRelProperties()
58
+ )
59
+
60
+
61
+ @dataclass(frozen=True)
62
+ class AWSSSOGroupSchema(CartographyNodeSchema):
63
+ label: str = "AWSSSOGroup"
64
+ properties: SSOGroupProperties = SSOGroupProperties()
65
+ sub_resource_relationship: AWSSSOGroupToAWSAccountRel = AWSSSOGroupToAWSAccountRel()
66
+ other_relationships: OtherRelationships = OtherRelationships(
67
+ [
68
+ AWSSSOGroupToPermissionSetRel(),
69
+ ]
70
+ )
@@ -14,7 +14,7 @@ from cartography.models.core.relationships import TargetNodeMatcher
14
14
 
15
15
  @dataclass(frozen=True)
16
16
  class SSOUserProperties(CartographyNodeProperties):
17
- id: PropertyRef = PropertyRef("UserId", extra_index=True)
17
+ id: PropertyRef = PropertyRef("UserId")
18
18
  user_name: PropertyRef = PropertyRef("UserName")
19
19
  identity_store_id: PropertyRef = PropertyRef("IdentityStoreId")
20
20
  external_id: PropertyRef = PropertyRef("ExternalId", extra_index=True)
@@ -57,6 +57,40 @@ class AWSSSOUserToAWSAccountRel(CartographyRelSchema):
57
57
  )
58
58
 
59
59
 
60
+ @dataclass(frozen=True)
61
+ class AWSSSOUserToSSOGroupRelProperties(CartographyRelProperties):
62
+ lastupdated: PropertyRef = PropertyRef("lastupdated", set_in_kwargs=True)
63
+
64
+
65
+ @dataclass(frozen=True)
66
+ class AWSSSOUserToSSOGroupRel(CartographyRelSchema):
67
+ target_node_label: str = "AWSSSOGroup"
68
+ target_node_matcher: TargetNodeMatcher = make_target_node_matcher(
69
+ {"id": PropertyRef("MemberOfGroups", one_to_many=True)},
70
+ )
71
+ direction: LinkDirection = LinkDirection.OUTWARD
72
+ rel_label: str = "MEMBER_OF_SSO_GROUP"
73
+ properties: AWSSSOUserToSSOGroupRelProperties = AWSSSOUserToSSOGroupRelProperties()
74
+
75
+
76
+ @dataclass(frozen=True)
77
+ class AWSSSOUserToPermissionSetRelProperties(CartographyRelProperties):
78
+ lastupdated: PropertyRef = PropertyRef("lastupdated", set_in_kwargs=True)
79
+
80
+
81
+ @dataclass(frozen=True)
82
+ class AWSSSOUserToPermissionSetRel(CartographyRelSchema):
83
+ target_node_label: str = "AWSPermissionSet"
84
+ target_node_matcher: TargetNodeMatcher = make_target_node_matcher(
85
+ {"arn": PropertyRef("AssignedPermissionSets", one_to_many=True)},
86
+ )
87
+ direction: LinkDirection = LinkDirection.OUTWARD
88
+ rel_label: str = "HAS_PERMISSION_SET"
89
+ properties: AWSSSOUserToPermissionSetRelProperties = (
90
+ AWSSSOUserToPermissionSetRelProperties()
91
+ )
92
+
93
+
60
94
  @dataclass(frozen=True)
61
95
  class AWSSSOUserSchema(CartographyNodeSchema):
62
96
  label: str = "AWSSSOUser"
@@ -66,5 +100,7 @@ class AWSSSOUserSchema(CartographyNodeSchema):
66
100
  other_relationships: OtherRelationships = OtherRelationships(
67
101
  [
68
102
  SSOUserToOktaUserRel(),
103
+ AWSSSOUserToSSOGroupRel(),
104
+ AWSSSOUserToPermissionSetRel(),
69
105
  ],
70
106
  )
@@ -39,6 +39,8 @@ class AWSLambdaNodeProperties(CartographyNodeProperties):
39
39
  architectures: PropertyRef = PropertyRef("Architectures")
40
40
  masterarn: PropertyRef = PropertyRef("MasterArn")
41
41
  kmskeyarn: PropertyRef = PropertyRef("KMSKeyArn")
42
+ anonymous_access: PropertyRef = PropertyRef("AnonymousAccess")
43
+ anonymous_actions: PropertyRef = PropertyRef("AnonymousActions")
42
44
  region: PropertyRef = PropertyRef("Region", set_in_kwargs=True)
43
45
  lastupdated: PropertyRef = PropertyRef("lastupdated", set_in_kwargs=True)
44
46
 
@@ -0,0 +1,56 @@
1
+ import logging
2
+ from dataclasses import dataclass
3
+
4
+ from cartography.models.core.common import PropertyRef
5
+ from cartography.models.core.nodes import CartographyNodeProperties
6
+ from cartography.models.core.nodes import CartographyNodeSchema
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
+ logger = logging.getLogger(__name__)
14
+
15
+
16
+ # --- Node Definitions ---
17
+ @dataclass(frozen=True)
18
+ class AzureLogicAppProperties(CartographyNodeProperties):
19
+ id: PropertyRef = PropertyRef("id")
20
+ name: PropertyRef = PropertyRef("name")
21
+ location: PropertyRef = PropertyRef("location")
22
+ state: PropertyRef = PropertyRef("state")
23
+ created_time: PropertyRef = PropertyRef("createdTime")
24
+ changed_time: PropertyRef = PropertyRef("changedTime")
25
+ version: PropertyRef = PropertyRef("version")
26
+ access_endpoint: PropertyRef = PropertyRef("accessEndpoint")
27
+ lastupdated: PropertyRef = PropertyRef("lastupdated", set_in_kwargs=True)
28
+
29
+
30
+ # --- Relationship Definitions ---
31
+ @dataclass(frozen=True)
32
+ class AzureLogicAppToSubscriptionRelProperties(CartographyRelProperties):
33
+ lastupdated: PropertyRef = PropertyRef("lastupdated", set_in_kwargs=True)
34
+
35
+
36
+ @dataclass(frozen=True)
37
+ class AzureLogicAppToSubscriptionRel(CartographyRelSchema):
38
+ target_node_label: str = "AzureSubscription"
39
+ target_node_matcher: TargetNodeMatcher = make_target_node_matcher(
40
+ {"id": PropertyRef("AZURE_SUBSCRIPTION_ID", set_in_kwargs=True)},
41
+ )
42
+ direction: LinkDirection = LinkDirection.INWARD
43
+ rel_label: str = "RESOURCE"
44
+ properties: AzureLogicAppToSubscriptionRelProperties = (
45
+ AzureLogicAppToSubscriptionRelProperties()
46
+ )
47
+
48
+
49
+ # --- Main Schema ---
50
+ @dataclass(frozen=True)
51
+ class AzureLogicAppSchema(CartographyNodeSchema):
52
+ label: str = "AzureLogicApp"
53
+ properties: AzureLogicAppProperties = AzureLogicAppProperties()
54
+ sub_resource_relationship: AzureLogicAppToSubscriptionRel = (
55
+ AzureLogicAppToSubscriptionRel()
56
+ )
@@ -8,6 +8,7 @@ from cartography.models.core.relationships import CartographyRelProperties
8
8
  from cartography.models.core.relationships import CartographyRelSchema
9
9
  from cartography.models.core.relationships import LinkDirection
10
10
  from cartography.models.core.relationships import make_target_node_matcher
11
+ from cartography.models.core.relationships import OtherRelationships
11
12
  from cartography.models.core.relationships import TargetNodeMatcher
12
13
 
13
14
  # The user resource in Microsoft Graph exposes hundreds of properties but, in
@@ -47,6 +48,18 @@ class EntraTenantToUserRelProperties(CartographyRelProperties):
47
48
  lastupdated: PropertyRef = PropertyRef("lastupdated", set_in_kwargs=True)
48
49
 
49
50
 
51
+ @dataclass(frozen=True)
52
+ # (:EntraUser)-[:REPORTS_TO]->(:EntraUser)
53
+ class EntraUserReportsToRel(CartographyRelSchema):
54
+ target_node_label: str = "EntraUser"
55
+ target_node_matcher: TargetNodeMatcher = make_target_node_matcher(
56
+ {"id": PropertyRef("manager_id")},
57
+ )
58
+ direction: LinkDirection = LinkDirection.OUTWARD
59
+ rel_label: str = "REPORTS_TO"
60
+ properties: EntraTenantToUserRelProperties = EntraTenantToUserRelProperties()
61
+
62
+
50
63
  @dataclass(frozen=True)
51
64
  # (:EntraUser)<-[:RESOURCE]-(:AzureTenant)
52
65
  class EntraUserToTenantRel(CartographyRelSchema):
@@ -64,6 +77,11 @@ class EntraUserSchema(CartographyNodeSchema):
64
77
  label: str = "EntraUser"
65
78
  properties: EntraUserNodeProperties = EntraUserNodeProperties()
66
79
  sub_resource_relationship: EntraUserToTenantRel = EntraUserToTenantRel()
80
+ other_relationships: OtherRelationships = OtherRelationships(
81
+ [
82
+ EntraUserReportsToRel(),
83
+ ]
84
+ )
67
85
  extra_node_labels: ExtraNodeLabels = ExtraNodeLabels(
68
86
  [
69
87
  "EntraIdentity",
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cartography
3
- Version: 0.114.0
3
+ Version: 0.115.0
4
4
  Summary: Explore assets and their relationships across your technical infrastructure.
5
5
  Maintainer: Cartography Contributors
6
6
  License-Expression: Apache-2.0
@@ -43,6 +43,7 @@ Requires-Dist: azure-mgmt-compute>=5.0.0
43
43
  Requires-Dist: azure-mgmt-resource>=10.2.0
44
44
  Requires-Dist: azure-mgmt-cosmosdb>=6.0.0
45
45
  Requires-Dist: azure-mgmt-web>=7.0.0
46
+ Requires-Dist: azure-mgmt-logic>=10.0.0
46
47
  Requires-Dist: msrestazure>=0.6.4
47
48
  Requires-Dist: azure-mgmt-storage>=16.0.0
48
49
  Requires-Dist: azure-mgmt-sql<=1.0.0
@@ -97,7 +98,7 @@ You can learn more about the story behind Cartography in our [presentation at BS
97
98
  - [Keycloak](https://cartography-cncf.github.io/cartography/modules/keycloak/index.html) - Realms, Users, Groups, Roles, Scopes, Clients, IdentityProviders, Authentication Flows, Authentication Executions, Organizations, Organization Domains
98
99
  - [Kubernetes](https://cartography-cncf.github.io/cartography/modules/kubernetes/index.html) - Cluster, Namespace, Service, Pod, Container, ServiceAccount, Role, RoleBinding, ClusterRole, ClusterRoleBinding, OIDCProvider
99
100
  - [Lastpass](https://cartography-cncf.github.io/cartography/modules/lastpass/index.html) - users
100
- - [Microsoft Azure](https://cartography-cncf.github.io/cartography/modules/azure/index.html) - App Service, CosmosDB, Functions, SQL, Storage, Virtual Machine
101
+ - [Microsoft Azure](https://cartography-cncf.github.io/cartography/modules/azure/index.html) - App Service, CosmosDB, Functions, Logic Apps, SQL, Storage, Virtual Machine
101
102
  - [Microsoft Entra ID](https://cartography-cncf.github.io/cartography/modules/entra/index.html) - Users, Groups, Applications, OUs, App Roles, federation to AWS Identity Center
102
103
  - [NIST CVE](https://cartography-cncf.github.io/cartography/modules/cve/index.html) - Common Vulnerabilities and Exposures (CVE) data from NIST database
103
104
  - [Okta](https://cartography-cncf.github.io/cartography/modules/okta/index.html) - users, groups, organizations, roles, applications, factors, trusted origins, reply URIs, federation to AWS roles, federation to AWS Identity Center
@@ -1,7 +1,7 @@
1
1
  cartography/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
2
  cartography/__main__.py,sha256=y5iqUrj4BmqZfjeDT-9balzpXeMARgHeIedRMRI1gr8,100
3
- cartography/_version.py,sha256=9sbPDJrDtsCSI0CVxWd_hlSTh-cScOFoCY8RBWcZND4,708
4
- cartography/cli.py,sha256=e2b5nlcFgG9D0vmr39BtNdi0r7tT6OYyvI-bxjzc5-c,49510
3
+ cartography/_version.py,sha256=On7q8Is0CTJSaa4-E0b2lpHrXvHfAGoMDY1Mt15hyLw,708
4
+ cartography/cli.py,sha256=RWwzYDSXALApsGxK5-iVdbEwK3HFvXs7yEB8u7HbsN0,49456
5
5
  cartography/config.py,sha256=aXOnUZP4JoOhTGu3wM--eEZ0HAR24W2ux3LmLp_410Q,18591
6
6
  cartography/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
7
7
  cartography/stats.py,sha256=N95prYlSzY8U52VFgKIDgOWOawu5Mig4N7GcVp3binQ,4420
@@ -12,7 +12,7 @@ cartography/client/aws/__init__.py,sha256=Zj7nX21QQELwPLZlpldm_22IiXZ1VFsEFQbWX_
12
12
  cartography/client/aws/ecr.py,sha256=04IXnuEAauyO5Mx9Wmt79WdUnYDhYsk2QSOnwE5_BeM,1664
13
13
  cartography/client/aws/iam.py,sha256=dYsGikc36DEsSeR2XVOVFFUDwuU9yWj_EVkpgVYCFgM,1293
14
14
  cartography/client/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
15
- cartography/client/core/tx.py,sha256=Xx6_a5u7PE5pyREuBL_J39ORcafqieFf4KdosaEv1c4,13530
15
+ cartography/client/core/tx.py,sha256=l7gM9F8UsuX52SW_R_bdRLxawyIV3C8zFOaRicNQRZM,13839
16
16
  cartography/data/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
17
17
  cartography/data/indexes.cypher,sha256=J2iwuStx4MdoM_qrL1HwFx5rU_Fxt3BTY3wRNwU6DTE,20273
18
18
  cartography/data/permission_relationships.yaml,sha256=RuKGGc_3ZUQ7ag0MssB8k_zaonCkVM5E8I_svBWTmGc,969
@@ -114,8 +114,8 @@ cartography/graph/querybuilder.py,sha256=-5Vpaf_HBgZpwGnzrgtUVuy_lnBXSYr8nvcYodb
114
114
  cartography/graph/statement.py,sha256=VtvZFMqzzZk-gDeOnBx6oDj90XYOCM1EWw4d55bm7SU,5383
115
115
  cartography/intel/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
116
116
  cartography/intel/analysis.py,sha256=uWIpmrk2hezkqjfepqz1VV2BopT7VZ-alBj2YekfE_c,1546
117
- cartography/intel/create_indexes.py,sha256=6G43Rko8oXsAhHdSb2RbSVMvGMLi_YALlyUQE77jPVw,742
118
- cartography/intel/dns.py,sha256=-qdPLy195GKSXjiutdjnNBh8LXjot3lc8pVQTa9HQMU,5777
117
+ cartography/intel/create_indexes.py,sha256=32dA---qSBPEimoHzrEMICfJaCu7-pacjinKX65PEDU,810
118
+ cartography/intel/dns.py,sha256=Bg8mT6GI2KaZRmzoeOj8TzAeXXhU-BWYSsjUpfHiJxI,5874
119
119
  cartography/intel/airbyte/__init__.py,sha256=1j5Rh7iW0TI9O9oLRq1XZd7LIO1t6NctOpcpd_E9urU,3097
120
120
  cartography/intel/airbyte/connections.py,sha256=yMgKUqoq_68_bfC6OMthVmddhndAX1FQxmOc8AqQJrw,3630
121
121
  cartography/intel/airbyte/destinations.py,sha256=6cnn6b3NHHQQA-JibtoY-H24e_k_J8Pc3qAzyO5bcwU,2152
@@ -139,9 +139,9 @@ cartography/intel/aws/cloudtrail_management_events.py,sha256=z5VZH1wQvl_ROG1sB9Z
139
139
  cartography/intel/aws/cloudwatch.py,sha256=bBPlx5W15nun-jhYs-UAZQpo9Qm7FcBs4gBQevTqmi4,7246
140
140
  cartography/intel/aws/codebuild.py,sha256=8I-Xzm_c5-ixnGOOHIQLYYpClnaGjjHrEMjQ0-DGsgM,3958
141
141
  cartography/intel/aws/cognito.py,sha256=9eV2M5aHiDJoyAIp4Py5xaoSYgj-298iih-qO6F6Bdw,5850
142
- cartography/intel/aws/config.py,sha256=IIICicLQ0OTT3H3o8LDakIkA1BPUMwSyzpKonet-PaY,7658
142
+ cartography/intel/aws/config.py,sha256=BTnDb0f67t6yFvJmDM1k-JF5rdfibDl96F8NNdmPhs0,7776
143
143
  cartography/intel/aws/dynamodb.py,sha256=VvvjeUgi1ZrqY9flXIQnfhhaSVSEqXXHW6T9917VLBk,5728
144
- cartography/intel/aws/ecr.py,sha256=_caYJexDxTzYMzyJ3oJwEOuEQJKjwEuH-5PHOejt7Ec,7131
144
+ cartography/intel/aws/ecr.py,sha256=S58gOOe81BcQHc2VqM5PMJ_pvghpQNRf5-rrX2Up3ew,7238
145
145
  cartography/intel/aws/ecs.py,sha256=NiKtSMtwW5BvQ1C48gSXXQtOQpTisL3xx4JdNBDujVA,14391
146
146
  cartography/intel/aws/efs.py,sha256=6ZvFmVHLfZlyo8xx2dlRsC1IoVOpBOtsij_AdFczkDo,7884
147
147
  cartography/intel/aws/eks.py,sha256=bPItyEj5q0nSDltJrr0S5MIrTPV0fK3xkqF6EV8fcqA,3759
@@ -153,21 +153,21 @@ cartography/intel/aws/glue.py,sha256=y3RQRNQutdMugSKOVnbJfA1CFfu12g8sqSuhp_AF4aI
153
153
  cartography/intel/aws/guardduty.py,sha256=QpwWisz3TzbOxkRKNjByk4WWDCCMXr8jgNOgOdjQM5g,8532
154
154
  cartography/intel/aws/iam.py,sha256=K1EENJqmJpJxtaPJQCH_n5SCM5SIYisV_e97w5ByPOQ,42292
155
155
  cartography/intel/aws/iam_instance_profiles.py,sha256=QUyu30xid60BFaemp-q0y9FgNsHaIQyQnQ8gHUzWC4k,2211
156
- cartography/intel/aws/identitycenter.py,sha256=Q1k1BuBmtA85s5tHGS7lvgGxQ-H-piIyiWgyevFL92U,11161
156
+ cartography/intel/aws/identitycenter.py,sha256=LqeJGTd-8btDc4pnhPwlT5y5BT-gMmdiOEuu3lrZTa8,19014
157
157
  cartography/intel/aws/inspector.py,sha256=G8a60uuFCuENvR2DNJ9VmWEJwG9UDENaC1buULvuSZc,12415
158
158
  cartography/intel/aws/kms.py,sha256=vfufz0FuSZaonWQh0llHwt1UY5nlwqtQ1kzGxBwbMdc,11184
159
- cartography/intel/aws/lambda_function.py,sha256=3hpgqI1HOeywcP3xV-OcoCOxfyyqfyMaYeb46xdf8B4,9585
160
- cartography/intel/aws/organizations.py,sha256=fwPrEWNovwLi34SxGpLHVns4jPcXtqYBWKKi0nuonsw,4600
161
- cartography/intel/aws/permission_relationships.py,sha256=TWQKkqj6GpP2Ge1hvR-pRXNFUhc9cKKmPfUrXzsGYNY,15401
159
+ cartography/intel/aws/lambda_function.py,sha256=zozi84qLGsP1McEnM-NR0ncRDxOBED6hK4mg2uChMsk,11911
160
+ cartography/intel/aws/organizations.py,sha256=zv54o-9PN-ciddThdKNvJXBy8o3jmx_cGceQK45dgIY,4680
161
+ cartography/intel/aws/permission_relationships.py,sha256=_OlIJaMP7t_zNM2S2x_yUWnBJUgTqAfU5q86HjtUgUA,15477
162
162
  cartography/intel/aws/rds.py,sha256=BfMe0Hm1PKNBf2USGWdFUr4yqWF-ULnUEdX9A0l2AP0,19534
163
- cartography/intel/aws/redshift.py,sha256=FGcCzcnm1OOrbJvLqtR1DwWVn1pt4Y6_eKkTUERT7Ws,7108
163
+ cartography/intel/aws/redshift.py,sha256=XQytnHnmKnHbJkOJ5jo06BYBIP4T9b2bObbR9yJdEp0,7263
164
164
  cartography/intel/aws/resourcegroupstaggingapi.py,sha256=TkMlUKLrRBWAyeUu-cHKce7TFkwBnWV_Im8DONgnLGU,12852
165
165
  cartography/intel/aws/resources.py,sha256=FVVmPFlnYR-y-CykhaFUzg_ZHmS_mJxS84RAMCvwBbM,4460
166
- cartography/intel/aws/route53.py,sha256=avkkV1QotLzovb867wka6bY0wsFYXABLYirl5S6LeWk,14353
166
+ cartography/intel/aws/route53.py,sha256=fqnSSW3HK6j5yCdMOSkmt41vAONWZU-E9JLfywmupQ4,16042
167
167
  cartography/intel/aws/s3.py,sha256=-j-CGYWPYhSAiNbdhrDuOyftAKGY9218bA-9u5xj0ME,37048
168
168
  cartography/intel/aws/s3accountpublicaccessblock.py,sha256=XkqHnbj9ODRcc7Rbl4swi03qvw_T-7Bnx3BHpTmlxio,4688
169
169
  cartography/intel/aws/secretsmanager.py,sha256=xM6znqD0cKNJbAhO2Zg3svyO7YUOqPFbunhODAVXMgw,7777
170
- cartography/intel/aws/securityhub.py,sha256=oR808vrEAHsHH79u8hf-hkVTBcdNd6ZObCeNGD_xnSo,2324
170
+ cartography/intel/aws/securityhub.py,sha256=BuH3jR0FCGkv85Zzh0ymhLNXATo_wAYdDX2Vir3WC7Y,2400
171
171
  cartography/intel/aws/sns.py,sha256=UlBvYzEjjXDgxN_dihqRatIcAt-NivNp_YsZPasVuT4,6377
172
172
  cartography/intel/aws/sqs.py,sha256=RUR8chO1oU5esZbHzKyhOO4L7LXmH78G6kGGtUCqB5Q,4096
173
173
  cartography/intel/aws/ssm.py,sha256=fHcx929my-Lb6fgJavyWLTBtPV6onaY7_GPnhKsv8hk,8173
@@ -196,11 +196,12 @@ cartography/intel/aws/ec2/vpc_peerings.py,sha256=bP-qWHmSEoPMiOa3cumcyAQHvVO_Ifb
196
196
  cartography/intel/aws/util/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
197
197
  cartography/intel/aws/util/arns.py,sha256=Hwg_Lnf9ZNRTI-oEXU182S9ejOTy2-ggm2RKIxV5lGc,549
198
198
  cartography/intel/aws/util/common.py,sha256=iiwqBiD65iSrS3LbnnBLBMkyV8BrXBEscI5TMxcAdXA,1817
199
- cartography/intel/azure/__init__.py,sha256=xDPworS9OtFji5vSUQ76AYoGJiRtjtrzAyHqoMcTvbw,4691
199
+ cartography/intel/azure/__init__.py,sha256=wpu17oRK2kpydLDIRhpNDWgzADc8Ni35IJ0QtNppZP4,4863
200
200
  cartography/intel/azure/app_service.py,sha256=w68zkBhpJvy21K1_trg_ouOsQpWAj8W3mtlkiPrZUEg,3262
201
201
  cartography/intel/azure/compute.py,sha256=Tg_vdK0MBpjZYaiihkpWsdUCFgdtZbhpDuV2tXAggbg,9139
202
202
  cartography/intel/azure/cosmosdb.py,sha256=HqpGJwusE_FG6X_ZgpnBpt2h0hGA-zrKZ6PLvhbALwg,43591
203
203
  cartography/intel/azure/functions.py,sha256=SVvfZTblZHGig3Kxr-jXALBuHts7Z0kfXBpjOvqvriY,3797
204
+ cartography/intel/azure/logic_apps.py,sha256=0IawsxfSbI1wNncXoODeJnLPO0G4Qunr6zGGiU8rmdA,3203
204
205
  cartography/intel/azure/sql.py,sha256=VJ7tXKn23MnXCd2P_b5Sq9xJBHfGwS6z5-xxHN_5EeU,34289
205
206
  cartography/intel/azure/storage.py,sha256=yItkgGAnWDQAmtytOeC8NxJVgwd8DT0gkFYw-rFiGi4,28639
206
207
  cartography/intel/azure/subscription.py,sha256=eEWLrre4vRc4Pkfr0sc6Uc_ZOiIgVlkTQ7OR4C-Kghc,3509
@@ -245,7 +246,7 @@ cartography/intel/entra/federation/aws_identity_center.py,sha256=U-QFv6Nb5ct3gTC
245
246
  cartography/intel/gcp/__init__.py,sha256=pCqM1aK6lq-qOnqOF7JFYKAcPW3Hl6sw9TZPROwNpM4,10159
246
247
  cartography/intel/gcp/clients.py,sha256=DV7_6b20nSTYdbzZMbw_-Ns5aD92XfaKMWRZwZSbpEQ,2268
247
248
  cartography/intel/gcp/compute.py,sha256=DEqdM3zZShq6fZFuwzMW43EiAFw228UE969ufW6RMm4,49489
248
- cartography/intel/gcp/dns.py,sha256=cZWqGN4X__8M8tsamzAjxPWOKKxaRH4IqqtUHjtneG4,6049
249
+ cartography/intel/gcp/dns.py,sha256=k2EnmRSWtnY6byhmuqxb54IdQu9LIi4lUOY2XWc1abU,6167
249
250
  cartography/intel/gcp/gke.py,sha256=gkGluV0rV9tlAaFbv91BmOy0P3CsK036nSgNS5rSFqY,6324
250
251
  cartography/intel/gcp/iam.py,sha256=rRSqDncJD6NngpVOQ_bvQfnEldQNq-UMyW8wWQpTPhQ,7682
251
252
  cartography/intel/gcp/storage.py,sha256=oVZLq-REEPqgnD7P6rd8dJ4CsycqTrSkZVh8pD-Lat8,6419
@@ -255,12 +256,12 @@ cartography/intel/gcp/crm/orgs.py,sha256=aVNMn9my-K4o1cfaruDvvIzxvJz_phVRRkaPtal
255
256
  cartography/intel/gcp/crm/projects.py,sha256=1BAlkhkn87FvkOtZn80l0OltyBbcUhIfotgZkiSAqKA,3786
256
257
  cartography/intel/github/__init__.py,sha256=SsHD_TDTQyt-mkdi3Hq6pvx3PBPWGLfDFrX3rm7y6uU,3069
257
258
  cartography/intel/github/commits.py,sha256=oH9xIPzCgGyeQ7clXwYSwRcPzCSksPr3NlXoW3x6oR8,14029
258
- cartography/intel/github/repos.py,sha256=ewX809xyGh1j8-qR3zVfyYD1uVTNGJWVTLsTMMMco54,43720
259
+ cartography/intel/github/repos.py,sha256=XNaToQ7NP0k3qO7Jxl6QIkpNFkzx8oaU5dHlzV-_JG4,43575
259
260
  cartography/intel/github/teams.py,sha256=JICUXVScYbowtbOtIe-D4bibPmSBbQnL5z8IjzqSJ3s,14657
260
261
  cartography/intel/github/users.py,sha256=meAkOpymGGdXXqZDCqv0hPIqCP4FHJvHkVug7L8jA10,9125
261
262
  cartography/intel/github/util.py,sha256=sFzr9OG3DYSXyB2uPbdbUBInT_XZNd-7MppyLxhrYGY,8571
262
263
  cartography/intel/gsuite/__init__.py,sha256=kZpOlOB4tMBdIr2-p9sP3vDOxjk8xaeihisa4fu5sYg,5877
263
- cartography/intel/gsuite/api.py,sha256=e9V_BxFYLiOoduS5WYVHqidOm-sM4vxVxpCbpai56OU,11392
264
+ cartography/intel/gsuite/api.py,sha256=V1JhVbPRiC3hua5vtvW3gcdHk27Yv9kvXoFvjHwgTCc,11593
264
265
  cartography/intel/jamf/__init__.py,sha256=fGBVfE7YoSjSCgRIbbnvezFMWtyoVHFkVrioWe6lGc0,813
265
266
  cartography/intel/jamf/computers.py,sha256=z0aw1Kb0ojE5ppnqH-Ykm5QhyiZdKwr7ELBMw1ThiNY,1804
266
267
  cartography/intel/jamf/util.py,sha256=ZBOkFZGS_xMgaEAtH1JpBoRYbjg9PpPih6W7bKN9g7k,1036
@@ -294,15 +295,15 @@ cartography/intel/oci/iam.py,sha256=CEdO_vUN6kI89HMbeXTwZKt2quh8wLtCq918Q0Ib2q8,
294
295
  cartography/intel/oci/organizations.py,sha256=PJKb7wP8GpbUKIZ264JrkIBrX_mr5GqXMbBmSl-a-tI,4160
295
296
  cartography/intel/oci/utils.py,sha256=HgQRyY8ujTrZRgC4B2nRivowOy2kB87yMcrqiUhSM_8,3297
296
297
  cartography/intel/okta/__init__.py,sha256=3qo3RbiOMoAUXU-3M9GPsCLA7x6hUsfa9h07VZ-Y--8,4246
297
- cartography/intel/okta/applications.py,sha256=A1aIak2_Xb3mmFzyZQJMXaKScvii-9Twu-eq1NMH0ec,13024
298
- cartography/intel/okta/awssaml.py,sha256=bUYOpwT85OUlzf1ZNhkWyMHt5mbXE6bXBl_RcwpmXuc,9512
299
- cartography/intel/okta/factors.py,sha256=pXUWM_prQEnjIqnew6Qk0fxwa6PPQIz0_YptfvMIEtk,5032
300
- cartography/intel/okta/groups.py,sha256=X3av5hc75XU9KFq7TyrklKuWxIBwusU4CXIido67tlw,10439
301
- cartography/intel/okta/organization.py,sha256=0K61Svsq9EfO7Ow9BOS0SHCu_PyAIEg5qgDNyEcEkmE,836
302
- cartography/intel/okta/origins.py,sha256=2kuxsyPe52tQROcs6wKXPchiV3Fm0kNO5BR9e3Sg3oQ,3746
303
- cartography/intel/okta/roles.py,sha256=309o05xNnXRFlujfo3EiLgoHhStXIXUJqNrODAxEM34,5879
298
+ cartography/intel/okta/applications.py,sha256=mElLiyQZGAaMlr03_enBVGo0FQYK4Pu0pTyVUspPQI8,13163
299
+ cartography/intel/okta/awssaml.py,sha256=5dSVbh5jijATQMl-iLfRppRG54rq772l6_G__8jNkz8,9609
300
+ cartography/intel/okta/factors.py,sha256=VsFaODFzA4GXK5kPSHMl8vNBQTg5dzrtmS-Ti_xHRak,5108
301
+ cartography/intel/okta/groups.py,sha256=zwl-2jkLVvVIFyeabxQqIvXHt-nS3uApT6HxxvDlYrI,10536
302
+ cartography/intel/okta/organization.py,sha256=mfFW9rzfcWxf4FHGTeecdHT6yTHKyo34gLYFAxrp3d4,912
303
+ cartography/intel/okta/origins.py,sha256=HNr7WRkPo4nihcxeud7cQWZ7t8tpxnY1f0Vcqs2NNAg,3822
304
+ cartography/intel/okta/roles.py,sha256=w0ouHd7-7C7VgTA-tkDb3CR4I4OMc97SSdQkKermd5M,5976
304
305
  cartography/intel/okta/sync_state.py,sha256=GYtAJlbEObiZKPihcIzVzB6APdI_TwUYzhycsDJ8cDE,702
305
- cartography/intel/okta/users.py,sha256=bZ6pDMqmAdh0p3eD0YiNHDTzOi7sWVx-ZRYMfGH4Mqs,6517
306
+ cartography/intel/okta/users.py,sha256=7Rh4pcwEPW0YvKmt6wLahctdtGHH696nKgRDeWrvVWw,6593
306
307
  cartography/intel/okta/utils.py,sha256=sALSL4hf2PJe-_Nu-RR4qremp0bneXTxJGvwQvI2Fh0,2196
307
308
  cartography/intel/openai/__init__.py,sha256=zbs9cpWVd6Gl-5P7ntwRUj2wl2rxQnhsiQqYjbH2Vxk,2494
308
309
  cartography/intel/openai/adminapikeys.py,sha256=SvKZsMsJ-B5GV7sT48mOVMmyxaRu-yogl6L2BI_7T84,2290
@@ -477,8 +478,9 @@ cartography/models/aws/iam/sts_assumerole_allow.py,sha256=oFWbp3gQJV_5QgqduT39pC
477
478
  cartography/models/aws/iam/user.py,sha256=D8KkC9tOFs6UPzDAUjlJa9xvOAxoX9MQ04OgIJHlc-M,2209
478
479
  cartography/models/aws/identitycenter/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
479
480
  cartography/models/aws/identitycenter/awsidentitycenter.py,sha256=-ybcEgdZjwF0RINR_iLpmf5EOjuXYbz_CtixP-yqV30,2038
480
- cartography/models/aws/identitycenter/awspermissionset.py,sha256=egFas3D4tkUZhaE2uQTwLihsVtJB8QBMlgBO5Px4UYs,5294
481
- cartography/models/aws/identitycenter/awsssouser.py,sha256=EWnyX5ev2aaK64YjKGuJSoknBF5b_kS5xc0kDf_0xfo,2886
481
+ cartography/models/aws/identitycenter/awspermissionset.py,sha256=c5xrTV9Bjm-Y-8ygOfagp3jRCW9mdG8uSWwh2WpV9_I,6076
482
+ cartography/models/aws/identitycenter/awssogroup.py,sha256=qiveyXv_kKpgbmDohS06-djfnKKHcSZMl_EvugCYwpg,2843
483
+ cartography/models/aws/identitycenter/awsssouser.py,sha256=uwhJfVvXH_EI_ShJF79DLrVKCN6k5okzZXqwa5ZLCJQ,4238
482
484
  cartography/models/aws/inspector/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
483
485
  cartography/models/aws/inspector/findings.py,sha256=ikm0vvjhGK_-BDt5VGyS4_0KwJsq81T6VgROq9HK2NE,8188
484
486
  cartography/models/aws/inspector/packages.py,sha256=IoJT7w6n8Vx3vGGJPWKDgJLRpioqtOS5iMYZLnX7thg,2113
@@ -489,7 +491,7 @@ cartography/models/aws/kms/keys.py,sha256=qfdc5wlN84j00Pjxq85GHQxLZ_asyNq2oD5Tj-
489
491
  cartography/models/aws/lambda_function/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
490
492
  cartography/models/aws/lambda_function/alias.py,sha256=4NSxgpxAIY1Zzx9ApH9v4Oli5czisRLDKKByaRWy2eQ,3023
491
493
  cartography/models/aws/lambda_function/event_source_mapping.py,sha256=nx4niDZ-cKwMmQrieqOgmThN-ITfF-o8AB6epKDvBfs,3997
492
- cartography/models/aws/lambda_function/lambda_function.py,sha256=YRwoVcfD8xpVPz2YJsgfA6Y0jEVF_PnJ0WFynMu6gXg,4027
494
+ cartography/models/aws/lambda_function/lambda_function.py,sha256=YRXrqxIiOt-2QpFsWofFmBCgiEjiS7i_s5hs7elb6Lc,4163
493
495
  cartography/models/aws/lambda_function/layer.py,sha256=kKMxm5XkAIx-VBZZX3teA6Md-jByBBdFnSoebjqq3ik,2868
494
496
  cartography/models/aws/rds/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
495
497
  cartography/models/aws/rds/cluster.py,sha256=chxwnOU7hGOvlnyTtaHx0ZxqyJIXQJ1qWEv68ti_nqo,4330
@@ -520,6 +522,7 @@ cartography/models/aws/ssm/parameters.py,sha256=pKwDhG7yFwshUCQC24SSQw9MjIJ2KE1V
520
522
  cartography/models/azure/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
521
523
  cartography/models/azure/app_service.py,sha256=BL9SYYxdvUcQ4l2UbB49HIKSMNMBxznrxu3AkTsORl0,2262
522
524
  cartography/models/azure/function_app.py,sha256=u3yBo1r4K3AG3XGHd6aZWTi8g0SuYsA2TtZThF0JJTc,2274
525
+ cartography/models/azure/logic_apps.py,sha256=LF8Tnk2e4d67Neax9tX0CqsuInYyT07rXrTQvHuidy8,2245
523
526
  cartography/models/azure/principal.py,sha256=OAFzIdE1daD6IbNuAvZWLqrvhZ5Eoo1N1o4kxSvj0xk,1727
524
527
  cartography/models/azure/tenant.py,sha256=d0KzBXaKuXogd-TGk3wqSyAwotG8ZcidUbgoULUjOEY,644
525
528
  cartography/models/bigfix/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -560,7 +563,7 @@ cartography/models/entra/group.py,sha256=Ora5w7t7D7m98EVjknchsAmoEhEtlMJAeziCvkb
560
563
  cartography/models/entra/ou.py,sha256=YmtW1Cp_XX29uzbunhEGl073AzV6PZsQtLs_MR-ACNU,2056
561
564
  cartography/models/entra/service_principal.py,sha256=3kljRmWrhN1hNJPhmJWGMnBB6uO3Ld_OOB_-J-YO6P8,4372
562
565
  cartography/models/entra/tenant.py,sha256=abpNTvOtXHgdrU-y7q6jt--odcq1eRsT2j5nMdVy_Gw,1793
563
- cartography/models/entra/user.py,sha256=UIZ3y4JRMfU5QgcOSGAdURH1wKvtQwicDw1q48AbhX8,3315
566
+ cartography/models/entra/user.py,sha256=OBiaE3DMXpukbh22nrqNJeT8q_CgiznZ0kQ2Zui_y7Q,3963
564
567
  cartography/models/gcp/dns.py,sha256=X8I4efhcboJXQfx6CxOTg2P-CEox1xUoe0igiSHzGyk,4446
565
568
  cartography/models/gcp/gke.py,sha256=J-PToPOkORblyfcj1vKbMjhJL-E9322rauBLfTPs6w4,3450
566
569
  cartography/models/gcp/iam.py,sha256=HvPoHFqsa7hfYsAlZJ41jKaVqs0_UTP8EjvOfpEAQdM,3285
@@ -659,9 +662,9 @@ cartography/models/trivy/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZ
659
662
  cartography/models/trivy/findings.py,sha256=SgI_h1aRyR20uAHvuXIZ1T6r4IZJt6SVhxRaF2bTsm0,3085
660
663
  cartography/models/trivy/fix.py,sha256=ho9ENVl9HSXqyggyCwR6ilkOBKDxpQ7rGibo_j21NA4,2587
661
664
  cartography/models/trivy/package.py,sha256=IwO1RZZ-MFRtNbt8Cq6YFl6fdNJMFmULnJkkK8Q4rL4,2809
662
- cartography-0.114.0.dist-info/licenses/LICENSE,sha256=kvLEBRYaQ1RvUni6y7Ti9uHeooqnjPoo6n_-0JO1ETc,11351
663
- cartography-0.114.0.dist-info/METADATA,sha256=rxtuDKGLj5CNY0-76Dm7LzUknRBp3yJoIpJSyTbLpmM,13528
664
- cartography-0.114.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
665
- cartography-0.114.0.dist-info/entry_points.txt,sha256=GVIAWD0o0_K077qMA_k1oZU4v-M0a8GLKGJR8tZ-qH8,112
666
- cartography-0.114.0.dist-info/top_level.txt,sha256=BHqsNJQiI6Q72DeypC1IINQJE59SLhU4nllbQjgJi9g,12
667
- cartography-0.114.0.dist-info/RECORD,,
665
+ cartography-0.115.0.dist-info/licenses/LICENSE,sha256=kvLEBRYaQ1RvUni6y7Ti9uHeooqnjPoo6n_-0JO1ETc,11351
666
+ cartography-0.115.0.dist-info/METADATA,sha256=IbfNc_7rPgdvjpvT2qRbOcGrLQrFGlLuWzJq34ejaag,13580
667
+ cartography-0.115.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
668
+ cartography-0.115.0.dist-info/entry_points.txt,sha256=GVIAWD0o0_K077qMA_k1oZU4v-M0a8GLKGJR8tZ-qH8,112
669
+ cartography-0.115.0.dist-info/top_level.txt,sha256=BHqsNJQiI6Q72DeypC1IINQJE59SLhU4nllbQjgJi9g,12
670
+ cartography-0.115.0.dist-info/RECORD,,