Project Overview
KeyNetra is a Python authorization platform that combines a deterministic policy engine with API, CLI, and embedded usage modes.
It is designed for self-hosted, headless-first deployments where policy evaluation must remain deterministic and auditable.
Repository Scope
Primary implementation lives in:
keynetra/engine: pure authorization enginekeynetra/services: orchestration layer for policy loading, cache, audit, and resiliencekeynetra/api: FastAPI transport and middlewarekeynetra/infrastructure: DB/cache repositories, logging, and metrics integrationskeynetra/domain: SQLAlchemy models and Pydantic schemaskeynetra/config: settings, security, tenancy, and config file loadingalembic/: database migrationsinfra/: Docker and Kubernetes deployment assetscontracts/openapi/keynetra-v0.1.0.yaml: OpenAPI contractexamples/: config, policy, and model examples
Core Capabilities
- RBAC: users, roles, permissions, and role-permission binding
- ACL: resource-level allow/deny entries
- ReBAC: relationship graph checks
- ABAC-style policies: compiled decision graph from policy definitions
- Authorization modeling: schema parser, validator, and permission compiler
- Policy simulation and impact analysis
- Revision and consistency controls
- Redis-backed distributed cache with in-memory fallback
- Prometheus metrics and structured logging
Usage Modes
KeyNetra supports three primary operating modes:
- HTTP API server mode
- CLI operational mode
- Embedded engine mode inside Python applications
See Runtime Modes for concrete examples.
Who This Is For
- Platform/backend engineers embedding authorization in services
- DevOps/SRE operators deploying KeyNetra in Docker or Kubernetes
- Application teams integrating with management and decision APIs