feat(rbac): complete HTTP endpoint integration + role configs
HTTP Endpoints with RBAC: - ingest_handler: project-level write access check - learn_handler: project-level write access check - projects_handler: filter returned projects by user access - query_handler: filter search results by resource access - context_handler: project-level read access check Example Role Configurations (config/roles/): - admin.yaml: full access to all resources - portfolio-agent.yaml: public visitor access - authenticated-user.yaml: logged-in user access - homelab-team.yaml: team-scoped project access All 660+ tests passing.
This commit is contained in:
@@ -2,9 +2,9 @@
|
||||
|
||||
## Summary
|
||||
|
||||
**Status**: Phases 1-7 complete with RBAC wired into HTTP + retrieval. 660+ tests passing.
|
||||
**Status**: Phases 1-7 complete with RBAC fully integrated. 660+ tests passing.
|
||||
|
||||
**Latest commit**: RBAC wired into HTTP server and retrieval pipeline
|
||||
**Latest commit**: RBAC wired into all HTTP endpoints + example role configs
|
||||
|
||||
---
|
||||
|
||||
@@ -111,8 +111,17 @@
|
||||
- ✅ **to_rbac_claims()**: Convert JwtClaims to RBAC Claims
|
||||
- ✅ **query_handler**: RBAC filtering on search results
|
||||
- ✅ **context_handler**: Project-level access check before lookup
|
||||
- ✅ **projects_handler**: Filter projects by user access
|
||||
- ✅ **ingest_handler**: Project-level write access check
|
||||
- ✅ **learn_handler**: Project-level write access check
|
||||
- ✅ **query_result_to_resource_meta()**: Convert results for RBAC filtering
|
||||
|
||||
### Example Role Configurations
|
||||
- ✅ `config/roles/admin.yaml`: Full access
|
||||
- ✅ `config/roles/portfolio-agent.yaml`: Public visitor access
|
||||
- ✅ `config/roles/authenticated-user.yaml`: Logged-in user access
|
||||
- ✅ `config/roles/homelab-team.yaml`: Team-scoped access example
|
||||
|
||||
### AuthorizedPipeline (Legacy - deprecated)
|
||||
- ✅ `AuthorizedPipeline`: wraps FullPipeline with access control
|
||||
- ✅ 13 unit tests, all passing
|
||||
|
||||
Reference in New Issue
Block a user