idnits 2.17.1 draft-ietf-cdni-interfaces-https-delegation-07.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- == There is 1 instance of lines with non-ascii characters in the document. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (25 October 2021) is 904 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) == Missing Reference: 'CDNI' is mentioned on line 218, but not defined Summary: 0 errors (**), 0 flaws (~~), 3 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 CDNI Working Group F. Fieau, Ed. 3 Internet-Draft E. Stephan 4 Intended status: Standards Track Orange 5 Expires: 28 April 2022 S. Mishra 6 Verizon 7 25 October 2021 9 CDNI extensions for HTTPS delegation 10 draft-ietf-cdni-interfaces-https-delegation-07 12 Abstract 14 The delivery of content over HTTPS involving multiple CDNs raises 15 credential management issues. This document defines metadata in CDNI 16 Control and Metadata interface to setup HTTPS delegation from an 17 Upstream CDN (uCDN) to a Downstream CDN (dCDN). 19 Status of This Memo 21 This Internet-Draft is submitted in full conformance with the 22 provisions of BCP 78 and BCP 79. 24 Internet-Drafts are working documents of the Internet Engineering 25 Task Force (IETF). Note that other groups may also distribute 26 working documents as Internet-Drafts. The list of current Internet- 27 Drafts is at https://datatracker.ietf.org/drafts/current/. 29 Internet-Drafts are draft documents valid for a maximum of six months 30 and may be updated, replaced, or obsoleted by other documents at any 31 time. It is inappropriate to use Internet-Drafts as reference 32 material or to cite them other than as "work in progress." 34 This Internet-Draft will expire on 28 April 2022. 36 Copyright Notice 38 Copyright (c) 2021 IETF Trust and the persons identified as the 39 document authors. All rights reserved. 41 This document is subject to BCP 78 and the IETF Trust's Legal 42 Provisions Relating to IETF Documents (https://trustee.ietf.org/ 43 license-info) in effect on the date of publication of this document. 44 Please review these documents carefully, as they describe your rights 45 and restrictions with respect to this document. Code Components 46 extracted from this document must include Simplified BSD License text 47 as described in Section 4.e of the Trust Legal Provisions and are 48 provided without warranty as described in the Simplified BSD License. 50 Table of Contents 52 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 53 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 2 54 3. Known delegation methods . . . . . . . . . . . . . . . . . . 3 55 4. Delegation metadata for CDNI FCI . . . . . . . . . . . . . . 3 56 5. Delegation metadata for CDNI . . . . . . . . . . . . . . . . 4 57 5.1. Usage example related to an HostMatch object . . . . . . 4 58 5.2. AcmeStarDelegationMethod object . . . . . . . . . . . . . 5 59 6. IANA considerations . . . . . . . . . . . . . . . . . . . . . 7 60 6.1. CDNI MI AcmeStarDelegationMethod Payload Type . . . . . . 8 61 6.2. CDNI FCI SupportedDelegationMethods Payload Type . . . . 8 62 7. Security considerations . . . . . . . . . . . . . . . . . . . 8 63 8. Privacy considerations . . . . . . . . . . . . . . . . . . . 8 64 9. References . . . . . . . . . . . . . . . . . . . . . . . . . 8 65 9.1. Normative References . . . . . . . . . . . . . . . . . . 8 66 9.2. Informative References . . . . . . . . . . . . . . . . . 9 67 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 9 69 1. Introduction 71 Content delivery over HTTPS using one or more CDNs along the path 72 requires credential management. This specifically applies when an 73 entity delegates delivery of encrypted content to another trusted 74 entity. 76 Several delegation methods are currently proposed within different 77 IETF working groups. They specify different methods for provisioning 78 HTTPS delivery credentials. 80 This document extends the CDNI Metadata interface to setup HTTPS 81 delegation between an upstream CDN (uCDN) and downstream CDN (dCDN) 82 using the Standardized delegation methods. Furthermore, it includes 83 a proposal of IANA registry to enable adding of new methods. 85 Section 2 is about terminology used in this document. Section 3 86 presents delegation methods specified at the IETF. Section 4 87 addresses the extension for handling HTTPS delegation in CDNI. 88 Section 5 describes simple data types. Section 6 addresses IANA 89 registry for delegation methods. Section 7 covers the security 90 issues. Section 8 is about comments and questions. 92 2. Terminology 94 This document uses terminology from CDNI framework documents such as: 95 CDNI framework document [RFC7336], CDNI requirements [RFC7337] and 96 CDNI interface specifications documents: CDNI Metadata interface 97 [RFC8006] and CDNI Control interface / Triggers [RFC8007]. 99 3. Known delegation methods 101 There are currently Internet drafts within the TLS and ACME working 102 groups adopted to handle delegation of HTTPS delivery between 103 entities. 105 This Internet Draft (I-D) proposes standardizing HTTPS delegation 106 between the CDN entities using CDNI interfaces. 108 This document only considers the Short-term, Automatically-Renewed 109 (STAR) certificates in Automated Certificate Management 110 Environment(ACME) [RFC8739] 112 This document allows the extension to other delegation methods. 113 Those methods can easily be extended to any further methods in the 114 future. 116 4. Delegation metadata for CDNI FCI 118 In order for CDNs to negotiate on which methods are supported, the 119 Footprint and Capabilities interface as defined in RFC8008, allows a 120 uCDN to send a FCI capability type objects, named 121 FCI.SupportedDelegationMethods, to dCDN. 123 The following example shows an exemple of the supported delegated 124 methods capability object serialization for a CDN that supports STAR 125 delegation method. 127 { 128 "capabilities": [ 129 { 130 "capability-type": "FCI.SupportedDelegationMethods", 131 "capability-value": { 132 "delegation-methods": [ 133 "AcmeStarDelegationDelegationMethod", 134 "... Other delegation methods ..." 135 ] 136 } 137 "footprints": [ 138 139 ] 140 } 141 ] 142 } 144 5. Delegation metadata for CDNI 146 This section defines Delegation metadata using the current Metadata 147 interface model. This allows bootstrapping delegation methods 148 between a uCDN and a delegate dCDN. 150 5.1. Usage example related to an HostMatch object 152 This section presents the use of CDNI Delegation metadata of an 153 HostMatch object, as defined in [RFC8006] as specified in the 154 following sections. 156 The existence of the delegation methods in metadata in a CDNI Object 157 shall enable the use of one of this methods, chosen by the delegating 158 entity. In the case of an HostMatch object, the delegation method 159 will be activated for the set of Host defined in the HostMatch. See 160 Section 5.2 for more details about delegation methods metadata 161 specification. 163 The HostMatch object can reference a host metadata that points at the 164 delegation information. Delegation metadata are added to a Metadata 165 object. 167 Below shows both HostMatch its Metadata related to a host, for 168 example, here is a HostMatch object referencing "video.example.com": 170 HostMatch: 171 { 172 "host": "video.example.com", 173 "host-metadata": { 174 "type": "MI.HostMetadata", 175 "href": "https://metadata.ucdn.example/host1234" 176 } 177 } 179 Following the example above, the metadata can be modeled 180 for ACMEStarDelegationMethod as: 182 { 183 "metadata": [ 184 { 185 "generic-metadata-type": "MI.AcmeStarDelegationMethod", 186 "generic-metadata-value": { 187 "star-proxy": "10.2.2.2", 188 "acme-server" : "10.2.3.3", 189 "credentials-location-uri": “www.ucdn.com/credentials", 190 "periodicity": 36000, 191 "CSR-template": Json/Text of the CSR template (see 4.2) 192 }}] 193 } 195 This extension allows to explicitly indicate support for a given 196 method. Therefore, the presence (or lack thereof) of an 197 AcmeStarDelegationMethod, and/or further delegation methods, implies 198 support (or lack thereof) for the given method. 200 Those metadata can apply to other MI objects such as PathMatch object 201 metadata. 203 5.2. AcmeStarDelegationMethod object 205 This section defines the AcmeStarDelegationMethod object which 206 describes metadata related to the use of ACME/STAR API presented in 207 [RFC8739] 209 As expressed in [RFC8739], when an origin has set a delegation to a 210 specific domain (i.e. dCDN), the dCDN should present to the end-user 211 client, a short-term certificate bound to the master certificate. 213 dCDN uCDN Content Provider CA 214 | ACME/STAR proxy ACME/STAR client ACME/STAR srv 215 | | | | 216 | 1. GET Metadata incl. Delegation Method object with CSR template| 217 +-------------------->| | | 218 | 200 OK + Metadata incl. CSR template [CDNI] | 219 |<--------------------+ | | 220 | 2. Request delegation: video.dcdn.example + dCDN public key | 221 +-------------------->| | | 222 | | 3. Request STAR Cert + dCDN public key | 223 | +-------------------->| 4. Request STAR cert| 224 | | | + Pubkey | 225 | | |-------------------->| 226 | | | 5. STAR certificate | 227 | | 6. STAR certificate |<--------------------| 228 | 7. STAR certificate |<--------------------+ | 229 +<--------------------| | | 230 | | | | 231 | 8. Retrieve STAR certificate (credential-location-uri) | 232 +---------------------------------------------------------------->| 233 | | | 9. renew +--| 234 | | | cert | | 235 | 10. Star certificate | +->| 236 |<----------------------------------------------------------------+ 237 | ... | | | 239 Figure 1: Example call-flow of STAR delegation in CDNI showing 2 levels 240 of delegation 242 Property: star-proxy 244 Description: Used to advertise the STAR Proxy to the dCDN. 245 Endpoint type defined in RFC8006, Section 4.3.3. 247 Type: Endpoint 249 Mandatory-to-Specify: Yes 251 Property: acme-server 253 Description: used to advertise the ACME server to the dCDN. 254 Endpoint type is defined in RFC8006, Section 4.3.3. 256 Type: Endpoint 258 Mandatory-to-Specify: Yes 260 Property: credentials-location-uri 261 Description: expresses the location of the credentials to be 262 fetched by the dCDN. Link type is as defined in RFC8006, 263 Section 4.3.1. 265 Type: Link 267 Mandatory-to-Specify: Yes 269 Property: periodicity 271 Description: expresses the credentials renewal periodicity. 273 Type: Integer 275 Mandatory-to-Specify: Yes 277 Property: CSR-template 279 Description: The CSR template must be included in the metadata 280 when dealing with AcmeStarDelegation Methods. It shall follow the 281 description in [RFC8739] section 3. It should be included in 282 JSON/text format. 284 Type: JSON 286 Mandatory-to-Specify: Yes 288 6. IANA considerations 290 This document requests the registration of the following entries 291 under the "CDNI Payload Types" registry hosted by IANA regarding 292 "CDNI delegation": 294 +-------------------------------+---------------+ 295 | Payload Type | Specification | 296 +-------------------------------+---------------+ 297 | MI.AcmeStarDelegationMethod | RFCthis | 298 +-------------------------------+---------------+ 299 | FCI.SupportedDelegationMethods| RFCthis | 300 +-------------------------------+---------------+ 302 [RFC Editor: Please replace RFCthis with the published RFC number for 303 this document.] 305 6.1. CDNI MI AcmeStarDelegationMethod Payload Type 307 Purpose: The purpose of this Payload Type is to distinguish 308 AcmeStarDelegationMethod MI objects (and any associated capability 309 advertisement) 311 Interface: MI 313 Encoding: see Section 5 315 6.2. CDNI FCI SupportedDelegationMethods Payload Type 317 Purpose: The purpose of this Payload Type is to distinguish 318 SupportedDelegationMethods FCI objects (and any associated capability 319 advertisement) 321 Interface: FCI 323 Encoding: see Section 4 325 7. Security considerations 327 Extensions proposed here do not alter nor change Security 328 Considerations as outlined in the CDNI Metadata and Footprint and 329 Capabilities RFCs [RFC8006]. 331 However there are still some security questions that should be 332 addressed such as: Are there concerns about using this incorrectly or 333 limitations on how this can safely be used? 335 8. Privacy considerations 337 Some privacy questions are still pending: Are there any concerns with 338 sharing the information that is in the metadata? Is the metadata 339 safe to redistribute, or is it something that is only valid between 340 adjacent CDNs? 342 9. References 344 9.1. Normative References 346 [RFC8006] Niven-Jenkins, B., Murray, R., Caulfield, M., and K. Ma, 347 "Content Delivery Network Interconnection (CDNI) 348 Metadata", RFC 8006, DOI 10.17487/RFC8006, December 2016, 349 . 351 [RFC8007] Murray, R. and B. Niven-Jenkins, "Content Delivery Network 352 Interconnection (CDNI) Control Interface / Triggers", 353 RFC 8007, DOI 10.17487/RFC8007, December 2016, 354 . 356 [RFC8739] Sheffer, Y., Lopez, D., Gonzalez de Dios, O., Pastor 357 Perales, A., and T. Fossati, "Support for Short-Term, 358 Automatically Renewed (STAR) Certificates in the Automated 359 Certificate Management Environment (ACME)", RFC 8739, 360 DOI 10.17487/RFC8739, March 2020, 361 . 363 9.2. Informative References 365 [RFC7336] Peterson, L., Davie, B., and R. van Brandenburg, Ed., 366 "Framework for Content Distribution Network 367 Interconnection (CDNI)", RFC 7336, DOI 10.17487/RFC7336, 368 August 2014, . 370 [RFC7337] Leung, K., Ed. and Y. Lee, Ed., "Content Distribution 371 Network Interconnection (CDNI) Requirements", RFC 7337, 372 DOI 10.17487/RFC7337, August 2014, 373 . 375 Authors' Addresses 377 Frederic Fieau (editor) 378 Orange 379 40-48, avenue de la Republique 380 92320 Chatillon 381 France 383 Email: frederic.fieau@orange.com 385 Emile Stephan 386 Orange 387 2, avenue Pierre Marzin 388 22300 Lannion 389 France 391 Email: emile.stephan@orange.com 392 Sanjay Mishra 393 Verizon 394 13100 Columbia Pike 395 Silver Spring, MD 20904 396 United States of America 398 Email: sanjay.mishra@verizon.com