- Renamed the `PolicyEnforcer` interface and related implementations to `PolicyChecker` for clarity and consistency. - Updated configuration keys in YAML files to reflect the new `checkPolicy` terminology. - Adjusted related code, tests, and documentation to support the new naming convention and ensure compatibility. - Enhanced comments and examples for the `checkPolicy` configuration to improve usability.
257 lines
6.7 KiB
YAML
257 lines
6.7 KiB
YAML
appName: "onix"
|
|
log:
|
|
level: debug
|
|
destinations:
|
|
- type: stdout
|
|
contextKeys:
|
|
- transaction_id
|
|
- message_id
|
|
- subscriber_id
|
|
- module_id
|
|
http:
|
|
port: 8080
|
|
timeout:
|
|
read: 30
|
|
write: 30
|
|
idle: 30
|
|
pluginManager:
|
|
root: /app/plugins
|
|
remoteRoot: /mnt/gcs/plugins/plugins_bundle.zip
|
|
modules:
|
|
- name: bapTxnReciever
|
|
path: /bap/reciever/
|
|
handler:
|
|
type: std
|
|
role: bap
|
|
httpClientConfig:
|
|
maxIdleConns: 1000
|
|
maxIdleConnsPerHost: 200
|
|
idleConnTimeout: 300s
|
|
responseHeaderTimeout: 5s
|
|
plugins:
|
|
registry:
|
|
id: registry
|
|
config:
|
|
url: http://localhost:8080/reg
|
|
retry_max: 3
|
|
retry_wait_min: 100ms
|
|
retry_wait_max: 500ms
|
|
keyManager:
|
|
id: secretskeymanager
|
|
config:
|
|
projectID: ${projectID}
|
|
cache:
|
|
id: redis
|
|
config:
|
|
addr: 10.81.192.4:6379
|
|
schemaValidator:
|
|
id: schemavalidator
|
|
config:
|
|
schemaDir: /mnt/gcs/configs/schemas
|
|
checkPolicy:
|
|
id: opapolicychecker
|
|
config:
|
|
# Policy source configuration.
|
|
# type: url | file | dir | bundle
|
|
# location: path or URL to policy source
|
|
# query: OPA query path to evaluate (required)
|
|
type: file
|
|
location: ./pkg/plugin/implementation/opapolicychecker/testdata/example.rego
|
|
query: "data.policy.result"
|
|
refreshIntervalSeconds: "300"
|
|
signValidator:
|
|
id: signvalidator
|
|
publisher:
|
|
id: publisher
|
|
config:
|
|
project: ${projectID}
|
|
topic: bapNetworkReciever
|
|
router:
|
|
id: router
|
|
config:
|
|
routingConfigPath: /mnt/gcs/configs/bapTxnReciever-routing.yaml
|
|
middleware:
|
|
- id: reqpreprocessor
|
|
config:
|
|
contextKeys: transaction_id,message_id
|
|
role: bap
|
|
steps:
|
|
- validateSign
|
|
- checkPolicy
|
|
- addRoute
|
|
- validateSchema
|
|
- name: bapTxnCaller
|
|
path: /bap/caller/
|
|
handler:
|
|
type: std
|
|
role: bap
|
|
httpClientConfig:
|
|
maxIdleConns: 1000
|
|
maxIdleConnsPerHost: 200
|
|
idleConnTimeout: 300s
|
|
responseHeaderTimeout: 5s
|
|
plugins:
|
|
registry:
|
|
id: registry
|
|
config:
|
|
url: http://localhost:8080/reg
|
|
retry_max: 3
|
|
retry_wait_min: 100ms
|
|
retry_wait_max: 500ms
|
|
keyManager:
|
|
id: secretskeymanager
|
|
config:
|
|
projectID: ${projectID}
|
|
cache:
|
|
id: redis
|
|
config:
|
|
addr: 192.168.1.1:6379
|
|
schemaValidator:
|
|
id: schemavalidator
|
|
config:
|
|
schemaDir: /mnt/gcs/configs/schemas
|
|
checkPolicy:
|
|
id: opapolicychecker
|
|
config:
|
|
type: file
|
|
location: ./pkg/plugin/implementation/opapolicychecker/testdata/example.rego
|
|
query: "data.policy.result"
|
|
refreshIntervalSeconds: "300"
|
|
signer:
|
|
id: signer
|
|
publisher:
|
|
id: publisher
|
|
config:
|
|
project: ${projectID}
|
|
topic: bapNetworkReciever
|
|
router:
|
|
id: router
|
|
config:
|
|
routingConfigPath: /mnt/gcs/configs/bapTxnCaller-routing.yaml
|
|
middleware:
|
|
- id: reqpreprocessor
|
|
config:
|
|
contextKeys: transaction_id,message_id
|
|
role: bap
|
|
steps:
|
|
- validateSchema
|
|
- checkPolicy
|
|
- addRoute
|
|
- sign
|
|
- name: bppTxnReciever
|
|
path: /bpp/reciever/
|
|
handler:
|
|
type: std
|
|
role: bpp
|
|
subscriberId: bpp1
|
|
httpClientConfig:
|
|
maxIdleConns: 1000
|
|
maxIdleConnsPerHost: 200
|
|
idleConnTimeout: 300s
|
|
responseHeaderTimeout: 5s
|
|
plugins:
|
|
registry:
|
|
id: registry
|
|
config:
|
|
url: http://localhost:8080/reg
|
|
retry_max: 3
|
|
retry_wait_min: 100ms
|
|
retry_wait_max: 500ms
|
|
keyManager:
|
|
id: secretskeymanager
|
|
config:
|
|
projectID: ${projectID}
|
|
cache:
|
|
id: redis
|
|
config:
|
|
addr: 192.168.1.1:6379
|
|
schemaValidator:
|
|
id: schemavalidator
|
|
config:
|
|
schemaDir: /mnt/gcs/configs/schemas
|
|
checkPolicy:
|
|
id: opapolicychecker
|
|
config:
|
|
type: file
|
|
location: ./pkg/plugin/implementation/opapolicychecker/testdata/example.rego
|
|
query: "data.policy.result"
|
|
refreshIntervalSeconds: "300"
|
|
signValidator:
|
|
id: signvalidator
|
|
publisher:
|
|
id: publisher
|
|
config:
|
|
project: ${projectID}
|
|
topic: bapNetworkReciever
|
|
router:
|
|
id: router
|
|
config:
|
|
routingConfigPath: /mnt/gcs/configs/bppTxnReciever-routing.yaml
|
|
middleware:
|
|
- id: reqpreprocessor
|
|
config:
|
|
contextKeys: transaction_id,message_id
|
|
role: bpp
|
|
steps:
|
|
- validateSign
|
|
- checkPolicy
|
|
- addRoute
|
|
- validateSchema
|
|
- name: bppTxnCaller
|
|
path: /bpp/caller/
|
|
handler:
|
|
type: std
|
|
role: bpp
|
|
httpClientConfig:
|
|
maxIdleConns: 1000
|
|
maxIdleConnsPerHost: 200
|
|
idleConnTimeout: 300s
|
|
responseHeaderTimeout: 5s
|
|
plugins:
|
|
registry:
|
|
id: registry
|
|
config:
|
|
url: http://localhost:8080/reg
|
|
retry_max: 3
|
|
retry_wait_min: 100ms
|
|
retry_wait_max: 500ms
|
|
keyManager:
|
|
id: secretskeymanager
|
|
config:
|
|
projectID: ${projectID}
|
|
cache:
|
|
id: redis
|
|
config:
|
|
addr: 192.168.1.1:6379
|
|
schemaValidator:
|
|
id: schemavalidator
|
|
config:
|
|
schemaDir: /mnt/gcs/configs/schemas
|
|
checkPolicy:
|
|
id: opapolicychecker
|
|
config:
|
|
type: file
|
|
location: ./pkg/plugin/implementation/opapolicychecker/testdata/example.rego
|
|
query: "data.policy.result"
|
|
refreshIntervalSeconds: "300"
|
|
signer:
|
|
id: signer
|
|
publisher:
|
|
id: publisher
|
|
config:
|
|
project: ${projectID}
|
|
topic: bapNetworkReciever
|
|
router:
|
|
id: router
|
|
config:
|
|
routingConfigPath: /mnt/gcs/configs/bppTxnCaller-routing.yaml
|
|
middleware:
|
|
- id: reqpreprocessor
|
|
config:
|
|
contextKeys: transaction_id,message_id
|
|
role: bpp
|
|
steps:
|
|
- validateSchema
|
|
- checkPolicy
|
|
- addRoute
|
|
- sign |