api-evangelist/cartography

GitHub: api-evangelist/cartography

Cartography 是一个开源 Python 安全图工具,通过将多云和身份等基础设施资产及其关系摄入 Neo4j 图数据库,帮助团队可视化并查询复杂的安全与运维问题。

Stars: 0 | Forks: 0

# Cartography (地图绘制) Cartography 是一个开源的 Python 安全图工具,最初在 Lyft 构建,用于将基础设施资产及其相互关系整合到一个直观的 Neo4j 图形中。它从 30 多家云服务、身份、DevOps 和安全提供商(AWS、GCP、Azure、OCI、Okta、Entra ID、GitHub、Kubernetes、CrowdStrike 等)摄入数据,让安全团队能够回答跨云服务提供商的问题,例如“哪些身份可以访问哪些数据存储”、“哪些计算实例暴露在互联网上”以及“泄露的凭证的影响范围有多大”。 **URL:** [访问 APIs.json URL](https://raw.githubusercontent.com/api-evangelist/cartography/refs/heads/main/apis.yml) ## 范围 - **类型:** 标准 - **定位:** 消费者 - **访问:** 开放 ## 标签 - 安全,云安全,图,CSPM,Neo4j,开源,Lyft,资产清单,身份 ## 时间戳 - **创建于:** 2025-01-01 - **修改于:** 2026-04-23 ## API ### 制图学 一个 Python 工具,将来自 30 多家提供商的基础设施数据摄入到 Neo4j 图中,用于跨云服务提供商的安全分析。 **用户访问 URL:** [https://lyft.github.io/cartography/](https://lyft.github.io/cartography/) #### 标签 - 安全,云安全,图,Neo4j #### 属性 - [文档](https://lyft.github.io/cartography/) - [代码仓库](https://github.com/lyft/cartography) - [Cypher 查询语言](https://neo4j.com/docs/cypher-manual/current/) ### Cartography AWS Intel 模块 Cartography 的情报模块,调用 AWS API(EC2、IAM、S3、RDS、EKS、Lambda、ECS、DynamoDB、CloudWatch、ACM、KMS、CodeBuild、API Gateway、Bedrock 等)以填充图中的 AWS 节点和关系。 **用户访问 URL:** [AWS 模块](https://lyft.github.io/cartography/modules/aws/index.html) #### 标签 - AWS,云,摄入 ### Cartography Google Cloud Intel 模块 Cartography 的情报模块,调用 Google Cloud API(Compute、IAM、Cloud SQL、GKE、Cloud Functions、Artifact Registry、Vertex AI)以填充 GCP 节点和关系。 **用户访问 URL:** [GCP 模块](https://lyft.github.io/cartography/modules/gcp/index.html) #### 标签 - GCP,云,摄入 ### Cartography Azure Intel 模块 Cartography 的情报模块,调用 Azure API(App Service、AKS、CosmosDB、Container Instance、Key Vault、Storage、Virtual Machines)以填充 Azure 节点和关系。 **用户访问 URL:** [Azure 模块](https://lyft.github.io/cartography/modules/azure/index.html) #### 标签 - Azure,云,摄入 ### Cartography Oracle Cloud Intel 模块 Cartography 的情报模块,调用 Oracle Cloud Infrastructure API(从 IAM 开始)以填充 OCI 节点和关系。 #### 标签 - OCI,云,摄入 ### Cartography Okta Intel 模块 将 Okta 用户、组、应用程序和安全因子摄入到图中,用于以身份为中心的安全分析。 #### 标签 - 身份,Okta,摄入 ### Cartography Entra ID Intel 模块 将 Microsoft Entra ID 用户、组、应用程序和角色分配摄入到图中。 #### 标签 - 身份,Entra ID,摄入 ### Cartography GitHub Intel 模块 摄入 GitHub 组织、仓库、用户和访问关系,支持基于代码所有权和秘密暴露的图查询。 #### 标签 - GitHub,SCM,摄入 ### Cartography Kubernetes Intel 模块 摄入 Kubernetes 集群对象(节点、Pod、服务、服务账户),用于基于图的集群安全分析。 #### 标签 - Kubernetes,容器,摄入 ### Cartography CrowdStrike Intel 模块 摄入 CrowdStrike Falcon 主机和检测结果,将端点遥测数据连接到基础设施图。 #### 标签 - EDR,CrowdStrike,摄入 ### Cartography Cloudflare Intel 模块 将 Cloudflare 区域、DNS 和安全配置摄入到图中,用于边缘暴露分析。 #### 标签 - DNS,边缘,摄入 ## 使用案例 - 跨云服务提供商访问审查 — 使用 Okta 到 AWS 的身份联盟关系,“哪些 Okta 用户最终拥有任何 AWS 账户的管理员权限?” - 暴露分析 — 枚举所有拥有公网 IP 且安全组规则过于宽松且无修补遥测数据的 EC2 实例、GCP 虚拟机或 Azure 虚拟机。 - 数据存储爆炸半径 — 追踪所有能读取特定 S3 存储桶、RDS 实例或 CosmosDB 的 IAM 主体和假设角色路径。 - 代码到云的所有权 — 将 GitHub 仓库所有权与其部署的云资源关联,将安全发现路由给负责的团队。 - EDR 关联 — 通过单个 Cypher 查询将 CrowdStrike 检测结果连接到底层云计算实例、所属服务和负责的身份。 - 持续资产清单 — 定期运行 Cartography,基于漂移、新暴露或新主体来馈送仪表板和工单系统。 - 合规图查询 — 用单个 Cypher 查询回答审计员的问题,如“哪些生产数据库未加密或可公开访问”。 ## 通用属性 - [网站](https://lyft.github.io/cartography/) - [文档](https://lyft.github.io/cartography/) - [Lyft GitHub 组织](https://github.com/lyft) - [代码仓库](https://github.com/lyft/cartography) - [问题](https://github.com/lyft/cartography/issues) - [入门指南](https://lyft.github.io/cartography/install.html) - [教程](https://lyft.github.io/cartography/usage/tutorial.html) - [许可证 (Apache 2.0)](https://github.com/lyft/cartography/blob/master/LICENSE) - [版本发布](https://github.com/lyft/cartography/releases) - [Lyft 工程博客](https://eng.lyft.com/open-sourcing-cartography-4611ba31a72) - [JSON-LD 上下文](json-ld/cartography-context.jsonld) - [词汇表定义](vocabulary.yml) - [Spectral 规则](spectral/cartography.spectral.yml) ## 维护者 **FN:** Kin Lane **Email:** info@apievangelist.com
标签:AWS, Azure, CrowdStrike, CSPM, DevOps安全, DPI, Entra ID, GCP, Neo4j, Okta, Python, TinkerPop, 云安全态势管理, 云安全解决方案, 前端应用, 安全, 安全关系图, 安全分析工具, 安全可视化, 开源, 数据摄入, 无后门, 资产盘点, 超时处理, 跨提供者分析, 身份管理, 逆向工具, 零信任架构