3ee1e426a8
Public home is now git.villains.fr/crudy/pgmorbac with docs at pgmorbac.villains.fr. Point META.json, README and CHANGELOG links there, drop the tracked .DS_Store, and renumber the first public release to 0.1.0 to match the published @crudy/pgmorbac package, the embedded framework SQL and the download page. License stays MIT.
45 lines
1.9 KiB
Markdown
45 lines
1.9 KiB
Markdown
# Changelog
|
|
|
|
All notable changes to this project will be documented in this file.
|
|
|
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
|
|
## [0.1.0] - 2026-02-19
|
|
|
|
### Added
|
|
- Initial release of Multi-OrBAC PostgreSQL extension
|
|
- Complete Multi-OrBAC implementation based on CNRS research paper
|
|
- Core features:
|
|
- Organization-centric access control
|
|
- Role-based abstraction with organizational scope
|
|
- Activity and view abstractions
|
|
- Context-based rule evaluation
|
|
- Four deontic modalities (permission, prohibition, obligation, recommendation)
|
|
- Prohibition precedence over permissions
|
|
- Multi-organization support
|
|
- Advanced features:
|
|
- Organization, role, activity, and view hierarchies with transitive closure
|
|
- Temporal delegation with time bounds
|
|
- Temporal constraints on rules with validity periods (valid_from, valid_until)
|
|
- Negative role assignments
|
|
- Separation of Duty (SoD) constraints
|
|
- Role cardinality constraints (min/max users)
|
|
- Derived roles (computed via functions)
|
|
- Cross-organizational rules with temporal support
|
|
- Administration rules (meta-policies)
|
|
- Audit logging for security-critical operations
|
|
- Audit logging system:
|
|
- Generic audit trigger for tracking INSERT/UPDATE/DELETE operations
|
|
- Comprehensive audit log with JSONB support for before/after states
|
|
- Helper functions: `enable_audit()`, `disable_audit()`
|
|
- Field-level change tracking
|
|
- Client connection metadata capture (IP, application name, session user)
|
|
- Policy DSL with idempotent compiler
|
|
- RLS helper functions for PostgREST integration
|
|
- Comprehensive test suite with 20 test scenarios
|
|
- Complete documentation
|
|
- Build and installation automation (Makefile, install.sh)
|
|
|
|
[0.1.0]: https://git.villains.fr/crudy/pgmorbac/releases/tag/v0.1.0
|