Skip to content

5.2 MEF Interface

5.2.1 Introduction

The M2M Enrolment Function (MEF) is an essential part of the oneM2M Remote Security Provisioning architecture.

Clause 6.1.2.1 of oneM2M TS-0003 [2] defines the following three variants of Remote Security Provisioning Framework (RSPF):

  • Pre-Provisioned Symmetric Key RSPF,
  • Certificate-Based RSPF,
  • GBA-based RSPF.

The MEF interface defined in the present specification applies to Pre-Provisioned Symmetric Key RSPF and Certificate-Based RSPF only. For interfaces and procedures applicable to GBA-based RSPF, see clause 8.3.2.3 of oneM2M TS-0003 [2].

When using Pre-Provisioned Symmetric Enrolee Key RSPF or Certificate-Based RSPF, the MEF serves a number of different use cases which are summarized as follows:

  1. The MEF provisions an Enrolee to perform MAF Security Framework procedures with a MAF as defined in clause 8.8.2 of oneM2M TS-0003 [2].
  2. The MEF provisions an Entity A and an Entity B to perform Security Association Establishment as defined in clauses 8.2.2.1 and 8.2.2.2 of oneM2M TS-0003 [2].
  3. The MEF provisions an originator and a receiver of a primitive with credentials to enable End-to-End Security of Primitives (ESPRIM) with security credentials as specified in clause 8.4 of oneM2M TS-0003 [2].
  4. The MEF provisions the source and target endpoints of End-to-End Security of Data (ESDATA) as specified in clause 8.5 of oneM2M TS-0003 [2].

The present document defines messages and procedures for the above listed MEF use cases.

Note

1: A MEF may also be implemented as a Device Management server using device management protocols such as OMA DM, OMA LwM2M and BBF TR-069. Such procedures are defined in oneM2M TS0003 [2] and oneM2M TS-0022 [9].

Like the Mmaf Interface, the Mmef Interface is a simple variant of the Mcc/Mca reference points specifying the interaction of MEF Clients with an M2M Enrolment Function (MEF), managing symmetric keys on behalf of an administrating stakeholder such as an M2M SP or third party M2M Trust Enabler (MTE). The present document does not specify the operation and management of the MEF required to support these procedures.

A MEF Client interacts with the MEF on behalf of a Node (ADN, ASN, IN or MN), or a CSE or an AE for use case 1 and 2 in the above list. Figure 5.2.1-1 defines the reference point Mmef between MEF clients and a MEF, and between MEF and MAF.

Figure 5.2.1-1: Reference Architecture for MEF

Figure 5.2.1-1: Reference Architecture for MEF

The administrating stakeholder authorizes the MEF's services to MEF clients. A MEF may provide its services on behalf of multiple administrating stakeholders. A MEF Client may be associated with multiple administrating stakeholders, each administrating the use of the MEF within a different scope.

Note

2: The administrating stakeholder could be an M2M SP administrating the registration and distribution of credentials used for SAEFs and ESPrim within the M2M SP's Domain.

Note

3: The administrating stakeholder could be an MTE administrating the registration and distribution of credentials for ESPrim and ESData to MEF Clients belonging to a particular Application Service Provider, where the MEF Clients could be distributed over multiple M2M SP domains.

The present document has no impact on the specifications in oneM2M TS-0001 [1] and oneM2M TS-0004 [3]. However, the MEF Interface uses much of the specification in oneM2M TS-0004 [3] and in particular allows use of the HTTP binding in oneM2M TS-0008 [4], the CoAP binding in oneM2M TS-0009 [5] and the WebSocket binding in oneM2M TS-0020 [8].

Note

4: The MQTT binding in oneM2M TS-0010 [6] is not suitable for the MEF Interface, because the MEF Interface assumes a TLS or DTLS connection from the MEF Client to the MEF - which is not possible using the MQTT binding

The MEF Interface incorporates the following concepts from the Mcc/Mca reference points:

  1. The concept of operations acting on resources.
  2. The resource addressing from Mcc/Mca is used.
  3. The universal attributes and some common attributes of resources.

The MEF Interface differs from Mcc/Mca in the following ways:

  1. The MEF Client can only communicate directly with the MEF - there are no transited CSEs. Only Blocking Mode communication method is supported.
  2. None of the resource types applicable on Mcc/Mca are used:
    • Access control decisions use simple access control list for Retrieve access, and <accessControlPolicy> resources are not used for resources hosted by the MEF. A consequence of this is that the accessControlPolicyIDs attributes are not needed in the resources hosted by the MEF.
    • The <subscription> resource and NOTIFY operations are not supported.
    • There is no AE registration or CSE registration, but a similar process where a MEF Client creates a <mefClientReg> (MEF Client registration record) resource on the MEF.
    • There are no announced resources.

The hierarchy of resources hosted by a MEF shall be as follows:

  1. <MEFBase> resource type is the structural root for all the resources that are residing on a MEF. This resource is implicitly created by the MEF and uses the fixed resource name "mef" and contains following child resources:
    • <mefClientReg> resource. It confirms the MEF Client's registration to an administrating stakeholder, and can contain configuration information to be returned to the MEF Client.
    • <symmKeyReg> resources. It is created by the MEF Client, and contains symmetric keys for retrieval by another MEF Client.

5.2.2 MEF Interface Overview

This MEF Interface overview is based on the specification in clause 6 of oneM2M TS-0004 [3].

Identifiers such as M2M-SP-ID, AE-ID and CSE-ID as defined in 6.2.3 of [3] also apply to the MEF Interface. M2M Trust Enablers (MTEs) are identified using an M2M-SP-ID.

Resources are addressed as specified in clause 6.2.4 in [3].

Common data types applicable to the MEF Interface are inherited from clause 6.3 of [3]. However, for any parameters or elements which have assigned the enumerated data type m2m:resourceType, the applicable enumeration values are interpreted as specified in Table 5.1.2-4. This applies to the Resource Type primitive parameter, the common resourceType attribute, and the @type attribute of m2m:childResourceRef.

Tables 5.2.2-1 and 5.2.2-2 list the request and response primitive parameters inherited from clauses 6.4.1 and 6.4.2 in [3], respectively; the data types of these parameters are unchanged. The From parameter shall include the MEF client ID which can be a Node-ID, AE-ID or CSE-ID, depending on whether the client acts on behalf of a node, AE or CSE. Note that this is in contrast to primitives on the Mca and Mcc interface, where the From primitive parameter cannot include a Node-ID.

Note

All other optional request and response primitive parameters defined in clause 6.4.1 of [3] are not used on the MEF Interface.

Table 5.2.2-1: MEF Interface request primitive parameters

Parameter Multiplicity Notes
Operation 1
To 1
From 0..1 If not present, the MEF internally assigns From to be the identity of the Node, CSE or AE associated with the credential used for the MEF Handshake procedure.
Request Identifier 1
Resource Type 0..1 values of m2m:resourceType interpreted as in Table 5.1.2-4
Content 0..1
Result Content 0..1

Table 5.2.2-2: MEF Interface response primitive parameters

Parameter Multiplicity Notes
Response Status Code 1
Request Identifier 1
Content 0..1

Data types associated with resources applicable to the MEF Interface are defined in clause 7.

The response status codes listed in table 5.1.2-3 also apply to the MEF Interface.

The MIME media types defined on clause 6.7 of [3] shall be supported on the MEF interface. The notification related Media types vnd.onem2m-ntfy+json, vnd.onem2m-ntfy+cbor, vnd.onem2m-preq+xml do not apply to the MEF interface.

Virtual resources (clause 6.8 of [3]) are not supported by the MEF Interface.