Skip to main content

Infrastructure asset graph — the Joern for cloud. Discovers, maps, and graphs CSP resources.

Project description

Bona

Infrastructure asset graph — the Joern for cloud.

Discovers, maps, and graphs CSP resources via AWS Config. Produces nodes + edges that feed into Neptune for compliance analysis, impact assessment, and risk scoring.

Quick Start

pip install bona

# Discover all resources in an account
bona discover --account 123456789012 --region us-east-1

# Enumerate AWS services (for recipe generation)
bona services

# Check compliance state
bona compliance --account 123456789012

Python API

from bona import AWSProvider, DiscoveryPipeline

provider = AWSProvider(account_id="123456789012", region="us-east-1")
result = provider.discover()

print(result.summary())
# → Discovered 142 resources, 287 relationships, 3 findings in 4521ms

for resource in result.resources:
    print(f"{resource.resource_type}: {resource.name}")

for edge in result.relationships:
    print(f"{edge.source_id} --{edge.edge_type}--> {edge.target_id}")

Architecture

AWS Config (already running) → Bona reads → normalizes → outputs graph schema
                                                              ↓
                                                    Neptune (via AI-LENS)

Bona is thin. AWS Config does the heavy lifting. Bona just transforms the output into a graph schema compatible with the GraphRAG Toolkit (lexical-graph, document-graph, codeproperty-graph).

Package Structure

bona/
  ├── providers/        AWS, Azure, GCP, Application adapters
  │   └── aws/          AWS Config + Resource Explorer + Inspector
  ├── pipeline/         discover → transform → load → enrich
  ├── schema/           AssetNode, AssetEdge, DiscoveryResult
  ├── query/            graph traversal, compliance, impact analysis
  └── cli.py            standalone CLI tool

Integration

Part of the GraphRAG Toolkit ecosystem:

  • lexical-graph — foundation (storage, vectors, retrieval)
  • document-graph — documents (Confluence, PDFs)
  • codeproperty-graph — code (Joern → vulnerabilities)
  • bona — infrastructure (AWS Config → compliance)

All produce nodes + edges for the same Neptune instance. Unified queries across all domains.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bona-0.1.0.tar.gz (8.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bona-0.1.0-py3-none-any.whl (12.8 kB view details)

Uploaded Python 3

File details

Details for the file bona-0.1.0.tar.gz.

File metadata

  • Download URL: bona-0.1.0.tar.gz
  • Upload date:
  • Size: 8.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for bona-0.1.0.tar.gz
Algorithm Hash digest
SHA256 2e329cccc5ed39a99f8e413026ef58a7ae51893ae812a57b24913a5017314fb8
MD5 cff3d5f843c2f23f1e80fe27c6fa6be5
BLAKE2b-256 5af07b49ea9d01a8cc7682cccc84c5f726925a3235f5219268695f1201d91b80

See more details on using hashes here.

File details

Details for the file bona-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: bona-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 12.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for bona-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cb67e8a82993368cffcbf0177b940d704b0918809e97b52f089de7279cad15a9
MD5 116f3ae3a425785f4e22c3119a41867a
BLAKE2b-256 d065d5433dd62ab9deeffc8c1d734b1e103e5e4b076f58078b23d2542f7ee655

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page