Hi Mark,

thanks a lot for your further review.

Please our comments embedded below prefixed with [ML].

Il 08/10/2026 06:51, Mark Nottingham via Datatracker ha scritto:
Document: draft-ietf-regext-epp-https
Title: Extensible Provisioning Protocol (EPP) Transport over HTTPS
Reviewer: Mark Nottingham
Review result: Ready with Nits

# Comments

## Consider specifying redirect handling for EPP requests

Section 4 says clients “MUST process any HTTP response according to its
status-code semantics,” but does not say whether to follow redirects or under
what conditions. RFC 9110 permits automatic redirects; depending on the status
code, a client may change POST to GET or resend the POST to the redirect
target. That can break EPP processing or expose command content and session
credentials. RFC 9205 specifically recommends that applications define redirect
handling.
[ML] Redirect never occurs in practice but we can simply state that it's not supported by this mapping.

We can then change Section 3 and Section 4 as follows:


*Section 3*

OLD

When the URL does not specify a port, the default HTTPS port 443 is used. There is no server discovery mechanism defined for EoH. The server URL for EoH is made available out-of-band by the server to the clients.

NEW

When the URL does not specify a port, the default HTTPS port 443 is used. There is no server discovery mechanism defined for EoH. The server URL for EoH is made available out-of-band by the server to the clients.

*HTTP redirection is not supported by this mapping. The EoH server URL identifies the endpoint with which the EPP connection is established and is made available to the client out-of-band. An EoH connection or session cannot be transferred to another HTTP target by means of an HTTP redirect. This preserves the property of the EPP-over-TCP mapping [RFC5734] that an EPP session is bound to a single client-server connection.*

*
*
*Section 4*

OLD

If an HTTP request cannot be delivered to or accepted for EPP processing, the EoH server or an HTTP intermediary can return any status code applicable under HTTP. Examples include malformed HTTP requests, unsupported media types, request-size limits, rate limits, overload conditions, and gateway failures. Such a response represents an HTTP-layer outcome and is not an EPP response. EoH clients MUST be prepared to receive any HTTP status code.

Clients MUST process unrecognized status codes according to the status-code class semantics defined in Section 15 of [RFC9110]. If a client does not receive a valid EPP response, it has not received an authoritative EPP command result. The client MUST process any HTTP response according to its status-code semantics. If the request might have reached the EPP processing layer but no valid EPP response is received, the outcome of the EPP command is indeterminate.

NEW

If an HTTP request cannot be delivered to or accepted for EPP processing, the EoH server or an HTTP intermediary can return any status code applicable under HTTP. Examples include malformed HTTP requests, unsupported media types, request-size limits, rate limits, overload conditions, and gateway failures. Such a response represents an HTTP-layer outcome and is not an EPP response. EoH clients MUST be prepared to receive any HTTP status code.

*An EoH server MUST NOT return a 3xx (Redirection) response to an EoH request. Although an HTTP intermediary might generate such a response, an EoH client MUST NOT follow it. The client MUST treat the response as an HTTP-layer failure and MUST abandon the EoH connection establishment attempt or drop the established EoH connection, as applicable. If the request carries an EPP command, the outcome of that command MUST be treated as indeterminate.*

Clients MUST process unrecognized status codes according to the status-code class semantics defined in Section 15 of [RFC9110]. If a client does not receive a valid EPP response, it has not received an authoritative EPP command result. The client MUST process any HTTP response according to its status-code semantics. If the request might have reached the EPP processing layer but no valid EPP response is received, the outcome of the EPP command is indeterminate.

Does it work for you ?

## Consider requiring verification of the HTTPS server identity

Section 9 requires HTTPS to protect credentials and the session identifier, but
does not explicitly require clients to verify that the certificate matches the
server URL. RFC 9110 already defines that requirement, but RFC 9205 recommends
that an application using HTTPS state it explicitly. Naming RFC 9110 4.3.4
would make clear that encryption without server authentication is insufficient.

[ML] .it EPP server uses a certificate that has been issued for the server host but I guess that a certificate issued for the host subdomain can be used too e.g. "*.nic.example" if "epp.nic.example" is the server host.
Therefore, we would add the following sentence to Section 9:

*The EoH client MUST verify the server identity against the host component of the EoH server URL in accordance with Section 4.3.4 of [RFC9110]. This verification can include wildcard matching when permitted by the applicable service identity verification rules. For example, a certificate containing the DNS-ID "*.nic.example" matches the host "epp.nic.example", but does not match "nic.example" or "test.epp.nic.example".*

Moreover, given that RFC 9110 refers to RFC 6125—which is now obsolete—it might also be appropriate to directly reference RFC 9525 for the updated matching rules as follows:

*EoH clients MUST verify the server identity as specified in Section 4.3.4 of [RFC9110], using the service identity verification procedures defined in [RFC9525].*


Does it work for you (including the reference to RFC9525) or do you recommend using a dedicated certificate for the server host ?

# Nits

* The greeting response example in section 4.1 omits X-Content-Type-Options:
nosniff, which section 3 requires.

[ML] Good catch. We'll fix it.


Best,

Mario

--
Dott. Mario Loffredo
Senior Technologist
Technological Unit “Digital Innovation”
Institute of Informatics and Telematics (IIT)
National Research Council (CNR)
Address: Via G. Moruzzi 1, I-56124 PISA, Italy
Phone: +39.0503153497
Web:http://www.iit.cnr.it/mario.loffredo
_______________________________________________
regext mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to