| rfc9944v4.txt | rfc9944.txt | |||
|---|---|---|---|---|
| skipping to change at line 436 ¶ | skipping to change at line 436 ¶ | |||
| Like Section 2.1, the EndpointApp schema contains the three common | Like Section 2.1, the EndpointApp schema contains the three common | |||
| attributes specified in Section 3.1 of [RFC7643]. | attributes specified in Section 3.1 of [RFC7643]. | |||
| 6.2. Singular Attributes | 6.2. Singular Attributes | |||
| applicationType: A string that represents the type of application. | applicationType: A string that represents the type of application. | |||
| It will only contain two values: deviceControl or telemetry. | It will only contain two values: deviceControl or telemetry. | |||
| deviceControl is the application that sends commands to control | deviceControl is the application that sends commands to control | |||
| the device. telemetry is the application that receives data from | the device. telemetry is the application that receives data from | |||
| the device. The attribute is required and is not case sensitive. | the device. The attribute is required and is not case sensitive. | |||
| The attribute is readOnly and should be returned by default. No | The attribute is immutable and should be returned by default. No | |||
| uniqueness constraints are imposed on this attribute. | uniqueness constraints are imposed on this attribute. | |||
| applicationName: A string that represents a human-readable name for | applicationName: A string that represents a human-readable name for | |||
| the application. This attribute is required and mutable. The | the application. This attribute is required and mutable. The | |||
| attribute should be returned by default and there is no uniqueness | attribute should be returned by default and there is no uniqueness | |||
| constraint on the attribute. | constraint on the attribute. | |||
| clientToken: A string that contains a token that the client will use | clientToken: A string that contains a token that the client will use | |||
| to authenticate itself. Each token may be a string up to 500 | to authenticate itself. Each token may be a string up to 500 | |||
| characters in length. It is not mutable. It is read only, case | characters in length. It is not mutable. It is read only, case | |||
| skipping to change at line 492 ¶ | skipping to change at line 492 ¶ | |||
| reverse lookup does not match the dnsName in the certificate. If | reverse lookup does not match the dnsName in the certificate. If | |||
| multiple dnsNames are present, it is left to server | multiple dnsNames are present, it is left to server | |||
| implementations to address any authorization conflicts associated | implementations to address any authorization conflicts associated | |||
| with those names. This attribute is not required and not case | with those names. This attribute is not required and not case | |||
| sensitive. It is mutable and singular. | sensitive. It is mutable and singular. | |||
| +=================+=======+===+=======+=========+========+========+ | +=================+=======+===+=======+=========+========+========+ | |||
| | Attribute | Multi |Req| Case | Mutable | Return | Unique | | | Attribute | Multi |Req| Case | Mutable | Return | Unique | | |||
| | | Value | | Exact | | | | | | | Value | | Exact | | | | | |||
| +=================+=======+===+=======+=========+========+========+ | +=================+=======+===+=======+=========+========+========+ | |||
| | applicationType | F |T | F | R | Def | None | | | applicationType | F |T | F | Imm | Def | None | | |||
| +-----------------+-------+---+-------+---------+--------+--------+ | +-----------------+-------+---+-------+---------+--------+--------+ | |||
| | applicationName | F |T | F | RW | Def | None | | | applicationName | F |T | F | RW | Def | None | | |||
| +-----------------+-------+---+-------+---------+--------+--------+ | +-----------------+-------+---+-------+---------+--------+--------+ | |||
| | clientToken | F |F | T | R | N | None | | | clientToken | F |F | T | RO | Def | None | | |||
| +-----------------+-------+---+-------+---------+--------+--------+ | +-----------------+-------+---+-------+---------+--------+--------+ | |||
| | certificateInfo | F |F | F | RW | Def | None | | | certificateInfo | F |F | F | RW | Def | None | | |||
| +-----------------+-------+---+-------+---------+--------+--------+ | +-----------------+-------+---+-------+---------+--------+--------+ | |||
| | rootCA | F |F | T | RW | Def | None | | | rootCA | F |F | T | RW | Def | None | | |||
| +-----------------+-------+---+-------+---------+--------+--------+ | +-----------------+-------+---+-------+---------+--------+--------+ | |||
| | subjectName | F |T | T | RW | Def | None | | | subjectName | F |T | T | RW | Def | None | | |||
| +-----------------+-------+---+-------+---------+--------+--------+ | +-----------------+-------+---+-------+---------+--------+--------+ | |||
| | groups | T |F | T | RO | Def | n/a | | ||||
| +-----------------+-------+---+-------+---------+--------+--------+ | ||||
| Table 2: Characteristics of EndpointApp Schema Attributes | Table 2: Characteristics of EndpointApp Schema Attributes | |||
| Legend: Req = Required, T = True, F = False, RO = ReadOnly, | Legend: Req = Required, T = True, F = False, RO = ReadOnly, | |||
| RW = ReadWrite, N = No, Def = Default | RW = ReadWrite, N = No, Def = Default | |||
| If certificateInfo is provided by the client and is accepted by the | If certificateInfo is provided by the client and is accepted by the | |||
| server, the server MUST return that multivalued attribute in its | server, the server MUST return that multivalued attribute in its | |||
| response. Otherwise, the server is expected to return a clientToken. | response. Otherwise, the server is expected to return a clientToken. | |||
| If the server returns neither certificateInfo nor a clientToken, then | If the server returns neither certificateInfo nor a clientToken, then | |||
| skipping to change at line 630 ¶ | skipping to change at line 632 ¶ | |||
| attributes that are part of the respective pairing process. | attributes that are part of the respective pairing process. | |||
| Pairing method extensions are nested inside the BLE extension. It | Pairing method extensions are nested inside the BLE extension. It | |||
| is required, case sensitive, mutable, and returned by default. | is required, case sensitive, mutable, and returned by default. | |||
| 7.1.3. BLE Pairing Method Extensions | 7.1.3. BLE Pairing Method Extensions | |||
| The details on pairing methods and their associated attributes are in | The details on pairing methods and their associated attributes are in | |||
| Volume 1, Part A, Section 5.2.4 of [BLE54]. This memo defines | Volume 1, Part A, Section 5.2.4 of [BLE54]. This memo defines | |||
| extensions for four pairing methods that are nested inside the BLE | extensions for four pairing methods that are nested inside the BLE | |||
| extension schema. Each extension contains the common attributes in | extension schema. Each extension contains the common attributes in | |||
| Section 6.1. These extensions are as follows: | Section 2.1. These extensions are as follows: | |||
| pairingNull extension: Identified using the following schema URI: | pairingNull extension: Identified using the following schema URI: | |||
| urn:ietf:params:scim:schemas:extension:pairingNull:2.0:Device | urn:ietf:params:scim:schemas:extension:pairingNull:2.0:Device | |||
| pairingNull does not have any attribute. It allows pairing for | pairingNull does not have any attribute. It allows pairing for | |||
| BLE devices that do not require a pairing method. | BLE devices that do not require a pairing method. | |||
| pairingJustWorks extension: Identified using the following schema | pairingJustWorks extension: Identified using the following schema | |||
| URI: | URI: | |||
| skipping to change at line 688 ¶ | skipping to change at line 690 ¶ | |||
| exchange (where RESTful refers to the Representational State | exchange (where RESTful refers to the Representational State | |||
| Transfer (REST) architecture). It is not required. It is | Transfer (REST) architecture). It is not required. It is | |||
| mutable and returned by default if it exists. | mutable and returned by default if it exists. | |||
| +==================+=======+===+=======+=========+========+========+ | +==================+=======+===+=======+=========+========+========+ | |||
| | Attribute | Multi |Req| Case | Mutable | Return | Unique | | | Attribute | Multi |Req| Case | Mutable | Return | Unique | | |||
| | | Value | | Exact | | | | | | | Value | | Exact | | | | | |||
| +==================+=======+===+=======+=========+========+========+ | +==================+=======+===+=======+=========+========+========+ | |||
| | deviceMacAddress | F |T | F | RW | Def | Manuf | | | deviceMacAddress | F |T | F | RW | Def | Manuf | | |||
| +------------------+-------+---+-------+---------+--------+--------+ | +------------------+-------+---+-------+---------+--------+--------+ | |||
| | isRandom | F |T | F | RW | Def | None | | | isRandom | F |F | F | RW | Def | None | | |||
| +------------------+-------+---+-------+---------+--------+--------+ | +------------------+-------+---+-------+---------+--------+--------+ | |||
| | sepBroadcastAdd | T |F | F | RW | Def | None | | | sepBroadcastAdd | T |F | F | RW | Def | None | | |||
| +------------------+-------+---+-------+---------+--------+--------+ | +------------------+-------+---+-------+---------+--------+--------+ | |||
| | irk | F |F | F | WO | Nev | Manuf | | | irk | F |F | F | WO | Nev | Manuf | | |||
| +------------------+-------+---+-------+---------+--------+--------+ | +------------------+-------+---+-------+---------+--------+--------+ | |||
| | versionSupport | T |T | F | RW | Def | None | | | versionSupport | T |T | F | RW | Def | None | | |||
| +------------------+-------+---+-------+---------+--------+--------+ | +------------------+-------+---+-------+---------+--------+--------+ | |||
| | mobility | F |F | F | RW | Def | None | | | mobility | F |F | F | RW | Def | None | | |||
| +------------------+-------+---+-------+---------+--------+--------+ | +------------------+-------+---+-------+---------+--------+--------+ | |||
| | pairingMethods | T |T | T | RW | Def | None | | | pairingMethods | T |T | T | RW | Def | None | | |||
| skipping to change at line 855 ¶ | skipping to change at line 857 ¶ | |||
| 7.2.1. Singular Attributes | 7.2.1. Singular Attributes | |||
| dppVersion: An integer that represents the version of DPP the device | dppVersion: An integer that represents the version of DPP the device | |||
| supports. This attribute is required, case insensitive, mutable, | supports. This attribute is required, case insensitive, mutable, | |||
| and returned by default. | and returned by default. | |||
| bootstrapKey: A string value representing an Elliptic Curve Diffie- | bootstrapKey: A string value representing an Elliptic Curve Diffie- | |||
| Hellman (ECDH) public key. The base64-encoded lengths for P-256, | Hellman (ECDH) public key. The base64-encoded lengths for P-256, | |||
| P-384, and P-521 are 80, 96, and 120 characters. This attribute | P-384, and P-521 are 80, 96, and 120 characters. This attribute | |||
| is required, case sensitive, mutable, and returned by default. | is required, case sensitive, write only, and never returned. | |||
| deviceMacAddress: A MAC address stored as a string. It is a unique | deviceMacAddress: A MAC address stored as a string. It is a unique | |||
| 48-bit value. This attribute is optional, case insensitive, | 48-bit value. This attribute is optional, case insensitive, | |||
| mutable, and returned by default. Its form is identical to that | mutable, and returned by default. Its form is identical to that | |||
| of the deviceMacAddress for BLE devices. | of the deviceMacAddress for BLE devices. | |||
| serialNumber: An alphanumeric serial number stored as a string. It | serialNumber: An alphanumeric serial number stored as a string. It | |||
| may also be passed as bootstrapping information. This attribute | may also be passed as bootstrapping information. This attribute | |||
| is optional, case insensitive, mutable, and returned by default. | is optional, case insensitive, mutable, and returned by default. | |||
| skipping to change at line 1034 ¶ | skipping to change at line 1036 ¶ | |||
| Table 6: Characteristics of FDO Extension Schema Attributes | Table 6: Characteristics of FDO Extension Schema Attributes | |||
| Legend: Req = Required, T = True, F = False, WO = WriteOnly, | Legend: Req = Required, T = True, F = False, WO = WriteOnly, | |||
| Nev = Never | Nev = Never | |||
| Example: | Example: | |||
| <CODE BEGINS> | <CODE BEGINS> | |||
| { | { | |||
| "schemas": ["urn:ietf:params:scim:schemas:core:2.0:Devices", | "schemas": ["urn:ietf:params:scim:schemas:core:2.0:Device", | |||
| "urn:ietf:params:scim:schemas:extension:fido-device-onboard:2.0\ | "urn:ietf:params:scim:schemas:extension:fido-device-onboard:2.0\ | |||
| :Devices"], | :Device"], | |||
| "id": "e9e30dba-f08f-4109-8486-d5c6a3316111", | "id": "e9e30dba-f08f-4109-8486-d5c6a3316111", | |||
| "displayName": "Some random Ethernet Device", | "displayName": "Some random Ethernet Device", | |||
| "active": true, | "active": true, | |||
| "urn:ietf:params:scim:schemas:extension:fido-device-onboard:2.0:\ | "urn:ietf:params:scim:schemas:extension:fido-device-onboard:2.0:\ | |||
| Devices" : { | Device" : { | |||
| "fdoVoucher": "{... voucher ...}" | "fdoVoucher": "{... voucher ...}" | |||
| }, | }, | |||
| "meta": { | "meta": { | |||
| "resourceType": "Device", | "resourceType": "Device", | |||
| "created": "2022-01-23T04:56:22Z", | "created": "2022-01-23T04:56:22Z", | |||
| "lastModified": "2022-05-13T04:42:34Z", | "lastModified": "2022-05-13T04:42:34Z", | |||
| "version": "W\/\"a330bc54f0671c9\"", | "version": "W\/\"a330bc54f0671c9\"", | |||
| "location": "https://example.com/v2/Devices/e9e30dba-f08f-4109-\ | "location": "https://example.com/v2/Devices/e9e30dba-f08f-4109-\ | |||
| 8486-d5c6a3316111" | 8486-d5c6a3316111" | |||
| skipping to change at line 1075 ¶ | skipping to change at line 1077 ¶ | |||
| urn:ietf:params:scim:schemas:extension:zigbee:2.0:Device | urn:ietf:params:scim:schemas:extension:zigbee:2.0:Device | |||
| It has one singular attribute and one multivalued attribute. The | It has one singular attribute and one multivalued attribute. The | |||
| attributes are as follows. | attributes are as follows. | |||
| 7.5.1. Singular Attribute | 7.5.1. Singular Attribute | |||
| deviceEui64Address: A 64-bit Extended Unique Identifier (EUI-64) | deviceEui64Address: A 64-bit Extended Unique Identifier (EUI-64) | |||
| device address stored as string. This attribute is required, case | device address stored as string. This attribute is required, case | |||
| insensitive, mutable, and returned by default. It takes the same | insensitive, mutable, and returned by default. It takes the same | |||
| form as the deviceMACaddress in the BLE extension. | form as the deviceMacAddress in the BLE extension. | |||
| 7.5.2. Multivalued Attribute | 7.5.2. Multivalued Attribute | |||
| versionSupport: One or more strings of all the Zigbee versions | versionSupport: One or more strings of all the Zigbee versions | |||
| supported by the device, for example, [3.0]. This attribute is | supported by the device, for example, [3.0]. This attribute is | |||
| required, case insensitive, mutable, and returned by default. | required, case insensitive, mutable, and returned by default. | |||
| +====================+=====+===+=======+=========+========+========+ | +====================+=====+===+=======+=========+========+========+ | |||
| | Attribute |Multi|Req| Case | Mutable | Return | Unique | | | Attribute |Multi|Req| Case | Mutable | Return | Unique | | |||
| | |Value| | Exact | | | | | | |Value| | Exact | | | | | |||
| skipping to change at line 1144 ¶ | skipping to change at line 1146 ¶ | |||
| urn:ietf:params:scim:schemas:extension:endpointAppsExt:2.0:Device | urn:ietf:params:scim:schemas:extension:endpointAppsExt:2.0:Device | |||
| 7.6.1. Singular Attributes | 7.6.1. Singular Attributes | |||
| deviceControlEnterpriseEndpoint: A string representing the URL of | deviceControlEnterpriseEndpoint: A string representing the URL of | |||
| the enterprise endpoint to reach the enterprise gateway. When the | the enterprise endpoint to reach the enterprise gateway. When the | |||
| enterprise receives the SCIM object from the onboarding | enterprise receives the SCIM object from the onboarding | |||
| application, it adds this attribute to it and sends it back as a | application, it adds this attribute to it and sends it back as a | |||
| response to the onboarding application. This attribute is | response to the onboarding application. This attribute is | |||
| required, case sensitive, mutable, and returned by default. The | required, case sensitive, read only, and returned by default. The | |||
| uniqueness is enforced by the enterprise. | uniqueness is enforced by the enterprise. | |||
| telemetryEnterpriseEndpoint: A string representing a URL of the | telemetryEnterpriseEndpoint: A string representing a URL of the | |||
| enterprise endpoint to reach an enterprise gateway for telemetry. | enterprise endpoint to reach an enterprise gateway for telemetry. | |||
| When the enterprise receives the SCIM object from the onboarding | When the enterprise receives the SCIM object from the onboarding | |||
| application, it adds this attribute to it and sends it back as a | application, it adds this attribute to it and sends it back as a | |||
| response to the onboarding application. This attribute is | response to the onboarding application. This attribute is | |||
| optional, case sensitive, mutable, and returned by default. The | optional, case sensitive, read only, and returned by default. The | |||
| uniqueness is enforced by the enterprise. This attribute is | uniqueness is enforced by the enterprise. This attribute is | |||
| populated when the enterprise provides a telemetry endpoint (e.g., | populated when the enterprise provides a telemetry endpoint (e.g., | |||
| hosted by the enterprise gateway). If a telemetry service is not | hosted by the enterprise gateway). If a telemetry service is not | |||
| known by the SCIM server, the attribute will not be returned. In | known by the SCIM server, the attribute will not be returned. In | |||
| such cases, if the application requires telemetry, separate | such cases, if the application requires telemetry, separate | |||
| arrangements must be made. | arrangements must be made. | |||
| 7.6.2. Multivalued Attribute | 7.6.2. Multivalued Attribute | |||
| applications: A multivalued attribute of one or more complex | applications: A multivalued attribute of one or more complex | |||
| attributes that represent a list of endpoint applications, i.e., | attributes that represent a list of endpoint applications, i.e., | |||
| deviceControl and telemetry. Each entry in the list comprises two | deviceControl and telemetry. Each entry in the list comprises two | |||
| attributes including "value" and "$ref". | attributes including "value" and "$ref". | |||
| value: A string containing the identifier of the endpoint | value: A string containing the identifier of the endpoint | |||
| application formatted as a Universally Unique Identifier (UUID). | application formatted as a Universally Unique Identifier (UUID). | |||
| It is the same as the common attribute "$id" of the resource | It is the same as the common attribute "$id" of the resource | |||
| EndpointApp. It is read/write, required, case insensitive, and | EndpointApp. It is read/write, required, case insensitive, and | |||
| returned by default. | returned by default. | |||
| $ref: A reference to the respective EndointApp resource object | $ref: A reference to the respective EndpointApp resource object | |||
| stored in the SCIM server. It is readOnly, required, case | stored in the SCIM server. It is readOnly, required, case | |||
| sensitive, and returned by default. | sensitive, and returned by default. | |||
| +====================+=====+===+=======+=========+========+========+ | +====================+=====+===+=======+=========+========+========+ | |||
| | Attribute |Multi|Req| Case | Mutable | Return | Unique | | | Attribute |Multi|Req| Case | Mutable | Return | Unique | | |||
| | |Value| | Exact | | | | | | |Value| | Exact | | | | | |||
| +====================+=====+===+=======+=========+========+========+ | +====================+=====+===+=======+=========+========+========+ | |||
| | devContEntEndpoint |F |T | T | R | Def | Ent | | | devContEntEndpoint |F |T | T | RO | Def | Ent | | |||
| +--------------------+-----+---+-------+---------+--------+--------+ | +--------------------+-----+---+-------+---------+--------+--------+ | |||
| | telEntEndpoint |F |F | T | R | Def | Ent | | | telEntEndpoint |F |F | T | RO | Def | Ent | | |||
| +--------------------+-----+---+-------+---------+--------+--------+ | +--------------------+-----+---+-------+---------+--------+--------+ | |||
| | applications |T |T | F | RW | Def | None | | | applications |T |T | F | RW | Def | None | | |||
| +--------------------+-----+---+-------+---------+--------+--------+ | +--------------------+-----+---+-------+---------+--------+--------+ | |||
| | value |F |T | F | RW | Def | None | | | value |F |T | F | RW | Def | None | | |||
| +--------------------+-----+---+-------+---------+--------+--------+ | +--------------------+-----+---+-------+---------+--------+--------+ | |||
| | $ref |F |T | F | R | Def | None | | | $ref |F |T | T | R | Def | None | | |||
| +--------------------+-----+---+-------+---------+--------+--------+ | +--------------------+-----+---+-------+---------+--------+--------+ | |||
| Table 8: Characteristics of endpointAppsExt Extension Schema | Table 8: Characteristics of endpointAppsExt Extension Schema | |||
| Attributes | Attributes | |||
| Legend: devContEntEndpoint = deviceControlEnterpriseEndpoint, | Legend: devContEntEndpoint = deviceControlEnterpriseEndpoint, | |||
| telEntEndpoint = telemetryEnterpriseEndpoint, | telEntEndpoint = telemetryEnterpriseEndpoint, | |||
| Req = Required, T = True, F = False, RO = ReadOnly, | Req = Required, T = True, F = False, RO = ReadOnly, | |||
| RW = ReadWrite, Ent = Enterprise, Def = Default | RW = ReadWrite, Ent = Enterprise, Def = Default | |||
| skipping to change at line 1383 ¶ | skipping to change at line 1385 ¶ | |||
| Schema URI: urn:ietf:params:scim:schemas:extension:dpp:2.0:Device | Schema URI: urn:ietf:params:scim:schemas:extension:dpp:2.0:Device | |||
| Name: Wi-Fi Easy Connect | Name: Wi-Fi Easy Connect | |||
| Resource Type: Device | Resource Type: Device | |||
| Reference: RFC 9944, Section 7.2 | Reference: RFC 9944, Section 7.2 | |||
| Schema URI: | Schema URI: | |||
| urn:ietf:params:scim:schemas:extension:endpointAppsExt:2.0:Device | urn:ietf:params:scim:schemas:extension:endpointAppsExt:2.0:Device | |||
| Name: Application Endpoint Extension | Name: Application Endpoint Extension | |||
| Resource Type: Device | Resource Type: Device | |||
| Reference: RFC 9944, Section 7.1.3 | Reference: RFC 9944, Section 7.6 | |||
| Schema URI: | Schema URI: | |||
| urn:ietf:params:scim:schemas:extension:pairingJustWorks:2.0:Device | urn:ietf:params:scim:schemas:extension:pairingJustWorks:2.0:Device | |||
| Name: Just Works Auth BLE | Name: Just Works Auth BLE | |||
| Resource Type: Device | Resource Type: Device | |||
| Reference: RFC 9944, Section 7.1.3 | Reference: RFC 9944, Section 7.1.3 | |||
| Schema URI: | Schema URI: | |||
| urn:ietf:params:scim:schemas:extension:pairingOOB:2.0:Device | urn:ietf:params:scim:schemas:extension:pairingOOB:2.0:Device | |||
| Name: Out-of-Band Pairing for BLE | Name: Out-of-Band Pairing for BLE | |||
| Resource Type: Device | Resource Type: Device | |||
| Reference: RFC 9944, Section 7.1.3 | Reference: RFC 9944, Section 7.1.3 | |||
| Schema URI: | Schema URI: | |||
| urn:ietf:params:scim:schemas:extension:pairingPassKey:2.0:Device | urn:ietf:params:scim:schemas:extension:pairingPassKey:2.0:Device | |||
| Name: Passkey Pairing for BLE | Name: Passkey Pairing for BLE | |||
| Resource Type: Device | Resource Type: Device | |||
| Reference: RFC 9944, Section 7.1.3 | Reference: RFC 9944, Section 7.1.3 | |||
| Schema URI: | ||||
| urn:ietf:params:scim:schemas:extension:pairingNull:2.0:Device | ||||
| Name: Pairing Null | ||||
| Resource Type: Device | ||||
| Reference: RFC 9944, Section 7.1.3 | ||||
| Schema URI: urn:ietf:params:scim:schemas:extension:zigbee:2.0:Device | ||||
| Name: Zigbee | ||||
| Resource Type: Device | ||||
| Reference: RFC 9944, Section 7.5 | ||||
| 10. References | 10. References | |||
| 10.1. Normative References | 10.1. Normative References | |||
| [BLE54] Bluetooth SIG, "Bluetooth Core Specification", Version | [BLE54] Bluetooth SIG, "Bluetooth Core Specification", Version | |||
| 5.4, 2023, <https://www.bluetooth.org/DocMan/handlers/ | 5.4, 2023, <https://www.bluetooth.org/DocMan/handlers/ | |||
| DownloadDoc.ashx?doc_id=587177>. | DownloadDoc.ashx?doc_id=587177>. | |||
| [DPP2] Wi-Fi Alliance, "Wi-Fi Easy Connect Specification", | [DPP2] Wi-Fi Alliance, "Wi-Fi Easy Connect Specification", | |||
| Version 3.0, 2020, <https://www.wi-fi.org/system/files/Wi- | Version 3.0, 2020, <https://www.wi-fi.org/system/files/Wi- | |||
| skipping to change at line 1534 ¶ | skipping to change at line 1547 ¶ | |||
| "meta": { | "meta": { | |||
| "location": "https://example.com/v2/ResourceTypes/Device", | "location": "https://example.com/v2/ResourceTypes/Device", | |||
| "resourceType": "ResourceType" | "resourceType": "ResourceType" | |||
| } | } | |||
| }, | }, | |||
| { | { | |||
| "schemas": ["urn:ietf:params:scim:schemas:core:2.0:ResourceType"\ | "schemas": ["urn:ietf:params:scim:schemas:core:2.0:ResourceType"\ | |||
| ], | ], | |||
| "id": "EndpointApp", | "id": "EndpointApp", | |||
| "name": "EndpointApp", | "name": "EndpointApp", | |||
| "endpoint": "/EndpointApp", | "endpoint": "/EndpointApps", | |||
| "description": "Endpoint application such as device control and \ | "description": "Endpoint application such as device control and \ | |||
| telemetry.", | telemetry.", | |||
| "schema": "urn:ietf:params:scim:schemas:core:2.0:EndpointApp", | "schema": "urn:ietf:params:scim:schemas:core:2.0:EndpointApp", | |||
| "meta": { | "meta": { | |||
| "location": "https://example.com/v2/ResourceTypes/EndpointApp", | "location": "https://example.com/v2/ResourceTypes/EndpointApps", | |||
| "resourceType": "ResourceType" | "resourceType": "ResourceType" | |||
| } | } | |||
| } | } | |||
| ] | ] | |||
| <CODE ENDS> | <CODE ENDS> | |||
| A.2. Core Device Schema | A.2. Core Device Schema | |||
| <CODE BEGINS> | <CODE BEGINS> | |||
| { | { | |||
| skipping to change at line 1633 ¶ | skipping to change at line 1646 ¶ | |||
| "caseExact": false, | "caseExact": false, | |||
| "mutability": "readOnly", | "mutability": "readOnly", | |||
| "returned": "default", | "returned": "default", | |||
| "uniqueness": "none" | "uniqueness": "none" | |||
| }, | }, | |||
| { | { | |||
| "name": "display", | "name": "display", | |||
| "type": "string", | "type": "string", | |||
| "multiValued": false, | "multiValued": false, | |||
| "description": "A human-readable name, primarily used for \ | "description": "A human-readable name, primarily used for \ | |||
| display purposes. READ-ONLY.", | display purposes. READ ONLY.", | |||
| "required": false, | "required": false, | |||
| "caseExact": false, | "caseExact": false, | |||
| "mutability": "readOnly", | "mutability": "readOnly", | |||
| "returned": "default", | "returned": "default", | |||
| "uniqueness": "none" | "uniqueness": "none" | |||
| }, | }, | |||
| { | { | |||
| "name": "type", | "name": "type", | |||
| "type": "string", | "type": "string", | |||
| "multiValued": false, | "multiValued": false, | |||
| skipping to change at line 1793 ¶ | skipping to change at line 1806 ¶ | |||
| "caseExact": false, | "caseExact": false, | |||
| "mutability": "readOnly", | "mutability": "readOnly", | |||
| "returned": "default", | "returned": "default", | |||
| "uniqueness": "none" | "uniqueness": "none" | |||
| }, | }, | |||
| { | { | |||
| "name": "display", | "name": "display", | |||
| "type": "string", | "type": "string", | |||
| "multiValued": false, | "multiValued": false, | |||
| "description": "A human-readable name, primarily used for \ | "description": "A human-readable name, primarily used for \ | |||
| display purposes. READ-ONLY.", | display purposes. READ ONLY.", | |||
| "required": false, | "required": false, | |||
| "caseExact": false, | "caseExact": false, | |||
| "mutability": "readOnly", | "mutability": "readOnly", | |||
| "returned": "default", | "returned": "default", | |||
| "uniqueness": "none" | "uniqueness": "none" | |||
| }, | }, | |||
| { | { | |||
| "name": "type", | "name": "type", | |||
| "type": "string", | "type": "string", | |||
| "multiValued": false, | "multiValued": false, | |||
| skipping to change at line 1824 ¶ | skipping to change at line 1837 ¶ | |||
| "uniqueness": "none" | "uniqueness": "none" | |||
| } | } | |||
| ], | ], | |||
| "mutability": "readOnly", | "mutability": "readOnly", | |||
| "returned": "default" | "returned": "default" | |||
| } | } | |||
| ], | ], | |||
| "meta" : { | "meta" : { | |||
| "resourceType" : "Schema", | "resourceType" : "Schema", | |||
| "location" : | "location" : | |||
| "/v2/Schemas/urn:ietf:params:scim:schemas:core:2.0:Device" | "/v2/Schemas/urn:ietf:params:scim:schemas:core:2.0:EndpointApp" | |||
| } | } | |||
| } | } | |||
| <CODE ENDS> | <CODE ENDS> | |||
| A.4. BLE Extension Schema | A.4. BLE Extension Schema | |||
| <CODE BEGINS> | <CODE BEGINS> | |||
| [ | [ | |||
| { | { | |||
| "id": "urn:ietf:params:scim:schemas:extension:ble:2.0:Device", | "id": "urn:ietf:params:scim:schemas:extension:ble:2.0:Device", | |||
| skipping to change at line 1899 ¶ | skipping to change at line 1912 ¶ | |||
| }, | }, | |||
| { | { | |||
| "name": "irk", | "name": "irk", | |||
| "type": "string", | "type": "string", | |||
| "description": "Identity Resolving Key (IRK), which is \ | "description": "Identity Resolving Key (IRK), which is \ | |||
| unique for every device. It is used to resolve a random address. \ | unique for every device. It is used to resolve a random address. \ | |||
| This value MUST NOT be set when separateBroadcastAddress is set.", | This value MUST NOT be set when separateBroadcastAddress is set.", | |||
| "multiValued": false, | "multiValued": false, | |||
| "required": false, | "required": false, | |||
| "caseExact": false, | "caseExact": false, | |||
| "mutability": "readWrite", | "mutability": "writeOnly", | |||
| "returned": "default", | "returned": "never", | |||
| "uniqueness": "Manufacturer" | "uniqueness": "Manufacturer" | |||
| }, | }, | |||
| { | { | |||
| "name": "mobility", | "name": "mobility", | |||
| "type": "bool", | "type": "boolean", | |||
| "description": "If set to true, the BLE device will \ | "description": "If set to true, the BLE device will \ | |||
| automatically connect to the closest AP. For example, if a BLE \ | automatically connect to the closest AP. For example, if a BLE \ | |||
| device is connected with AP-1 and moves out of range but comes in \ | device is connected with AP-1 and moves out of range but comes in \ | |||
| range of AP-2, it will be disconnected with AP-1 and \ | range of AP-2, it will be disconnected with AP-1 and \ | |||
| connected with AP-2.", | connected with AP-2.", | |||
| "multiValued": false, | "multiValued": false, | |||
| "required": false, | "required": false, | |||
| "caseExact": false, | "caseExact": false, | |||
| "mutability": "readWrite", | "mutability": "readWrite", | |||
| "returned": "default", | "returned": "default", | |||
| skipping to change at line 1961 ¶ | skipping to change at line 1974 ¶ | |||
| .0:Device", | .0:Device", | |||
| "name": "pairingJustWorks", | "name": "pairingJustWorks", | |||
| "description": "Just Works pairing method for BLE.", | "description": "Just Works pairing method for BLE.", | |||
| "attributes" : [ | "attributes" : [ | |||
| { | { | |||
| "name": "key", | "name": "key", | |||
| "type": "integer", | "type": "integer", | |||
| "description": "Just Works does not have any key value. For \ | "description": "Just Works does not have any key value. For \ | |||
| completeness, it is added with a key value 'null'.", | completeness, it is added with a key value 'null'.", | |||
| "multiValued": false, | "multiValued": false, | |||
| "required": true, | "required": false, | |||
| "caseExact": false, | "caseExact": false, | |||
| "mutability": "immutable", | "mutability": "immutable", | |||
| "returned": "default", | "returned": "default", | |||
| "uniqueness": "none" | "uniqueness": "none" | |||
| } | } | |||
| ], | ], | |||
| "meta" : { | "meta" : { | |||
| "resourceType" : "Schema", | "resourceType" : "Schema", | |||
| "location" : "/v2/Schemas/urn:ietf:params:scim:schemas:\ | "location" : "/v2/Schemas/urn:ietf:params:scim:schemas:\ | |||
| extension:pairingJustWorks:2.0:Device" | extension:pairingJustWorks:2.0:Device" | |||
| skipping to change at line 2003 ¶ | skipping to change at line 2016 ¶ | |||
| "meta" : { | "meta" : { | |||
| "resourceType" : "Schema", | "resourceType" : "Schema", | |||
| "location" : "/v2/Schemas/urn:ietf:params:scim:schemas:\ | "location" : "/v2/Schemas/urn:ietf:params:scim:schemas:\ | |||
| extension:pairingPassKey:2.0:Device" | extension:pairingPassKey:2.0:Device" | |||
| } | } | |||
| }, | }, | |||
| { | { | |||
| "id": "urn:ietf:params:scim:schemas:extension:pairingOOB:2.0:\ | "id": "urn:ietf:params:scim:schemas:extension:pairingOOB:2.0:\ | |||
| Device", | Device", | |||
| "name": "pairingOOB", | "name": "pairingOOB", | |||
| "description": "Passkey pairing method for BLE.", | "description": "Out-of-band pairing method for BLE.", | |||
| "attributes" : [ | "attributes" : [ | |||
| { | { | |||
| "name": "key", | "name": "key", | |||
| "type": "string", | "type": "string", | |||
| "description": "A key value retrieved from out-of-band \ | "description": "A key value retrieved from out-of-band \ | |||
| source such as NFC.", | source such as NFC.", | |||
| "multiValued": false, | "multiValued": false, | |||
| "required": true, | "required": true, | |||
| "caseExact": true, | "caseExact": true, | |||
| "mutability": "readWrite", | "mutability": "readWrite", | |||
| skipping to change at line 2090 ¶ | skipping to change at line 2103 ¶ | |||
| "uniqueness": "none" | "uniqueness": "none" | |||
| }, | }, | |||
| { | { | |||
| "name": "bootstrapKey", | "name": "bootstrapKey", | |||
| "type": "string", | "type": "string", | |||
| "description": "A base64-encoded Elliptic Curve Diffie-\ | "description": "A base64-encoded Elliptic Curve Diffie-\ | |||
| Hellman public key (may be P-256, P-384, or P-521).", | Hellman public key (may be P-256, P-384, or P-521).", | |||
| "multiValued": false, | "multiValued": false, | |||
| "required": true, | "required": true, | |||
| "caseExact": true, | "caseExact": true, | |||
| "mutability": "readWrite", | "mutability": "writeOnly", | |||
| "returned": "default", | "returned": "never", | |||
| "uniqueness": "none" | "uniqueness": "none" | |||
| }, | }, | |||
| { | { | |||
| "name": "deviceMacAddress", | "name": "deviceMacAddress", | |||
| "type": "string", | "type": "string", | |||
| "pattern": "^[0-9A-Fa-f]{2}(:[0-9A-Fa-f]{2}){5}$", | "pattern": "^[0-9A-Fa-f]{2}(:[0-9A-Fa-f]{2}){5}$", | |||
| "description": "A unique public MAC address assigned by the \ | "description": "A unique public MAC address assigned by the \ | |||
| manufacturer.", | manufacturer.", | |||
| "multiValued": false, | "multiValued": false, | |||
| "required": false, | "required": false, | |||
| skipping to change at line 2178 ¶ | skipping to change at line 2191 ¶ | |||
| :ethernet-mab:2.0:Device" | :ethernet-mab:2.0:Device" | |||
| } | } | |||
| } | } | |||
| <CODE ENDS> | <CODE ENDS> | |||
| A.7. FDO Extension Schema | A.7. FDO Extension Schema | |||
| <CODE BEGINS> | <CODE BEGINS> | |||
| { | { | |||
| "id": "urn:ietf:params:scim:schemas:extension:fido-device-onboard:\ | "id": "urn:ietf:params:scim:schemas:extension:fido-device-onboard:\ | |||
| 2.0:Devices", | 2.0:Device", | |||
| "name": "FDOExtension", | "name": "FDOExtension", | |||
| "description": "Device extension schema for FIDO Device Onboard (\ | "description": "Device extension schema for FIDO Device Onboard (\ | |||
| FDO).", | FDO).", | |||
| "attributes" : [ | "attributes" : [ | |||
| { | { | |||
| "name": "fdoVoucher", | "name": "fdoVoucher", | |||
| "type": "string", | "type": "string", | |||
| "description": "A voucher as defined in the FDO \ | "description": "A voucher as defined in the FDO \ | |||
| specification.", | specification.", | |||
| "multiValued": false, | "multiValued": false, | |||
| "required": true, | "required": true, | |||
| "caseExact": false, | "caseExact": false, | |||
| "mutability": "readWrite", | "mutability": "writeOnly", | |||
| "returned": "default", | "returned": "never", | |||
| "uniqueness": "Manufacturer" | "uniqueness": "Manufacturer" | |||
| } | } | |||
| ], | ], | |||
| "meta" : { | "meta" : { | |||
| "resourceType" : "Schema", | "resourceType" : "Schema", | |||
| "location" : "/v2/Schemas/urn:ietf:params:scim:schemas:extension\ | "location" : "/v2/Schemas/urn:ietf:params:scim:schemas:extension\ | |||
| :fido-device-onboard:2.0:Devices" | :fido-device-onboard:2.0:Device" | |||
| } | } | |||
| } | } | |||
| <CODE ENDS> | <CODE ENDS> | |||
| A.8. Zigbee Extension Schema | A.8. Zigbee Extension Schema | |||
| <CODE BEGINS> | <CODE BEGINS> | |||
| { | { | |||
| "id": "urn:ietf:params:scim:schemas:extension:zigbee:2.0:Device", | "id": "urn:ietf:params:scim:schemas:extension:zigbee:2.0:Device", | |||
| "name": "zigbeeExtension", | "name": "zigbeeExtension", | |||
| skipping to change at line 2287 ¶ | skipping to change at line 2300 ¶ | |||
| "returned" : "default", | "returned" : "default", | |||
| "uniqueness" : "none" | "uniqueness" : "none" | |||
| }, | }, | |||
| { | { | |||
| "name" : "$ref", | "name" : "$ref", | |||
| "type" : "reference", | "type" : "reference", | |||
| "referenceTypes" : "EndpointApps", | "referenceTypes" : "EndpointApps", | |||
| "description" : "The URI of the corresponding EndpointApp\ | "description" : "The URI of the corresponding EndpointApp\ | |||
| resource that will control or obtain data from the device.", | resource that will control or obtain data from the device.", | |||
| "multiValued" : false, | "multiValued" : false, | |||
| "required" : false, | "required" : true, | |||
| "caseExact" : true, | "caseExact" : true, | |||
| "mutability" : "readOnly", | "mutability" : "readOnly", | |||
| "returned" : "default", | "returned" : "default", | |||
| "uniqueness" : "none" | "uniqueness" : "none" | |||
| } | } | |||
| ] | ] | |||
| }, | }, | |||
| { | { | |||
| "name": "deviceControlEnterpriseEndpoint", | "name": "deviceControlEnterpriseEndpoint", | |||
| "type": "reference", | "type": "reference", | |||
| End of changes. 33 change blocks. | ||||
| 34 lines changed or deleted | 47 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. | ||||