draft-ietf-regext-rdap-redacted-05.txt   draft-ietf-regext-rdap-redacted-06.txt 
Network Working Group J.G. Gould Network Working Group J.G. Gould
Internet-Draft D.S. Smith Internet-Draft D.S. Smith
Intended status: Standards Track VeriSign, Inc. Intended status: Standards Track VeriSign, Inc.
Expires: 9 November 2022 J.K. Kolker Expires: 14 November 2022 J.K. Kolker
R.C. Carney R.C. Carney
GoDaddy Inc. GoDaddy Inc.
8 May 2022 13 May 2022
Redacted Fields in the Registration Data Access Protocol (RDAP) Response Redacted Fields in the Registration Data Access Protocol (RDAP) Response
draft-ietf-regext-rdap-redacted-05 draft-ietf-regext-rdap-redacted-06
Abstract Abstract
This document describes an RDAP extension for explicitly identifying This document describes an RDAP extension for explicitly identifying
redacted RDAP response fields, using JSONPath as the default redacted RDAP response fields, using JSONPath as the default
expression language. expression language.
Status of This Memo Status of This Memo
This Internet-Draft is submitted in full conformance with the This Internet-Draft is submitted in full conformance with the
skipping to change at page 1, line 35 skipping to change at page 1, line 35
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/. Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on 9 November 2022. This Internet-Draft will expire on 14 November 2022.
Copyright Notice Copyright Notice
Copyright (c) 2022 IETF Trust and the persons identified as the Copyright (c) 2022 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents (https://trustee.ietf.org/ Provisions Relating to IETF Documents (https://trustee.ietf.org/
license-info) in effect on the date of publication of this document. license-info) in effect on the date of publication of this document.
Please review these documents carefully, as they describe your rights Please review these documents carefully, as they describe your rights
skipping to change at page 2, line 33 skipping to change at page 2, line 33
9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 32 9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 32
10. References . . . . . . . . . . . . . . . . . . . . . . . . . 32 10. References . . . . . . . . . . . . . . . . . . . . . . . . . 32
10.1. Informative References . . . . . . . . . . . . . . . . . 32 10.1. Informative References . . . . . . . . . . . . . . . . . 32
10.2. Normative References . . . . . . . . . . . . . . . . . . 33 10.2. Normative References . . . . . . . . . . . . . . . . . . 33
Appendix A. Change History . . . . . . . . . . . . . . . . . . . 34 Appendix A. Change History . . . . . . . . . . . . . . . . . . . 34
A.1. Change from 00 to 01 . . . . . . . . . . . . . . . . . . 34 A.1. Change from 00 to 01 . . . . . . . . . . . . . . . . . . 34
A.2. Change from 01 to 02 . . . . . . . . . . . . . . . . . . 35 A.2. Change from 01 to 02 . . . . . . . . . . . . . . . . . . 35
A.3. Change from 02 to 03 . . . . . . . . . . . . . . . . . . 35 A.3. Change from 02 to 03 . . . . . . . . . . . . . . . . . . 35
A.4. Change from 03 to 04 . . . . . . . . . . . . . . . . . . 35 A.4. Change from 03 to 04 . . . . . . . . . . . . . . . . . . 35
A.5. Change from 04 to 05 . . . . . . . . . . . . . . . . . . 36 A.5. Change from 04 to 05 . . . . . . . . . . . . . . . . . . 36
A.6. Change from 05 to 06 . . . . . . . . . . . . . . . . . . 36
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 36 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 36
1. Introduction 1. Introduction
This document describes an RDAP extension for explicitly identifying This document describes an RDAP extension for explicitly identifying
redacted RDAP response fields, using JSONPath as the default redacted RDAP response fields, using JSONPath as the default
expression language. A redacted RDAP field is one that has data expression language. A redacted RDAP field is one that has data
removed from the RDAP response due to the lack of client privilege to removed from the RDAP response due to the lack of client privilege to
receive the field. This extension can be used to identify redacted receive the field. This extension can be used to identify redacted
RDAP fields in any RDAP object class, as defined in [RFC9083], or RDAP fields in any RDAP object class, as defined in [RFC9083], or
skipping to change at page 5, line 35 skipping to change at page 5, line 35
An example of the redacted "fn" jCard property using the Redaction by An example of the redacted "fn" jCard property using the Redaction by
Empty Value Method: Empty Value Method:
[ [
"fn", "fn",
{}, {},
"text", "text",
"" ""
] ]
Figure 2: Redacted "fn" jCard Property using Redaction by Empty Figure 2: Redacted "fn" jCard property using Redaction by Empty
Value Method Value Method
An example of the "redacted" member for the redacted "fn" jCard An example of the "redacted" member for the redacted "fn" jCard
property value, which is array position 3: property value, which is array position 3:
"redacted": [ "redacted": [
{ {
"name": { "name": {
"type": "Registrant Name" "type": "Registrant Name"
}, },
skipping to change at page 6, line 41 skipping to change at page 6, line 41
An example of the redacted "email" jCard property using the Redaction An example of the redacted "email" jCard property using the Redaction
by Replacement Value Method with an anonymized email: by Replacement Value Method with an anonymized email:
[ [
"email", "email",
{}, {},
"text", "text",
"anonymized123@example.com" "anonymized123@example.com"
] ]
Figure 4: Redacted "email" jCard Property using Redaction by Figure 4: Redacted "email" jCard property using Redaction by
Replacement Value Method with an anonymized email Replacement Value Method with an anonymized email
An example of the "redacted" member for the redacted registrant An example of the "redacted" member for the redacted registrant
"email" jCard property value with an anonymized "text" value. "email" jCard property value with an anonymized "text" value.
"redacted": [ "redacted": [
{ {
"name": { "name": {
"type": "Registrant Email" "type": "Registrant Email"
}, },
skipping to change at page 7, line 21 skipping to change at page 7, line 21
vcardArray[1][?(@[0]=='email')][3]", vcardArray[1][?(@[0]=='email')][3]",
"pathLang": "jsonpath", "pathLang": "jsonpath",
"method": "replacementValue", "method": "replacementValue",
} }
] ]
Figure 5: Redacted Email using Replacement Value with an Figure 5: Redacted Email using Replacement Value with an
anonymized "text" value anonymized "text" value
An example of the redacted "email" jCard property using the Redaction An example of the redacted "email" jCard property using the Redaction
by Replacement Value Method with a "related" links member to a web by Replacement Value Method with a [RFC8605] "contact-uri" jCard
form: property to a web form:
"links": [ [
{ "contact-uri",
"value": "https://email.example.com/123", {},
"rel": "related", "uri",
"href": "https://email.example.com/123", "https://email.example.com/123"
"type": "text/html" ]
}
Figure 6: Redacted "email" jCard Property using Redaction by Figure 6: Redacted "email" jCard property using Redaction by
Replacement Value Method with with an "related" links member to a Replacement Value Method with a "contact-uri" jCard property to a
web form web form
An example of the "redacted" member for the redacted registrant An example of the "redacted" member for the redacted registrant
"email" jCard property value with a "related" links member to a web "email" jCard property value with a [RFC8605] "contact-uri" jCard
form: property to a web form:
"redacted": [ "redacted": [
{ {
"name": { "name": {
"type": "Registrant Email" "type": "Registrant Email"
}, },
"path": "$.entities[?(@.roles[0]=='registrant')]. "path": "$.entities[?(@.roles[0]=='registrant')].
links[?(@[1]=='related')][2]", vcardArray[1][?(@[0]=='contact-uri')][3]",
"pathLang": "jsonpath", "pathLang": "jsonpath",
"method": "replacementValue", "method": "replacementValue",
} }
] ]
Figure 7: Redacted Email using Replacement Value a "related"
links member to a web form Figure 7: Redacted Email using Replacement Value with a "contact-
uri" jCard property to a web form
4. Redacted RDAP Response 4. Redacted RDAP Response
4.1. RDAP Conformance 4.1. RDAP Conformance
RDAP responses that contain values described in this document MUST RDAP responses that contain values described in this document MUST
indicate conformance with this specification by including an indicate conformance with this specification by including an
"rdapConformance" ([RFC9083]) value of "redacted_level_0_3". The "rdapConformance" ([RFC9083]) value of "redacted_level_0_3". The
"redacted_level_0_3" extension identifier is described in "redacted_level_0_3" extension identifier is described in
Section 6.1. Section 6.1.
skipping to change at page 33, line 13 skipping to change at page 33, line 13
10.1. Informative References 10.1. Informative References
[I-D.ietf-regext-rdap-jscontact] [I-D.ietf-regext-rdap-jscontact]
Loffredo, M. and G. Brown, "Using JSContact in Loffredo, M. and G. Brown, "Using JSContact in
Registration Data Access Protocol (RDAP) JSON Responses", Registration Data Access Protocol (RDAP) JSON Responses",
Work in Progress, Internet-Draft, draft-ietf-regext-rdap- Work in Progress, Internet-Draft, draft-ietf-regext-rdap-
jscontact-12, 2 May 2022, jscontact-12, 2 May 2022,
<https://datatracker.ietf.org/doc/html/draft-ietf-regext- <https://datatracker.ietf.org/doc/html/draft-ietf-regext-
rdap-jscontact-12>. rdap-jscontact-12>.
[RFC8605] Hollenbeck, S. and R. Carney, "vCard Format Extensions:
ICANN Extensions for the Registration Data Access Protocol
(RDAP)", RFC 8605, DOI 10.17487/RFC8605, May 2019,
<https://www.rfc-editor.org/info/rfc8605>.
10.2. Normative References 10.2. Normative References
[I-D.ietf-jsonpath-base] [I-D.ietf-jsonpath-base]
Gössner, S., Normington, G., and C. Bormann, "JSONPath: Gössner, S., Normington, G., and C. Bormann, "JSONPath:
Query expressions for JSON", Work in Progress, Internet- Query expressions for JSON", Work in Progress, Internet-
Draft, draft-ietf-jsonpath-base-05, 25 April 2022, Draft, draft-ietf-jsonpath-base-05, 25 April 2022,
<https://datatracker.ietf.org/doc/html/draft-ietf- <https://datatracker.ietf.org/doc/html/draft-ietf-
jsonpath-base-05>. jsonpath-base-05>.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
skipping to change at page 35, line 47 skipping to change at page 36, line 4
3. Added the Implementation Status section that includes the server 3. Added the Implementation Status section that includes the server
implementation by Mario Loffredo. implementation by Mario Loffredo.
4. Added use of numbered figures for easy reference for JSON Values 4. Added use of numbered figures for easy reference for JSON Values
Registry registrations. Registry registrations.
5. Updated the example unredacted and redacted lookup responses to 5. Updated the example unredacted and redacted lookup responses to
include the "objectClassName" and "handle" members. include the "objectClassName" and "handle" members.
6. Changed RFC7482 and RFC7483 references to RFC9082 and RFC9083, 6. Changed RFC7482 and RFC7483 references to RFC9082 and RFC9083,
respectively. respectively.
A.4. Change from 03 to 04 A.4. Change from 03 to 04
1. Changed the extension identifier to be "redacted" instead of a 1. Changed the extension identifier to be "redacted" instead of a
versioned value, which will be leveraged for both the versioned value, which will be leveraged for both the
rdapConformance value and the JSON Values. rdapConformance value and the JSON Values.
2. Changed the RDAP Conformance to be "redacted_level_0.2", which
2. Changed the RDAP Conformance to be "redaced_level_0.2", which
leveraged the extension identifier as a prefix along with leveraged the extension identifier as a prefix along with
"_level_" and a pointed version number. The version number will "_level_" and a pointed version number. The version number will
become "1.0" once the draft passes WGLC. become "1.0" once the draft passes WGLC.
3. Added the Redaction by Replacement Value Method. 3. Added the Redaction by Replacement Value Method.
A.5. Change from 04 to 05 A.5. Change from 04 to 05
1. Update the RDAP Extensions Registry entries to include the 1. Update the RDAP Extensions Registry entries to include the
identifier that is used for the RDAP conformance value and to identifier that is used for the RDAP conformance value and to
include the "redacted" prefix indentifier to use for the JSON include the "redacted" prefix indentifier to use for the JSON
response member. response member.
2. Changed the RDAP Conformance to be "redacted_level_0_3", which is 2. Changed the RDAP Conformance to be "redacted_level_0_3", which is
registered in the RDAP Extensions Registry. The RDAP Conformance registered in the RDAP Extensions Registry. The RDAP Conformance
value will become "redacted_level_1" once the draft passes WGLC. value will become "redacted_level_1" once the draft passes WGLC.
A.6. Change from 05 to 06
1. Fixed a couple nits.
2. Updated the Redaction by Replacement Value Method email web form
examples to use the "contact-uri" jCard property of RFC 8605.
Authors' Addresses Authors' Addresses
James Gould James Gould
VeriSign, Inc. VeriSign, Inc.
12061 Bluemont Way 12061 Bluemont Way
Reston, VA 20190 Reston, VA 20190
United States of America United States of America
Email: jgould@verisign.com Email: jgould@verisign.com
URI: http://www.verisigninc.com URI: http://www.verisigninc.com
 End of changes. 17 change blocks. 
25 lines changed or deleted 35 lines changed or added

This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/