idnits 2.17.1 draft-ietf-stir-rph-03.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 ([I-D.ietf-stir-passport]), 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 (February 01, 2018) is 2276 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 295, 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: August 5, 2018 AT&T 6 S. Das 7 Vencore Labs 8 A. Nguyen 9 Office of Emergency Communication/DHS 10 February 01, 2018 12 PASSporT Extension for Resource-Priority Authorization 13 draft-ietf-stir-rph-03 15 Abstract 17 This document extends the Secure Telephone Identity Revisited (STIR) 18 Personal Assertion Token (PASSporT) specification defined in 19 [I-D.ietf-stir-passport] to allow the inclusion of cryptographically 20 signed assertions of authorization for the values populated in the 21 Session Initiation Protocol (SIP) 'Resource-Priority' header field, 22 which is used for communications resource 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 August 5, 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. PASSporT Extension Claims Registration . . . . . . . . . 6 67 6.2. 'rph' 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 [I-D.ietf-stir-passport] is a token format based on JSON Web 80 Token (JWT) [RFC7519] for conveying cryptographically signed 81 information about the identities involved in personal communications; 82 it is used with STIR [I-D.ietf-stir-rfc4474bis] to convey a signed 83 assertion of the identity of the participants in real-time 84 communications established via a protocol like SIP [RFC3261]. This 85 specification extends PASSporT to allow cryptographic-signing of the 86 SIP 'Resource-Priority' header field defined in [RFC4412]. 88 [RFC4412] defines the SIP 'Resource-Priority' header field for 89 communications Resource Priority. As specified in [RFC4412], the 90 'Resource-Priority' header field may be used by SIP user agents 91 [RFC3261], including Public Switched Telephone Network (PSTN) 92 gateways and terminals, and by SIP proxy servers, to influence 93 prioritization afforded to communication sessions, including PSTN 94 calls. However, the SIP 'Resource-Priority' header field could be 95 spoofed and abused by unauthorized entities. 97 The STIR architecture [RFC7340] assumes that an authority on the 98 originating side of a call provides a cryptographic assurance of the 99 validity of the calling party number in order to prevent 100 impersonation attacks. The STIR architecture allows extensions that 101 can be utilized by authorities supporting real-time communication 102 services using the 'Resource-Priority' header field to 103 cryptographically sign the SIP 'Resource-Priority' header field and 104 convey assertion of the authorization for 'Resource-Priority'. For 105 example, the authority on the originating side verifying the 106 authorization of a particular communication for 'Resource-Priority' 107 can use a PASSPorT claim to cryptographically sign the SIP 'Resource- 108 Priority' header field and convey an assertion of the authorization 109 for 'Resource-Priority'. This will allow a receiving entity 110 (including entities located in different network domains/boundaries) 111 to verify the validity of assertions authorizing 'Resource-Priority'. 112 Cryptographically signed SIP 'Resource-Priority' header fields will 113 allow a receiving entity to verify and act on the information with 114 confidence that the information has not been spoofed or compromised. 116 This specification documents an optional extension to PASSporT and 117 the associated STIR mechanisms to provide a function to sign the SIP 118 'Resource-Priority' header field. This PASSporT object is used to 119 provide attestation of a calling user authorization for priority 120 communications. This is necessary in addition to the PASSporT object 121 that is used for calling user telephone number attestation. How the 122 optional extension to PASSporT is used for real-time communications 123 supported using SIP 'Resource-Priority' header field is outside the 124 scope of this document. 126 2. Terminology 128 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 129 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 130 document are to be interpreted as described in RFC 2119 [RFC2119] and 131 in RFC 8174 [RFC8174]. 133 3. PASSporT 'rph' Claim 135 This specification defines a new JSON Web Token claim for "rph", 136 which provides an assertion for information in SIP 'Resource- 137 Priority' header field. 139 The creator of a PASSporT object adds a "ppt" value of "rph" to the 140 header of a PASSporT object, in which case the PASSporT claims MUST 141 contain a "rph" claim, and any entities verifying the PASSporT object 142 will be required to understand the "ppt" extension in order to 143 process the PASSporT in question. A PASSPorT header with the "ppt" 144 included will look as follows: 146 { 147 "typ":"passport", 148 "ppt":"rph", 149 "alg":"ES256", 150 "x5u":"https://www.example.org/cert.cer" 151 } 153 The "rph" claim will provide an assertion of authorization, "auth", 154 for information in the SIP 'Resource-Priority' header field (i.e., 155 Resource-Priority = "Resource-Priority": r-value, where r-value= 156 "namespace "." priority value") based on [RFC4412]. Specifically, 157 the "rph" claim includes assertion of the priority-level of the user 158 to be used for a given communication session. The value of the "rph" 159 claim is an Object with one or more keys. Each key is associated 160 with a JSON Array. These arrays contain Strings that correspond to 161 the r-values indicated in the SIP 'Resource-Priority' header field. 163 The following is an example "rph" claim for a SIP 'Resource-Priority' 164 header field with a r-value ="namespace "." priority value" of 165 "ets.0" and with another r-value= "namespace "." priority value" of 166 "wps.0". 168 { 169 "orig":{"tn":"12155550112"}, 170 "dest":{["tn":"12125550113"]}, 171 "iat":"1443208345", 172 "rph":{"auth":["ets.0", "wps.0"]} 173 } 175 After the header and claims PASSporT objects have been constructed, 176 their signature is generated normally per the guidance in 177 [I-D.ietf-stir-passport] using the full form of PASSPorT. The 178 credentials (e.g., authority responsible for authorizing Resource- 179 Priority) used to create the signature must have authority over the 180 namespace of the "rph" claim and there is only one authority per 181 claim. The authority MUST use its credentials (i.e., CERT) 182 associated with the specific service supported by the SIP namespace 183 in the claim. If r-values are added or dropped by the intermediaries 184 along the path, intermediaries must generate a new "rph" header and 185 sign the claim with its own authority. 187 The use of the compact form of PASSporT is not specified in this 188 document. 190 4. 'rph' in SIP 192 This section specifies SIP-specific usage for the "rph" claim in 193 PASSporT. 195 4.1. Authentication Service Behavior 197 The Authentication Service will create the "rph" claim using the 198 values discussed in section 3 based on [RFC4412]. The construction 199 of "rph" claim follows the steps described in Section 4 of 200 [I-D.ietf-stir-rfc4474bis]. 202 The resulting Identity header for "rph" might look as 203 follows(backslashes shown for line folding only): 205 Identity:eyJhbGciOiJFUzI1NiIsInBwdCI6InJwaCIsInR5cCI6InBhc3Nwb3J0\ 206 IiwieDV1IjoiaHR0cHM6Ly93d3cuZXhhbXBsZS5jb20vY2VydC5jZXIifQo.eyJkZ\ 207 XN0Ijp7WyJ0biI6IjEyMTI1NTUwMTEzIl19LCJpYXQiOiIxNDQzMjA4MzQ1Iiwib3\ 208 JpZyI6eyJ0biI6IjEyMTU1NTUwMTEyIn0sInJwaCI6eyJhdXRoIjpbImV0cy4wIiw\ 209 id3BzLjAiXX19Cg.s37S6VC8HM6Dl6YzJeQDsrZcwJ0lizxhUrA7f_98oWBHvo-cl\ 210 -n8MIhoCr18vYYFy3blXvs3fslM_oos2P2Dyw;info=;alg=ES256;ppt=rph 213 A SIP authentication service typically will derive the value of "rph" 214 from the 'Resource-Priority' header field based on policy associated 215 with service specific use of the "namespace "." priority value" for 216 r-values based on [RFC4412]. The authentication service derives the 217 value of the PASSPorT claim by verifying the authorization for 218 'Resource-Priority' (i.e., verifying a calling user privilege for 219 'Resource-Priority' based on its identity) which might be derived 220 from customer profile data or from access to external services. 222 [RFC4412] allows multiple "namespace "." priority value" pairs, 223 either in a single SIP 'Resource-Priority' header field or across 224 multiple SIP 'Resource-Priority' headers. An authority is 225 responsible for signing all the content of a SIP 'Resource-Priority' 226 header field for which it has the authority. 228 4.2. Verification Service Behavior 230 [I-D.ietf-stir-rfc4474bis] Section 6.2 Step 5 requires that 231 specifications defining "ppt" values describe any additional verifier 232 behavior. The behavior specified for the "ppt" values of "rph" is as 233 follows: 235 The verification service MUST extract the value associated with the 236 "auth" key in a full form PASSPorT with a "ppt" value of "rph". If 237 the signature validates, then the verification service can use the 238 value of the "rph" claim as validation that the calling party is 239 authorized for 'Resource-Priority' as indicated in the claim. This 240 value would in turn be used for priority treatment in accordance with 241 local policy for the associated communication service. If the 242 signature validation fails, the verification service should infer 243 that the calling party is not authorized for 'Resource-Priority' as 244 indicated in the claim. In such cases, the priority treatment for 245 the associated communication service is handled as per the local 246 policy. 248 In addition, [I-D.ietf-stir-rfc4474bis] Section 6.2 Step 4 requires 249 "iat" value in "rph" claim to be verified. 251 The behavior of a SIP UA upon receiving an INVITE containing a 252 PASSporT object with a "rph" claim will largely remain a matter of 253 implementation policy for the specific communication service. In 254 most cases, implementations would act based on confidence in the 255 veracity of this information. 257 5. Further Information Associated with 'Resource-Priority' 259 There may be additional information about the calling party or the 260 call that could be relevant to authorization for 'Resource-Priority'. 261 This may include information related to the device subscription of 262 the caller, or to any institutions that the caller or device is 263 associated with, or even categories of institutions. All of these 264 data elements would benefit from the secure attestations provided by 265 the STIR and PASSporT frameworks. The specification of the "rph" 266 claim could entail the optional presence of one or more such 267 additional information fields. 269 A new IANA registry has been defined to hold potential values of the 270 "rph" array; see Section 6.2. The definition of the "rph" claim may 271 have one or more such additional information field(s). Details of 272 such "rph" claim to encompass other data elements are left for future 273 version of this specification. 275 6. IANA Considerations 277 6.1. PASSporT Extension Claims Registration 279 This document registers a new "ppt" value for the "Personal Assertion 280 Token (PASSporT) Extensions" table. 282 o Claim Name: "rph" 284 o Claim Description: Resource Priority Header Authorization 285 o Change Controller: IESG 287 o Specification Document(s): Section 3 of [RFCThis] 289 6.2. 'rph' Types 291 This specification also requests that the IANA creates a new registry 292 for "rph" types. Each registry entry must contain two fields: the 293 name of the "rph" type and the specification in which the type is 294 described. This registry is to be initially populated with a single 295 value for "auth" which is specified in [RFCThis]. Registration of 296 new "rph" types shall be under the specification required policy. 298 7. Security Considerations 300 The security considerations discussed in [I-D.ietf-stir-rfc4474bis] 301 in Section 10 are applicable here. 303 7.1. Avoidance of replay and cut and paste attacks 305 The PASSporT extension with a "ppt" value of "rph" MUST only be sent 306 with SIP INVITE when 'Resource-Priority' header field is used to 307 convey the priority of the communication as defined in [RFC4412]. To 308 avoid the replay, and cut and paste attacks, the procedures described 309 in Section 10.1 of [I-D.ietf-stir-rfc4474bis] MUST be followed. 311 7.2. Solution Considerations 313 The use of extension to PASSporT tokens with "ppt" value "rph" based 314 on the validation of the digital signature and the associated 315 certificate requires consideration of the authentication and 316 authority or reputation of the signer to attest to the identity being 317 asserted. The following considerations should be recognized when 318 using PASSporT extension with "ppt" value of "rph": 320 o An authority (signer) is only allowed to sign the content of a SIP 321 'Resource-Priority' header field for which it has the right 322 authority. The authority that signs the token MUST have a secure 323 method for authentication of the end user or the device. 325 o The verification of the signature MUST include means of verifying 326 that the signer is authoritative for the signed content of the 327 resource priority namespace in the PASSporT. 329 7.3. Acknowledgements 331 We would like to thank STIR members, ATIS/SIP Forum Task Force on 332 IPNNI members, and the NS/EP Priority Services community for 333 contributions to this problem statement and specification. We would 334 also like to thank David Hancock and Ning Zhang for their valuable 335 inputs. 337 8. References 339 8.1. Normative References 341 [I-D.ietf-stir-passport] 342 Wendt, C. and J. Peterson, "Personal Assertion Token 343 (PASSporT)", February 2017. 345 [I-D.ietf-stir-rfc4474bis] 346 Peterson, J., Jennings, C., Rescorla, E., and C. Wendt, 347 "Authenticated Identity Management in the Session 348 Initiation Protocol (SIP)", February 2017. 350 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 351 Requirement Levels", BCP 14, RFC 2119, 352 DOI 10.17487/RFC2119, March 1997, 353 . 355 [RFC3261] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, 356 A., Peterson, J., Sparks, R., Handley, M., and E. 357 Schooler, "SIP: Session Initiation Protocol", RFC 3261, 358 DOI 10.17487/RFC3261, June 2002, 359 . 361 [RFC4412] Schulzrinne, H. and J. Polk, "Communications Resource 362 Priority for the Session Initiation Protocol (SIP)", 363 RFC 4412, DOI 10.17487/RFC4412, February 2006, 364 . 366 [RFC7519] Jones, M., Bradley, J., and N. Sakimura, "JSON Web Token 367 (JWT)", RFC 7519, DOI 10.17487/RFC7519, May 2015, 368 . 370 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 371 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 372 May 2017, . 374 8.2. Informative References 376 [RFC7340] Peterson, J., Schulzrinne, H., and H. Tschofenig, "Secure 377 Telephone Identity Problem Statement and Requirements", 378 RFC 7340, DOI 10.17487/RFC7340, September 2014, 379 . 381 Authors' Addresses 383 Ray P. Singh 384 Vencore Labs 385 150 Mount Airy Road 386 New Jersey, NJ 07920 387 USA 389 Email: rsingh@vencorelabs.com 391 Martin Dolly 392 AT&T 393 200 Laurel Avenue 394 Middletown, NJ 07748 395 USA 397 Email: md3135@att.com 399 Subir Das 400 Vencore Labs 401 150 Mount Airy Road 402 New Jersey, NJ 07920 403 USA 405 Email: sdas@vencorelabs.com 407 An Nguyen 408 Office of Emergency Communication/DHS 409 245 Murray Lane, Building 410 410 Washington, DC 20528 411 USA 413 Email: an.p.nguyen@HQ.DHS.GOV