Multi-Package ACL Configuration

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 } } } ] } }