Network Working Group J. Gould Internet-Draft VeriSign, Inc. Intended status: Standards Track October 10, 2016 Expires: April 13, 2017 Extensible Provisioning Protocol (EPP) and Registration Data Access Protocol (RDAP) Status Mapping draft-ietf-regext-epp-rdap-status-mapping-02 Abstract This document describes the mapping of the Extensible Provisioning Protocol (EPP) statuses with the statuses registered for use in the Registration Data Access Protocol (RDAP). This document identifies gaps in the mapping, and registers RDAP statuses to fill the gaps to ensure that all of the EPP RFC statuses are supported in RDAP. Status of This Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at http://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." This Internet-Draft will expire on April 13, 2017. Copyright Notice Copyright (c) 2016 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of Gould Expires April 13, 2017 [Page 1] Internet-Draft epp-rdap-status-mapping October 2016 the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1.1. Conventions Used in This Document . . . . . . . . . . . . 2 2. EPP to RDAP Status Mapping . . . . . . . . . . . . . . . . . 3 3. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 5 3.1. JSON Values Registry . . . . . . . . . . . . . . . . . . 5 4. Security Considerations . . . . . . . . . . . . . . . . . . . 9 5. Normative References . . . . . . . . . . . . . . . . . . . . 9 Appendix A. Acknowledgements . . . . . . . . . . . . . . . . . . 10 Appendix B. Change History . . . . . . . . . . . . . . . . . . . 10 B.1. Change from 00 to 01 . . . . . . . . . . . . . . . . . . 10 B.2. Change from 01 to 02 . . . . . . . . . . . . . . . . . . 10 B.3. Change from 02 to 03 . . . . . . . . . . . . . . . . . . 10 B.4. Change from 03 to REGEXT 00 . . . . . . . . . . . . . . . 10 B.5. Change from REGEXT 00 to REGEXT 01 . . . . . . . . . . . 10 B.6. Change from REGEXT 01 to REGEXT 02 . . . . . . . . . . . 11 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 11 1. Introduction This document maps the statuses defined in the Extensible Provisioning Protocol (EPP) RFCs to the list of statuses registered for use in the Registration Data Access Protocol (RDAP), in the RDAP JSON Values Registry [rdap-json-values]. The RDAP JSON Values Registry is described in section 10.2 of [RFC7483] and is available in the RDAP JSON Values Registry [rdap-json-values]. The EPP statuses used as the source of the mapping include section 2.3 of the EPP Domain Name Mapping [RFC5731], section 2.3 of the EPP Host Mapping [RFC5732], section 2.2 of the EPP Contact Mapping [RFC5733], and section 3.1 of EPP Grace Period Mapping [RFC3915]. Each EPP status MUST map to a single RDAP status to ensure that data in the Domain Name Registries (DNRs) that use EPP can be accurately presented in RDAP. 1.1. Conventions Used in This Document The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 [RFC2119]. Gould Expires April 13, 2017 [Page 2] Internet-Draft epp-rdap-status-mapping October 2016 2. EPP to RDAP Status Mapping Below is an alphabetically sorted list of EPP statuses from the EPP RFCs ([RFC5731], [RFC5732], [RFC5733], and [RFC3915]) mapped to the RDAP statuses registered in the RDAP JSON Values Registry [rdap-json-values], with the format '=' , where a blank indicates a gap in the mapping. addPeriod = autoRenewPeriod = clientDeleteProhibited = clientHold = clientRenewProhibited = clientTransferProhibited = clientUpdateProhibited = inactive = inactive linked = associated ok = active pendingCreate = pending create pendingDelete = pending delete pendingRenew = pending renew pendingRestore = pendingTransfer = pending transfer pendingUpdate = pending update redemptionPeriod = renewPeriod = serverDeleteProhibited = serverRenewProhibited = serverTransferProhibited = serverUpdateProhibited = serverHold = transferPeriod = The RDAP JSON Values Registry [rdap-json-values] does have a set of prohibited statuses including "renew prohibited", "update prohibited", "transfer prohibited", and "delete prohibited", but these statuses do not directly map to the EPP prohibited statuses. EPP provides status codes that allow distinguishing the case that an action is prohibited because of server policy from the case that an action is prohibited because of a client request. The ability to make this distinction needs to be preserved in RDAP. Each of the EPP status values that don't map directly to an RDAP status value is described below. Each EPP status value includes a proposed new RDAP status value and a description of the value. The RDAP status value is derived from the EPP status value by converting the EPP camel case representation to lower case with a space character inserted between word boundaries. Gould Expires April 13, 2017 [Page 3] Internet-Draft epp-rdap-status-mapping October 2016 addPeriod = add period; If the object is deleted by the client during this period, the server provides a credit to the client for the cost of the registration. autoRenewPeriod = auto renew period; If the object is deleted by the client during this period, the server provides a credit to the client for the cost of the auto renewal. clientDeleteProhibited = client delete prohibited; The client requested that requests to delete the object MUST be rejected. clientHold = client hold; The client requested that the DNS delegation information MUST NOT be published for the object. clientRenewProhibited = client renew prohibited; The client requested that requests to renew the object MUST be rejected. clientTransferProhibited = client transfer prohibited; The client requested that requests to transfer the object MUST be rejected. clientUpdateProhibited = client update prohibited; The client requested that requests to update the object (other than to remove this status) MUST be rejected. pendingRestore = pending restore; An object is in the process of being restored after being in the redemption period state. redemptionPeriod = redemption period; A delete has been received, but the object has not yet been purged because an opportunity exists to restore the object and abort the deletion process. renewPeriod = renew period; If the object is deleted by the client during this period, the server provides a credit to the client for the cost of the renewal. serverDeleteProhibited = server delete prohibited; The server set the status so that requests to delete the object MUST be rejected. serverRenewProhibited = server renew prohibited; The server set the status so that requests to renew the object MUST be rejected. serverTransferProhibited = server transfer prohibited; The server set the status so that requests to transfer the object MUST be rejected. serverUpdateProhibited = server update prohibited; The server set the status so that requests to update the object (other than to remove this status) MUST be rejected. serverHold = server hold; The server set the status so that DNS delegation information MUST NOT be published for the object. transferPeriod = transfer period; If the object is deleted by the client during this period, the server provides a credit to the client for the cost of the transfer. The resulting mapping after registering the new RDAP statuses is: addPeriod = add period autoRenewPeriod = auto renew period clientDeleteProhibited = client delete prohibited clientHold = client hold Gould Expires April 13, 2017 [Page 4] Internet-Draft epp-rdap-status-mapping October 2016 clientRenewProhibited = client renew prohibited clientTransferProhibited = client transfer prohibited clientUpdateProhibited = client update prohibited inactive = inactive linked = associated ok = active pendingCreate = pending create pendingDelete = pending delete pendingRenew = pending renew pendingRestore = pending restore pendingTransfer = pending transfer pendingUpdate = pending update redemptionPeriod = redemption period renewPeriod = renew period serverDeleteProhibited = server delete prohibited serverRenewProhibited = server renew prohibited serverTransferProhibited = server transfer prohibited serverUpdateProhibited = server update prohibited serverHold = server hold transferPeriod = transfer period 3. IANA Considerations 3.1. JSON Values Registry The following values should be registered by the IANA in the RDAP JSON Values Registry described in [RFC7483]: Value: add period Type: status Description: If the object is deleted by the client during this period, the server provides a credit to the client for the cost of the registration. Registrant Name: IESG Registrant Contact Information: iesg@ietf.org Value: auto renew period Type: status Description: If the object is deleted by the client during this period, the server provides a credit to the client for the cost of the auto renewal. Gould Expires April 13, 2017 [Page 5] Internet-Draft epp-rdap-status-mapping October 2016 Registrant Name: IESG Registrant Contact Information: iesg@ietf.org Value: client delete prohibited Type: status Description: The client requested that requests to delete the object MUST be rejected. Registrant Name: IESG Registrant Contact Information: iesg@ietf.org Value: client hold Type: status Description: The client requested that the DNS delegation information MUST NOT be published for the object. Registrant Name: IESG Registrant Contact Information: iesg@ietf.org Value: client renew prohibited Type: status Description: The client requested that requests to renew the object MUST be rejected. Registrant Name: IESG Registrant Contact Information: iesg@ietf.org Value: client transfer prohibited Type: status Description: The client requested that requests to transfer the object MUST be rejected. Registrant Name: IESG Registrant Contact Information: iesg@ietf.org Gould Expires April 13, 2017 [Page 6] Internet-Draft epp-rdap-status-mapping October 2016 Value: client update prohibited Type: status Description: The client requested that requests to update the object (other than to remove this status) MUST be rejected. Registrant Name: IESG Registrant Contact Information: iesg@ietf.org Value: pending restore Type: status Description: An object is in the process of being restored after being in the redemption period state. Registrant Name: IESG Registrant Contact Information: iesg@ietf.org Value: redemption period Type: status Description: A delete has been received, but the object has not yet been purged because an opportunity exists to restore the object and abort the deletion process. Registrant Name: IESG Registrant Contact Information: iesg@ietf.org Value: renew period Type: status Description: If the object is deleted by the client during this period, the server provides a credit to the client for the cost of the renewal. Registrant Name: IESG Registrant Contact Information: iesg@ietf.org Value: server delete prohibited Gould Expires April 13, 2017 [Page 7] Internet-Draft epp-rdap-status-mapping October 2016 Type: status Description: The server set the status so that requests to delete the object MUST be rejected. Registrant Name: IESG Registrant Contact Information: iesg@ietf.org Value: server renew prohibited Type: status Description: The server set the status so that requests to renew the object MUST be rejected. Registrant Name: IESG Registrant Contact Information: iesg@ietf.org Value: server transfer prohibited Type: status Description: The server set the status so that requests to transfer the object MUST be rejected. Registrant Name: IESG Registrant Contact Information: iesg@ietf.org Value: server update prohibited Type: status Description: The server set the status so that requests to update the object (other than to remove this status) MUST be rejected. Registrant Name: IESG Registrant Contact Information: iesg@ietf.org Value: server hold Type: status Description: The server set the status so that DNS delegation information MUST NOT be published for the object. Gould Expires April 13, 2017 [Page 8] Internet-Draft epp-rdap-status-mapping October 2016 Registrant Name: IESG Registrant Contact Information: iesg@ietf.org Value: transfer period Type: status Description: If the object is deleted by the client during this period, the server provides a credit to the client for the cost of the transfer. Registrant Name: IESG Registrant Contact Information: iesg@ietf.org 4. Security Considerations The status values described in this document can be subject to server-side information disclosure policies that restrict display of the values to authorized clients. Implementers may wish to review [RFC7481] for a description of the RDAP security services that can be used to implement information disclosure policies. 5. Normative References [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [RFC3915] Hollenbeck, S., "Domain Registry Grace Period Mapping for the Extensible Provisioning Protocol (EPP)", RFC 3915, September 2004. [RFC5731] Hollenbeck, S., "Extensible Provisioning Protocol (EPP) Domain Name Mapping", STD 69, RFC 5731, August 2009. [RFC5732] Hollenbeck, S., "Extensible Provisioning Protocol (EPP) Host Mapping", STD 69, RFC 5732, August 2009. [RFC5733] Hollenbeck, S., "Extensible Provisioning Protocol (EPP) Contact Mapping", STD 69, RFC 5733, August 2009. [RFC7481] Hollenbeck, S. and N. Kong, "Security Services for the Registration Data Access Protocol (RDAP)", RFC 7481, DOI 10.17487/RFC7481, March 2015, . Gould Expires April 13, 2017 [Page 9] Internet-Draft epp-rdap-status-mapping October 2016 [RFC7483] Newton, A. and S. Hollenbeck, "JSON Responses for the Registration Data Access Protocol (RDAP)", RFC 7483, March 2015. [rdap-json-values] "RDAP JSON Values Registry", . Appendix A. Acknowledgements Suggestions that have been incorporated into this document were provided by Andrew Newton, Scott Hollenbeck, Jim Galvin, Gustavo Lozano, and Robert Sparks. Appendix B. Change History B.1. Change from 00 to 01 1. Changed the mapping of "linked" to "associated" and removed the registration of "linked", based on feedback from Andrew Newton on the weirds mailing list. B.2. Change from 01 to 02 1. Ping update. B.3. Change from 02 to 03 1. Ping update. B.4. Change from 03 to REGEXT 00 1. Changed to regext working group draft by changing draft-gould- epp-rdap-status-mapping to draft-ietf-regext-epp-rdap-status- mapping. B.5. Change from REGEXT 00 to REGEXT 01 1. Updated based on regext mailing feedback from Scott Hollenbeck that included updating the registrant for the registration of the new statuses to IESG and iesg@ietf.org, and revising the security section. Changed to standards track based on suggestion by Jim Galvin and support from Gustavo Lozano on the regext mailing list. Gould Expires April 13, 2017 [Page 10] Internet-Draft epp-rdap-status-mapping October 2016 B.6. Change from REGEXT 01 to REGEXT 02 1. Updated the text associated with distinguishing client and server prohibited statuses in RDAP based on feedback by Robert Sparks on the regext mailing list. 2. Removed the "For DNR that indicates" text from the description of the statuses based on feedback by Robert Sparks on the regext mailing list. 3. Made a few editorial changes to the status descriptions including referring to "redemption period" instead of "redemptionPeriod" and referring to "object" instead of "domain name". 4. Changed all references of "registrar" to "client" and "registry" to "server" in the status descriptions to be consistent. Author's Address James Gould VeriSign, Inc. 12061 Bluemont Way Reston, VA 20190 US Email: jgould@verisign.com URI: http://www.verisigninc.com Gould Expires April 13, 2017 [Page 11]