idnits 2.17.00 (12 Aug 2021) /tmp/idnits30248/draft-ietf-stir-rph-06.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: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- ** The abstract seems to contain references ([RFC8225]), which it shouldn't. Please replace those with straight textual mentions of the documents in question. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (May 24, 2018) is 1451 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: 'RFCThis' is mentioned on line 304, but not defined Summary: 1 error (**), 0 flaws (~~), 2 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 STIR R. Singh 3 Internet-Draft Vencore Labs 4 Intended status: Standards Track M. Dolly 5 Expires: November 25, 2018 AT&T 6 S. Das 7 Vencore Labs 8 A. Nguyen 9 Office of Emergency Communication/DHS 10 May 24, 2018 12 PASSporT Extension for Resource Priority Authorization 13 draft-ietf-stir-rph-06 15 Abstract 17 This document extends the PASSporT (Personal Assertion Token) 18 specification defined in [RFC8225] to allow the inclusion of 19 cryptographically signed assertions of authorization for the values 20 populated in the 'Session Initiation Protocol (SIP) Resource- 21 Priority' header field, which is used for communications resource 22 prioritization. 24 Status of This Memo 26 This Internet-Draft is submitted in full conformance with the 27 provisions of BCP 78 and BCP 79. 29 Internet-Drafts are working documents of the Internet Engineering 30 Task Force (IETF). Note that other groups may also distribute 31 working documents as Internet-Drafts. The list of current Internet- 32 Drafts is at https://datatracker.ietf.org/drafts/current/. 34 Internet-Drafts are draft documents valid for a maximum of six months 35 and may be updated, replaced, or obsoleted by other documents at any 36 time. It is inappropriate to use Internet-Drafts as reference 37 material or to cite them other than as "work in progress." 39 This Internet-Draft will expire on November 25, 2018. 41 Copyright Notice 43 Copyright (c) 2018 IETF Trust and the persons identified as the 44 document authors. All rights reserved. 46 This document is subject to BCP 78 and the IETF Trust's Legal 47 Provisions Relating to IETF Documents 48 (https://trustee.ietf.org/license-info) in effect on the date of 49 publication of this document. Please review these documents 50 carefully, as they describe your rights and restrictions with respect 51 to this document. Code Components extracted from this document must 52 include Simplified BSD License text as described in Section 4.e of 53 the Trust Legal Provisions and are provided without warranty as 54 described in the Simplified BSD License. 56 Table of Contents 58 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 59 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 60 3. PASSporT 'rph' Claim . . . . . . . . . . . . . . . . . . . . 3 61 4. 'rph' in SIP . . . . . . . . . . . . . . . . . . . . . . . . 5 62 4.1. Authentication Service Behavior . . . . . . . . . . . . . 5 63 4.2. Verification Service Behavior . . . . . . . . . . . . . . 5 64 5. Further Information Associated with 'Resource-Priority' . . . 6 65 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 6 66 6.1. JSON Web Token Claims . . . . . . . . . . . . . . . . . . 6 67 6.2. PASSporT Types . . . . . . . . . . . . . . . . . . . . . 7 68 7. Security Considerations . . . . . . . . . . . . . . . . . . . 7 69 7.1. Avoidance of replay and cut and paste attacks . . . . . . 7 70 7.2. Solution Considerations . . . . . . . . . . . . . . . . . 7 71 7.3. Acknowledgements . . . . . . . . . . . . . . . . . . . . 8 72 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 8 73 8.1. Normative References . . . . . . . . . . . . . . . . . . 8 74 8.2. Informative References . . . . . . . . . . . . . . . . . 9 75 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 9 77 1. Introduction 79 PASSporT [RFC8225] is a token format based on JSON Web Token (JWT) 80 [RFC7519] for conveying cryptographically signed information about 81 the identities involved in personal communications. PASSporT with 82 STIR [RFC8224] provides a mechanism by which an authority on the 83 originating side of a call via a protocol like SIP [RFC3261] can 84 provide a cryptographic assurance of the validity of the calling 85 party telephone number in order to prevent impersonation attacks. 87 [RFC4412] defines the 'SIP Resource-Priority' header field for 88 communications 'Resource-Priority'. As specified in [RFC4412], the 89 'SIP Resource-Priority' header field may be used by SIP user agents 90 [RFC3261] (including Public Switched Telephone Network (PSTN) 91 gateways and SIP proxy servers) to influence prioritization afforded 92 to communication sessions including PSTN calls (e.g., to manage 93 scarce network resources during network congestion scenarios). 94 However, the 'SIP Resource-Priority' header field could be spoofed 95 and abused by unauthorized entities, the threat models and use cases 96 of which are described in [RFC7375] and [RFC7340], respectively. 98 Compromise of the 'SIP Resource-Priority' header field [RFC4412] 99 could lead to misuse of network resource (i.e., during congestion 100 scenarios) resulting in impacts to the application services supported 101 using the 'SIP Resource-Priority' header field. 103 [RFC8225] allows extensions by which an authority on the originating 104 side verifying the authorization of a particular communication for 105 'SIP Resource-Priority' can use a PASSPorT claim to cryptographically 106 sign the 'SIP Resource-Priority' header field and convey assertion of 107 the authorization for 'Resource-Priority'. Signed 'SIP Resource- 108 Priority' header field will allow a receiving entity (including 109 entities located in different network domains/boundaries) to verify 110 the validity of assertions authorizing 'Resource-Priority' and to act 111 on the information with confidence that the information has not been 112 spoofed or compromised. 114 This specification documents an extension to PASSporT and the 115 associated STIR mechanisms to provide a function to cryptographically 116 sign the 'SIP Resource-Priority' header field. This PASSporT object 117 is used to provide attestation of a calling user authorization for 118 priority communications. This is necessary in addition to the 119 PASSporT object that is used for calling user telephone number 120 attestation. How this extension to PASSporT is used for real-time 121 communications supported using 'SIP Resource-Priority' header field 122 is outside the scope of this document. In addition, the PASSPorT 123 extension defined in this document is intended for use in 124 environments where there are means to verify that the signer of the 125 'SIP Resource-Priority' header field is authoritative. 127 2. Terminology 129 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 130 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 131 document are to be interpreted as described in RFC 2119 [RFC2119] and 132 in RFC 8174 [RFC8174]. 134 3. PASSporT 'rph' Claim 136 This specification defines a new JSON Web Token claim for "rph", 137 which provides an assertion for information in 'SIP Resource- 138 Priority' header field. 140 The creator of a PASSporT object adds a "ppt" value of "rph" to the 141 header of a PASSporT object, in which case the PASSporT claims MUST 142 contain a "rph" claim, and any entities verifying the PASSporT object 143 will be required to understand the "ppt" extension in order to 144 process the PASSporT in question. A PASSPorT header with the "ppt" 145 included will look as follows: 147 { 148 "typ":"passport", 149 "ppt":"rph", 150 "alg":"ES256", 151 "x5u":"https://www.example.org/cert.cer" 152 } 154 The "rph" claim will provide an assertion of authorization, "auth", 155 for information in the 'SIP Resource-Priority' header field based on 156 [RFC4412] and the syntax is: 158 { 159 Resource-Priority = "Resource-Priority" : r-value, 160 r-value= namespace "." r-priority 161 } 163 Specifically, the "rph" claim includes an assertion of the priority- 164 level of the user to be used for a given communication session. The 165 value of the "rph" claim is an Object with one or more keys. Each 166 key is associated with a JSON Array. These arrays contain Strings 167 that correspond to the r-values indicated in the 'SIP Resource- 168 Priority' header field. 170 The following is an example "rph" claim for a 'SIP Resource-Priority' 171 header field with one r-value of "ets.0" and with another r-value of 172 "wps.0": 174 { 175 "orig":{"tn":"12155550112"}, 176 "dest":{["tn":"12125550113"]}, 177 "iat":1443208345, 178 "rph":{"auth":["ets.0", "wps.0"]} 179 } 181 After the header and claims PASSporT objects have been constructed, 182 their signature is generated normally per the guidance in [RFC8225] 183 using the full form of PASSPorT. The credentials (i.e., Certificate) 184 used to create the signature must have authority over the namespace 185 of the "rph" claim and there is only one authority per claim. The 186 authority MUST use its credentials associated with the specific 187 service supported by the resource priority namespace in the claim. 188 If r-values are added or dropped by the intermediaries along the 189 path, intermediaries must generate a new "rph" header and sign the 190 claim with its own authority. 192 The use of the compact form of PASSporT is not specified in this 193 document. 195 4. 'rph' in SIP 197 This section specifies SIP-specific usage for the "rph" claim in 198 PASSporT. 200 4.1. Authentication Service Behavior 202 The Authentication Service will create the "rph" claim using the 203 values discussed in section 3 of this document that are based on 204 [RFC4412]. The construction of "rph" claim follows the steps 205 described in Section 4.1 of [RFC8224]. 207 The resulting Identity header for "rph" might look as 208 follows(backslashes shown for line folding only): 210 Identity:eyJhbGciOiJFUzI1NiIsInBwdCI6InJwaCIsInR5cCI6InBhc3Nwb3J0\ 211 IiwieDV1IjoiaHR0cHM6Ly93d3cuZXhhbXBsZS5jb20vY2VydC5jZXIifQo.eyJkZ\ 212 XN0Ijp7WyJ0biI6IjEyMTI1NTUwMTEzIl19LCJpYXQiOiIxNDQzMjA4MzQ1Iiwib3\ 213 JpZyI6eyJ0biI6IjEyMTU1NTUwMTEyIn0sInJwaCI6eyJhdXRoIjpbImV0cy4wIiw\ 214 id3BzLjAiXX19Cg.s37S6VC8HM6Dl6YzJeQDsrZcwJ0lizxhUrA7f_98oWBHvo-cl\ 215 -n8MIhoCr18vYYFy3blXvs3fslM_oos2P2Dyw;info=;alg=ES256;ppt="rph" 218 A SIP authentication service will derive the value of "rph" from the 219 'SIP Resource-Priority' header field based on policy associated with 220 service specific use of the "namespace "." r-priority" for r-values 221 based on [RFC4412]. The authentication service derives the value of 222 the PASSPorT claim by verifying the authorization for 'SIP Resource- 223 Priority' (i.e., verifying a calling user privilege for 'Resource- 224 Priority' based on its identity) which might be derived from customer 225 profile data or from access to external services. 227 [RFC4412] allows multiple "namespace "." priority value" pairs, 228 either in a single 'SIP Resource-Priority' header field or across 229 multiple 'SIP Resource-Priority' headers. An authority is 230 responsible for signing all the content of a 'SIP Resource-Priority' 231 header field for which it has the authority. 233 4.2. Verification Service Behavior 235 [RFC8224] Section 6.2 Step 5 requires that specifications defining 236 "ppt" values describe any additional verifier behavior. The behavior 237 specified for the "ppt" values of "rph" is as follows: 239 The verification service MUST extract the value associated with the 240 "auth" key in a full form PASSPorT with a "ppt" value of "rph". If 241 the signature validates, then the verification service can use the 242 value of the "rph" claim as validation that the calling party is 243 authorized for 'SIP Resource-Priority' as indicated in the claim. 244 This value would in turn be used for priority treatment in accordance 245 with local policy for the associated communication service. If the 246 signature validation fails, the verification service should infer 247 that the calling party is not authorized for 'SIP Resource-Priority' 248 as indicated in the claim. In such cases, the priority treatment for 249 the associated communication service is handled as per the local 250 policy of the verifier. In such scenarios, 'SIP Resource-Priority' 251 header field SHOULD be stripped from SIP request and the network 252 entities should treat the call as an ordinary call. 254 In addition, [RFC8224] Section 6.2 Step 4 requires the "iat" value in 255 "rph" claim to be verified. 257 The behavior of a SIP UA upon receiving an INVITE containing a 258 PASSporT object with a "rph" claim will largely remain a matter of 259 implementation policy for the specific communication service. In 260 most cases, implementations would act based on confidence in the 261 veracity of this information. 263 5. Further Information Associated with 'Resource-Priority' 265 There may be additional information about the calling party or the 266 call that could be relevant to authorization for 'SIP Resource- 267 Priority'. This may include information related to the device 268 subscription of the caller, or to any institutions that the caller or 269 device is associated with, or even categories of institutions. All 270 of these data elements would benefit from the secure attestations 271 provided by the STIR and PASSporT frameworks. The specification of 272 the "rph" claim could entail the optional presence of one or more 273 such additional information fields applicable to 'SIP Resource- 274 Priority'. 276 A new IANA registry has been defined to hold potential values of the 277 "rph" array; see Section 6.2. The definition of the "rph" claim may 278 have one or more such additional information field(s). Details of 279 such "rph" claim to encompass other data elements are left for future 280 version of this specification. 282 6. IANA Considerations 284 6.1. JSON Web Token Claims 286 This specification requests that the IANA add a new claim to the JSON 287 Web Token Claims registry as defined in [RFC7519]. 289 o Claim Name: "rph" 290 o Claim Description: Resource Priority Header Authorization 292 o Change Controller: IESG 294 o Specification Document(s): Section 3 of [RFCThis] 296 6.2. PASSporT Types 298 This specification also requests that the IANA creates a new entry to 299 the PASSporT Types registry for the type "rph" which is specified in 300 [RFCThis]. In addition, another registry needs to be created in 301 which each entry must contain two fields: the name of the "rph" type 302 and the specification in which the type is described. This registry 303 is to be initially populated with a single value for "auth" which is 304 specified in [RFCThis]. Registration of new "rph" types shall be 305 under the specification required policy. 307 7. Security Considerations 309 The security considerations discussed in [RFC8224] in Section 12 are 310 applicable here. 312 7.1. Avoidance of replay and cut and paste attacks 314 The PASSporT extension with a "ppt" value of "rph" MUST only be sent 315 with SIP INVITE when 'Resource-Priority' header field is used to 316 convey the priority of the communication as defined in [RFC4412]. To 317 avoid replay, and cut and paste attacks, the recommendations provided 318 in Section 12.1 of [RFC8224] MUST be followed. 320 7.2. Solution Considerations 322 Using extensions to PASSporT tokens with a "ppt" value of "rph" 323 requires knowledge of the authentication, authorization, and 324 reputation of the signer to attest to the identity being asserted, 325 including validating the digital signature and the associated 326 certificate chain to a trust anchor. The following considerations 327 should be recognized when using PASSporT extensions with a "ppt" 328 value of "rph": 330 o A signer is only allowed to sign the content of a 'SIP Resource- 331 Priority' header field for which it has the proper authorization. 332 Before signing tokens, the signer MUST have a secure method for 333 authentication of the end user or the device being granted a 334 token. 336 o The verification of the signature MUST include means of verifying 337 that the signer is authoritative for the signed content of the 338 resource priority namespace in the PASSporT. 340 7.3. Acknowledgements 342 We would like to thank STIR WG members, ATIS/SIP Forum Task Force on 343 IPNNI members, and the NS/EP Priority Services community for 344 contributions to this problem statement and specification. We would 345 also like to thank David Hancock and Ning Zhang for their valuable 346 inputs. 348 8. References 350 8.1. Normative References 352 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 353 Requirement Levels", BCP 14, RFC 2119, 354 DOI 10.17487/RFC2119, March 1997, 355 . 357 [RFC3261] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, 358 A., Peterson, J., Sparks, R., Handley, M., and E. 359 Schooler, "SIP: Session Initiation Protocol", RFC 3261, 360 DOI 10.17487/RFC3261, June 2002, 361 . 363 [RFC4412] Schulzrinne, H. and J. Polk, "Communications Resource 364 Priority for the Session Initiation Protocol (SIP)", 365 RFC 4412, DOI 10.17487/RFC4412, February 2006, 366 . 368 [RFC7519] Jones, M., Bradley, J., and N. Sakimura, "JSON Web Token 369 (JWT)", RFC 7519, DOI 10.17487/RFC7519, May 2015, 370 . 372 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 373 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 374 May 2017, . 376 [RFC8224] Peterson, J., Jennings, C., Rescorla, E., and C. Wendt, 377 "Authenticated Identity Management in the Session 378 Initiation Protocol (SIP)", RFC 8224, 379 DOI 10.17487/RFC8224, February 2018, 380 . 382 [RFC8225] Wendt, C. and J. Peterson, "PASSporT:Personal Assertion 383 Token", RFC 8225, DOI 10.17487/RFC8225, February 2018, 384 . 386 8.2. Informative References 388 [RFC7340] Peterson, J., Schulzrinne, H., and H. Tschofenig, "Secure 389 Telephone Identity Problem Statement and Requirements", 390 RFC 7340, DOI 10.17487/RFC7340, September 2014, 391 . 393 [RFC7375] Peterson, J., "Secure Telephone Identity Threat Model", 394 RFC 7375, DOI 10.17487/RFC7375, October 2014, 395 . 397 Authors' Addresses 399 Ray P. Singh 400 Vencore Labs 401 150 Mount Airy Road 402 New Jersey, NJ 07920 403 USA 405 Email: rsingh@vencorelabs.com 407 Martin Dolly 408 AT&T 409 200 Laurel Avenue 410 Middletown, NJ 07748 411 USA 413 Email: md3135@att.com 415 Subir Das 416 Vencore Labs 417 150 Mount Airy Road 418 New Jersey, NJ 07920 419 USA 421 Email: sdas@vencorelabs.com 422 An Nguyen 423 Office of Emergency Communication/DHS 424 245 Murray Lane, Building 410 425 Washington, DC 20528 426 USA 428 Email: an.p.nguyen@HQ.DHS.GOV