Skip to content

Consider redesign of how API Consumers express Trust Domain polices #90

@clundie-CL

Description

@clundie-CL

Problem description
The current model for policy expression in the alpha release candidate branch (https://github.com/camaraproject/NetworkAccessManagement/tree/85-alpha-release-candidate) is to use a fairly flat key-value as folllows:

{
 "policies": {
    "maxDevices": 10,
    "maxDomainDownstreamRate": {
      "value": 500000,
      "unit": "Kbps"
    },
    "maxDomainUpstreamRate": {
      "value": 10000,
      "unit": "Kbps"
    },
    "egressAllowedList": [
      "api.vendor.com",
      "updates.vendor.com"
    ]
  },
}

and it was suggested we consider a more hierarchical approach.

Expected behavior
An example policies structure might leverage policy categories at the top-level, and then use a hierarchy to organize related policies.

{
  "policies":  {
    "qos":  {
      "rate": {
        "downstream":  {
          "value": 10000,
          "unit": "Kbps"
        }
      }
    }
  }
}

Alternative solution
N/A

Additional context
This would allow API Consumers the ability to build policies like:

  • policies.qos.rate.downstream.max = {"value": 100000, "unit": "Kbps"}
  • policies.qos.rate.downstream.min = {"value": 10000, "unit": "Kbps"}

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions