From 071e16ebeee62597969a4e2826178bfd7e9b4f2b Mon Sep 17 00:00:00 2001 From: FabrizioMoggio <87469955+FabrizioMoggio@users.noreply.github.com> Date: Wed, 26 Jun 2024 12:00:24 +0200 Subject: [PATCH] Rel 0.9.6: sourceTrafficFilters - removed rel number in "version" field according to:https://github.com/camaraproject/EdgeCloud/issues/272 - sourceTrafficFilters added according to: https://github.com/camaraproject/EdgeCloud/discussions/230#discussioncomment-9879076 - updated link to Identity and Consent: CAMARA-Security-Interoperability: https://github.com/camaraproject/EdgeCloud/issues/277 --- code/API_definitions/Traffic_Influence.yaml | 47 +++++++-------------- 1 file changed, 15 insertions(+), 32 deletions(-) diff --git a/code/API_definitions/Traffic_Influence.yaml b/code/API_definitions/Traffic_Influence.yaml index 50ca111..ff4c538 100644 --- a/code/API_definitions/Traffic_Influence.yaml +++ b/code/API_definitions/Traffic_Influence.yaml @@ -5,7 +5,7 @@ openapi: 3.0.3 ############################################################################ info: title: Traffic Influence API - version: 0.9.5-wip + version: wip description: | ## Overview The reference scenario foresees a Service, composed by one or more Service @@ -148,12 +148,13 @@ info: traffic toward a specific Application instance.\ \ **sourceTrafficFilters:** - The traffic can be from a specific application port in the Device.\ + The traffic can be from a list of ports in the device. This ports are in + addition to the port defined in the parameter "Device"\ \ **destinationTrafficFilters:** The Application can expose different service on different interfaces, identified by port and protocol, with this parameter it is possible to - route the traffic just toward some of those services maybe for different + route the traffic toward some of those services maybe for different sets of users.\ \ **Device:** @@ -166,7 +167,10 @@ info: of each user Device. New "TrafficInfluence" resources are created (with different "trafficInfluenceID"). All the created resources are aggregated by the Application (identified by "appId"). The routing toward the selected - Application instance is only applied for provided user Devices.\ + Application instance is only applied for provided user Devices. "publicPort" + can be used to identify the device. "publicPort" can be also used to + identify the flow to be influenced. If the flow to be influenced is from a + different port, "sourceTrafficFilters" can be used.\ \ **Notification URL and token:** Developers have a chance to specify call back URL on which notifications @@ -175,9 +179,7 @@ info: ## Authentication and Authorization CAMARA guidelines defines a set of authorization flows which can grant API clients access to the API functionality, as outlined in the document - [CAMARA-API-access-and-user-consent.md](https://github.com/camaraproject\ - /IdentityAndConsentManagement/blob/main/documentation/CAMARA-API-access\ - -and-user-consent.md). + [CAMARA-Security-Interoperability.md](https://github.com/camaraproject/IdentityAndConsentManagement/blob/main/documentation/CAMARA-Security-Interoperability.md). Which specific authorization flows are to be used will be determined during onboarding process, happening between the API Client and the Telco Operator exposing the API, taking into account the declared purpose for accessing the @@ -655,15 +657,15 @@ components: - 'deletion in progress' - 'deleted' sourceTrafficFilters: - description: Ports used locally by the device for flows to which - the requested traffic influence should apply. If omitted, then the - traffic influence will apply to all flows between the device and the - specified application server address and ports. + description: Port used locally by the device for flows to which + the requested traffic influence should apply. Traffic influence will + be applied to the flow between "sourcePort" and the Application + Server address and port specified in "destinationTrafficFilters". type: object properties: sourcePort: allOf: - - $ref: "#/components/schemas/PortsSpec" + - $ref: "#/components/schemas/Port" destinationTrafficFilters: description: Identifies the destination IP packet filters. To be used when it is needed a traffic flow towards a specific EAS @@ -673,7 +675,7 @@ components: properties: destinationPort: allOf: - - $ref: "#/components/schemas/PortsSpec" + - $ref: "#/components/schemas/Port" destinationProtocol: allOf: - $ref: "#/components/schemas/Protocol" @@ -811,25 +813,6 @@ components: type: string format: ipv4 example: "84.125.93.10" - PortsSpec: - description: Specification of several TCP or UDP ports - type: object - minProperties: 1 - properties: - ranges: - description: Range of TCP or UDP ports - type: array - minItems: 1 - items: - type: object - required: - - from - - to - properties: - from: - $ref: "#/components/schemas/Port" - to: - $ref: "#/components/schemas/Port" Port: description: TCP or UDP port number type: integer