rfc-9430

Extension of the Datagram Transport Layer Security (DTLS) Profile for Authentication and Authorization for Constrained Environments (ACE) to Transport Layer Security (TLS)

O. Bergmann, J. Preuß Mattsson, G. Selander
date2023-07 streamIETF areasec wgace statusPROPOSED STANDARD pages6 canonicalhttps://www.rfc-editor.org/rfc/rfc9430 doi10.17487/RFC9430
This document updates "Datagram Transport Layer Security (DTLS) Profile for Authentication and Authorization for Constrained Environments (ACE)" (RFC 9202) by specifying that the profile applies to TLS as well as DTLS.

updates

Extracted elements (11)

design-rationale §1

RFC 9202 was originally specified only for DTLS, but the profile works equally well for TLS. This extension is motivated by network environments where UDP may be blocked, requiring clients to fall back from CoAP over UDP to CoAP over TCP for NAT or firewall traversal.

tls, security, nat

design-rationale §1

The same access token can be used with either DTLS or TLS between a given Client/RS pair, enabling transport-layer flexibility without requiring separate token issuance per transport type.

tls, oauth, security

interoperability-note §4

A Client that implements either TLS or DTLS but not both might fail entirely in establishing a secure communication channel with a Resource Server that only supports the other mechanism.

tls, security

normative-requirement §4 SHOULD

Clients and Resource Servers SHOULD support DTLS and MAY support TLS, since resource-constrained devices are not expected to support both transport layer security mechanisms.

tls, security

normative-requirement §4 SHOULD

Clients that support either DTLS or TLS but not both SHOULD use the transport protocol underlying their supported security mechanism for initial unauthorized resource requests to the Resource Server.

tls, security

normative-requirement §4 MAY

If DTLS connection fails, the Client MAY try to connect to the Resource Server via TLS as a fallback.

tls, security

normative-requirement §4 SHOULD

Nonconstrained Clients and Resource Servers SHOULD support both TLS and DTLS.

tls, security

normative-requirement §4 SHOULD

When an initial unauthorized resource request succeeds, the Client SHOULD first use the same underlying transport protocol for the security association to the Resource Server (DTLS for UDP, TLS for TCP).

tls, security

protocol-element §1

The ace_profile parameter value 'coap_dtls' (CBOR value 1) in AS-to-Client responses or access token claims now indicates that either DTLS or TLS may be used for transport layer security between Client and Resource Server.

tls, oauth, security

registry §5

The 'ACE Profiles' IANA registry entry for 'coap_dtls' (CBOR value 1) has been updated to reflect that the profile covers both DTLS and TLS channels, with references updated to include RFC 9430 alongside RFC 9202.

registry, tls, security

security-consideration §6

All security considerations and requirements from RFC 9202 (DTLS Profile for ACE), TLS 1.3 (RFC 8446), and BCP 195 (RFC 8996, RFC 9325, which deprecates TLS 1.0/1.1 and provides TLS/DTLS recommendations) apply to this document.

tls, security