"description":"Requested permissions regarding the access of the application to the service. See clause 8.2 of ETSI GS MEC 009. The format of this attribute is left for the data model design stage."
},
"serCategory":{
"type":"object",
"description":"See MEC011"
"$ref":"#/definitions/CategoryRef"
},
"serName":{
"type":"string",
@@ -98,13 +94,33 @@
}
}
},
"CategoryRef":{
"title":"CategoryRef",
"required":["href","id","name","version"],
"type":"object",
"properties":{
"href":{
"type":"string",
"description":"Reference of the catalogue."
},
"id":{
"type":"string",
"description":"Unique identifier of the category."
},
"name":{
"type":"string",
"description":"Name of the category."
},
"version":{
"type":"string",
"description":"Category version."
}
},
"description":"This type represents the category reference."
"description":"The name of the protocol used. Shall be set to HTTP for a REST API."
},
"security":{
"type":"object",
"description":"See MEC011"
"$ref":"#/definitions/SecurityInfo"
},
"type":{
"type":"string"
@@ -166,14 +175,47 @@
}
}
},
"SecurityInfo":{
"type":"object",
"properties":{
"oAuth2Info":{
"$ref":"#/definitions/OAuth2Info"
},
"(extensions)":{
"description":"'Extensions for alternative transport mechanisms. These extensions depend on the actual transport, and are out of scope of the present document. For instance, such extensions may be used to signal the necessary parameters for the client to use TLSbased authorization defined for alternative transports (see ETSI GS MEC 009 [5] for more information).'\n",
"type":"array",
"minItems":0,
"items":{
"type":null
}
}
}
},
"OAuth2Info":{
"description":"Parameters related to use of OAuth 2.0. Shall be present in case OAuth 2.0 (see IETF RFC 6749 [13]) is supported to secure the provision of the service over the transport.\n",
"type":"object",
"properties":{
"grantTypes":{
"type":"array",
"minItems":1,
"items":{
"type":"string"
},
"description":"\"List of supported OAuth 2.0 grant types.\\nEach entry shall be one of the following permitted values:\\nOAUTH2_AUTHORIZATION_CODE (Authorization code grant type)\\nOAUTH2_IMPLICIT_GRANT\\n \\t(Implicit grant type)\\nOAUTH2_RESOURCE_OWNER\\n\\t(Resource owner password credentials grant type) \\nOAUTH2_CLIENT_CREDENTIALS\\n\\t(Client credentials grant type)\\nOnly the value \\\"OAUTH2_CLIENT_CREDENTIALS\\\" is supported in the present document. \"\n",
"enum":["SEE_DESCRIPTION"]
},
"tokenEndpoint":{
"description":"The token endpoint. Shall be present unless the grant type is OAUTH2_IMPLICIT_GRANT.",
"type":"string",
"format":"uri"
}
},
"required":["grantTypes"]
},
"ServiceDescriptor":{
"title":"ServiceDescriptor",
"description":"'The ServiceDescriptor data type describes a MEC service produced by a service-providing MEC application.'",
"required":[
"serName",
"version",
"transport"
],
"required":["serName","version","transport"],
"type":"object",
"properties":{
"serName":{
@@ -182,7 +224,7 @@
},
"serCategory":{
"type":"object",
"description":"See MEC011"
"$ref":"#/definitions/CategoryRef"
},
"version":{
"type":"string",
@@ -199,9 +241,7 @@
"TransportsSupported":{
"title":"TransportsSupported",
"type":"object",
"required":[
"serializers"
],
"required":["serializers"],
"properties":{
"transport":{
"$ref":"#/definitions/TransportDescriptor"
@@ -218,10 +258,7 @@
},
"FeatureDependency":{
"title":"FeatureDependency",
"required":[
"featureName",
"version"
],
"required":["featureName","version"],
"type":"object",
"properties":{
"featureName":{
@@ -254,14 +291,14 @@
"items":{
"$ref":"#/definitions/InterfaceDescriptor"
},
"description":""
"description":"Describes the destination interface information, . Some applications (e.g. inline/tap) _DECAPSULATED, FORWARD_ENCAPSULATED or PASSTHROUGH, one value shall be provided. If the action is onDUPLICATE_DECAPSULATED or DUPLICATE_ENCAPSULATED, two values shall be provided. See note 2."
},
"filterType":{
"$ref":"#/definitions/FilterType"
},
"priority":{
"type":"integer",
"description":"Priority of this traffic rule within the range 0 to 255. If traffic rule conflicts, the one with higher priority take precedence. Value indicates the priority in descending order, i.e. with 0 as the highest priority and 255 as the lowest priority.",
"description":"Priority of this traffic rule within the range 0 to 255. If traffic rule conflicts, the one with higher priority take precedence. See note 1.",
"contentEncoding":"int32"
},
"trafficFilter":{
@@ -276,23 +313,22 @@
"type":"string",
"description":"Identifies the traffic rule."
}
}
},
"description":"NOTE 1: Value indicates the priority in descending order, i.e. with 0 as the highest priority and 255 as the lowest priority.\nNOTE 2: Some applications (like inline/tap) require two interfaces. The first interface in the case of inline/tap is on the \n client (e.g. UE) side and the second on the core network (e.g. EPC) side\n"
},
"Action":{
"title":"Action",
"enum":[
"DROP",
"FORWARD_DECAPSULATED",
"FORWARD_AS_IS",
"FORWARD, ENCAPSULATED",
"PASSTHROUGH",
"DUPLICATED_DECAPSULATED",
"DUPLICATE_AS_IS"
"DUPLICATE_DECAPSULATED",
"DUPLICATE, .ENCAPSULATED"
],
"type":"string",
"description":"'Identifies the action of the MEC host data plane, when a packet matches the trafficFilter.'",
"description":"Definition of filter type: per FLOW or PACKET",
"examples":[
"FLOW"
]
"description":"If it is per FLOW, the filter matches upstream (e.g. UE->EPC) packets and the downstream (e.g. EPC->UE) packets are handled by the same context.",