View Architecture Diagram Agent details
Core Technology
Backend: Neo4j graph database populated by DuploCloud Cartography
Real-time Updates: Continuously synchronized with your cloud environment
Multi-layer Mapping: Covers AWS resources, Kubernetes objects, and application dependencies
Visualization: Mermaid.js diagram generation
Key Features
Developer-Centric Views: Generate diagrams focused on specific microservices or applications
Multi-Level Detail: From high-level architecture overviews to detailed resource dependencies
Interactive Exploration: Ask questions like "show me everything connected to the payment service"
Real-time Accuracy: Diagrams reflect current state of your infrastructure
Contextual Filtering: Scope diagrams to specific tenants, namespaces, or applications
Use Cases
New Developer Onboarding: Help developers understand system architecture for unfamiliar services
Impact Analysis: Visualize dependencies before making changes
Troubleshooting: Understand data flow and potential failure points
Documentation: Generate up-to-date architecture documentation
Compliance Auditing: Visualize data flows for security and compliance reviews
Custom Dependency Definition
Organizations can optionally define custom application dependencies:
Granular Control: Define dependencies per microservice
Multi-type Support: AWS resources, Kubernetes services, and external APIs
Architecture Diagram Agent — Role Boundaries and Scope
Tenancy boundary:
Every resource, relationship, metric, and event is namespaced by
tenantId
.All reads/writes require a
tenantId
; data from other tenants is never returned or mutated.Cross-tenant access is denied; background jobs and graph updates run within the same
tenantId
scope.
User role (least privilege):
Visibility: Only resources and relationships within their own
tenantId
.Actions: Read and interact within tenant scope; cannot access or reference other tenants.
UI: Graph, search, filters, impact/stats panels, and websockets show only tenant-scoped data.
Admin role (most privilege):
Visibility: Intended for administration across tenants.
Actions: Manage resources, relationships, and system-wide operations.
UI: Can view and operate beyond a single tenant unless least-privilege applies (see below).
Least-privilege override (effective role):
When a principal has multiple roles, the least-privileged role determines access.
Example: If a principal has both admin and user roles, the effective scope is the user role:
Visibility and actions are restricted to the principal’s
tenantId
.Cross-tenant views and operations are not permitted.
What each role sees:
User: Only their tenant’s nodes, edges, metrics, and events; tenant-filtered diagrams and panels.
Admin: System-wide view and management; however, if also assigned the user role, the session is constrained to the user’s single-tenant scope.
Enforcement points (high level):
API routes validate and require
tenantId
.Graph/database queries filter by
tenantId
.Websocket channels are namespaced by
tenantId
.Diagram generation and analysis features apply
tenantId
filtering end-to-end.
In short: data is strictly segmented by tenantId
; users operate only within their tenant; admins can operate broadly, but any concurrent user assignment forces least-privilege behavior, restricting access to the user’s tenant.
Last updated
Was this helpful?