Implement Policy Enforcer Plugin

- Added a new Policy Enforcer plugin to evaluate incoming messages against OPA policies.
- Configurable via YAML with options for policy sources, actions, and query.
- Integrated into existing configuration files for BAP and BPP.
- Updated related tests and documentation for the new functionality.
- Enhanced plugin manager to support Policy Enforcer instantiation.
This commit is contained in:
Ayush Rawat
2026-02-26 17:46:52 +05:30
parent fe541227b9
commit 3617c9b4a6
22 changed files with 1341 additions and 39 deletions

View File

@@ -0,0 +1,17 @@
package definition
import (
"context"
"github.com/beckn-one/beckn-onix/pkg/model"
)
// PolicyEnforcer interface for policy enforcement on incoming messages.
type PolicyEnforcer interface {
Run(ctx *model.StepContext) error
}
// PolicyEnforcerProvider interface for creating policy enforcers.
type PolicyEnforcerProvider interface {
New(ctx context.Context, config map[string]string) (PolicyEnforcer, func(), error)
}