Multi-Package ACL Configuration
Introduction
This section will explain how to use Multi-Package Configuration inside the group
Usage
One Package: One package is only selected for a product
Multiple Packages: Multiple packages selected for a product
One Package
The ACL of this package will be used for this product.
Multi-Package
The ACL of this package will be merged for this product.
Case 1: If a route there was a conflict in access right (Public/Private) → Private will be set
Case 2: If a route has API Permission is set as restricted
- Only routes who have have API Permission set as restricted will be merged.
- Other Routes will be neglected
Examples Case 1
Route 1:
{ "1": { access: true, post: [ { group: "Continuous Delivery Deployment", apis: { "/cd/deploy": { access: false } } } ] } }
Route 2:
{ "1": { access: true, post: [ { group: "Continuous Delivery Deployment", apis: { "/cd/deploy": { access: true } } } ] } }
Merge Result
{ "1": { access: true, post: [ { group: "Continuous Delivery Deployment", apis: { "/cd/deploy": { access: true } } } ] } }
Examples: Case 2
Examples : 1
Route 1:
{ "1": { access: true, post: [ { group: "Continuous Delivery Deployment", apis: { "/list": { access: false } } } ] } }
Route 2:
{ "1": { access: true, apisPermission: "restricted", post: [ { group: "Continuous Delivery Deployment", apis: { "/addUser": { access: true } } } ] } }
Merge Result:
{ "1": { access: true, apisPermission: "restricted", post: [ { group: "Continuous Delivery Deployment", apis: { "/addUser": { access: true } } } ] } }
Example 2
Route 1:
{ "1": { access: true, apisPermission: "restricted", post: [ { group: "Continuous Delivery Deployment", apis: { "/list": { access: false } } } ] } }
Route 2:
{ "1": { access: true, apisPermission: "restricted", post: [ { group: "Continuous Delivery Deployment", apis: { "/addUser": { access: true } } } ] } }
Merge Result:
{ "1": { access: true, apisPermission: "restricted", post: [ { group: "Continuous Delivery Deployment", apis: { "/addUser": { access: true }, "/list": { access: false } } } ] } }