Re: [regext] Comments to the feedback about epp-over-http
"Gould, James" <jgould@verisign.com> Fri, 25 March 2022 15:45 UTC
Return-Path: <jgould@verisign.com>
X-Original-To: regext@ietfa.amsl.com
Delivered-To: regext@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1])
by ietfa.amsl.com (Postfix) with ESMTP id A10943A0EFC
for <regext@ietfa.amsl.com>; Fri, 25 Mar 2022 08:45:51 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.108
X-Spam-Level:
X-Spam-Status: No, score=-2.108 tagged_above=-999 required=5
tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1,
DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001,
SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01,
URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key)
header.d=verisign.com
Received: from mail.ietf.org ([4.31.198.44])
by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024)
with ESMTP id nE7SQuXZG7TP for <regext@ietfa.amsl.com>;
Fri, 25 Mar 2022 08:45:46 -0700 (PDT)
Received: from mail1.verisign.com (mail1.verisign.com [72.13.63.30])
(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
(No client certificate requested)
by ietfa.amsl.com (Postfix) with ESMTPS id 1B7F83A0EC4
for <regext@ietf.org>; Fri, 25 Mar 2022 08:45:45 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
d=verisign.com; l=39548; q=dns/txt; s=VRSN; t=1648223146;
h=from:to:subject:date:message-id:mime-version;
bh=GjzLHuFWIHvxd4Bsq/FZDaMyhSgrEA29pqq2Weqjkj8=;
b=b2NOntFzlHHMJ9YFok3lBDhQsIC3invc9P8tzbHY8PdIH7rPbb6319og
aahiLqaAW61LEmfkAk4P0aPTNUEcqfdGob0Io/mu+felcFu3obwjy8SWw
rveXIOG0/sB4U1Unc3zcyOcQpN/Pb+vDyc0aSlz/Zvu/9TZUgUFMsh1tO
nifbmrKSAPBNbsegf8Pd22J0HETP3BT2LEOJ5ucslbeKO+SpUzg4ZSbBb
Ff4T9374HZX43mpBbSXuI1QdeyWSdAoUor6dHlRpJFnn5y1OTwQXinLkH
w/ZA3RjlSRjYMnqO/YyPha52huTRwO+1f3gEeY9gupoP80DgkbSo3FkPg A==;
IronPort-Data: A9a23:TnE7fapQNemOWTt9FRaDagUdc+1eBmI6ZBIvgKrLsJaIsI4StFGz/
9Ym7Vv2Y6LbNTf1e9hoKNPhxf41yZ+Gm9YwGwBtqyA2RC9AoMDJVY7GIkn8Zy7JIJSTHBM2s
pRAO9TJdZ5qECDXrEynYui/oHN33v3SH+OtA+WUZ3AZqWOIKcsEoUsLd7kR3tcx3bBVej+wh
O4eg/EzGXf1gzMpaTpIsPPd8E824qj+5mxAtQUyb6EStVaHnCJMAs5GdfC6IkWjT9gPFIZWZ
QpjIJJVX4/9101wYj9wuu+jKiXmelNWVOS3oiI+t5KK23CunQRvlPdjXBYgQR0P0W/RxIosk
I8lWaGYEm/FAIWdwIzxbDEFS0mSDYUekFMQCSHi2SA75xSun0rEm52CPmlvVWEr0r8f7VV1y
BAtAGtlgiZvJw6B6OnTpuFE3qzPJeG1ZN9P4ikIITvxVZ7KSribK0nGCEMxMJ7dSamiEN6HD
/f1ZwaDYzzfTQ1QMAscWKk7wvq6mlShVmQfgwm88P9fD2j7lGSd0ZDHCvyMRfqndZ0M2FiTo
XjeuW31RA8AL9rZwj2Amp6urraX23qkA8RLSeb+qq4CbF67nwT/DDUUWlympfWRlEOkWsleJ
EpS8S0rxUQ33BX3EYigBkDpyJKClh8mf/BpHM4z0wKI85uN7Ai+GDIDTzEUPbTKs+dzH1TGz
GShmtrzBDsptLqbR2iQ+rC8rDKufyMTNykDeUcsVwYK7sn/iIA+khyJScxseJNZlfX/Azep3
DaHvHBnwq4Nl4gO1r7+91eBiSiq/97XVBUzoA7QWwpJ8z9EWWJsXKTwgXCz0BqKBN/xooWp1
JTcp/Wj0Q==
IronPort-HdrOrdr: A9a23:SJcpQqvKj584HhVlW69r+Xo37skDq9V00zEX/kB9WHVpm6uj5q
WTdZUgpH3JYVkqOE3I9ervBEDiexzhHPdOiOEs1NyZLWrbUQWTTb1K3M/NzzrtACXi+uMY/r
cIScRDIey1KVRhl8717E2bH8ZI+rO62ZHtoevF1X9iQUVRdqd6425CZzqzCEFsWwVcP5Y/Ga
ed4sYvnVGdRUg=
X-IronPort-AV: E=Sophos;i="5.90,209,1643673600";
d="png'150?scan'150,208,217,150";a="14795159"
Received: from BRN1WNEX01.vcorp.ad.vrsn.com (10.173.153.48) by
BRN1WNEX01.vcorp.ad.vrsn.com (10.173.153.48) with Microsoft SMTP Server
(version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
15.1.2375.24; Fri, 25 Mar 2022 11:45:43 -0400
Received: from BRN1WNEX01.vcorp.ad.vrsn.com ([10.173.153.48]) by
BRN1WNEX01.vcorp.ad.vrsn.com ([10.173.153.48]) with mapi id 15.01.2375.024;
Fri, 25 Mar 2022 11:45:43 -0400
From: "Gould, James" <jgould@verisign.com>
To: "mario.loffredo@iit.cnr.it" <mario.loffredo@iit.cnr.it>, "regext@ietf.org"
<regext@ietf.org>
Thread-Topic: [regext] Comments to the feedback about epp-over-http
Thread-Index: AQHYQF9jX0poDL8PVEit4kUUPFFb+w==
Date: Fri, 25 Mar 2022 15:45:43 +0000
Message-ID: <7EAC16D6-392C-4A5C-AD2C-A1F18C1DECC6@verisign.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: yes
X-MS-TNEF-Correlator:
user-agent: Microsoft-MacOutlook/16.54.21101001
x-originating-ip: [10.170.148.18]
Content-Type: multipart/related;
boundary="_004_7EAC16D6392C4A5CAD2CA1F18C1DECC6verisigncom_";
type="multipart/alternative"
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/regext/zR1pwJiYnSZpHrHoLaf2Jx8g36I>
Subject: Re: [regext] Comments to the feedback about epp-over-http
X-BeenThere: regext@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Registration Protocols Extensions <regext.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/regext>,
<mailto:regext-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/regext/>
List-Post: <mailto:regext@ietf.org>
List-Help: <mailto:regext-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/regext>,
<mailto:regext-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 25 Mar 2022 15:45:52 -0000
Mario, For #4 “Cookie vs. HTTP Connection”, you asked the question “can you further clarify why we should opt for establishing the cookie at setup of the connection and how should it be possible? For example, what kind of request should be used to start the HTTP connection?”. I implemented pluggable transports in the Verisign EPP SDK, which included HTTP, HTTPS, TCP, and TLS. The Verisign EPP SDK does include a client interface as well as a server stub implementation, so I was able to see the transports from both sides. Support for HTTP and HTTPS was removed once we stopped supporting EPP over HTTP. The cookie is setup at the time of the HTTP or HTTPS connection. There is no “request” that is used to start the HTTP connection, just like the case for TCP and TLS. A network connection is made, which includes the underlying TLS handshake in the case of HTTPS and TLS and the cookie is setup for HTTP and HTTPS, and then the EPP application protocol rides on top of it. If there is a HTTP transport for EPP, then it should be purely a transport and not intermingle with the application protocol. There is no need to directly tie a HTTP session with the established EPP session. By keeping them separate, it makes it much easier for the client and the server to have pluggable transports, where the processing of the EPP commands including the hello, login, and logout treat the transport as simply a connection with no intermingling of session management. -- JG [cid:image001.png@01D8403D.DACF48B0] James Gould Fellow Engineer jgould@Verisign.com<applewebdata://13890C55-AAE8-4BF3-A6CE-B4BA42740803/jgould@Verisign.com> 703-948-3271 12061 Bluemont Way Reston, VA 20190 Verisign.com<http://verisigninc.com/> From: regext <regext-bounces@ietf.org> on behalf of Mario Loffredo <mario.loffredo@iit.cnr.it> Date: Friday, March 25, 2022 at 11:01 AM To: "regext@ietf.org" <regext@ietf.org> Subject: [EXTERNAL] [regext] Comments to the feedback about epp-over-http Hi folks, here are in the following some comments grouped by subject to last meeting's feedback about EPP-over-HTTP: 1) Draft title Ulrich suggested to call the document EPP-over-HTTPS. I replied that the name was assigned to be consistent with RFC5734, i.e. EPP-over-TCP. SImilarly to RFC5734, the draft states, first in the abstract and then in the security considerations, that TLS is required. That being said, the authors don't object to renaming the dcocument EPP-over-HTTPS if the WG agrees. 2) Cookies Jim (Reed) asked why cookies should be used in this case. The reasons why we have used session cookiea are that they represent a standard method (RFC6265), well known to the community of REST service implementers, largely used and natively supported by libraries and frameworks on both client and server side. For example, it is the same method used by rdap-openid to map an RDAP session and tie it to an access token :-) .it and .pl have been using this method since the beginning and the registrars, after being informed that they had to enable cookies in their HTTP clients, have no longer complained about cookie management. In addition, the implementation of such a method doesn't introduce any change to the EPP core spec. Indeed, it preserves EPP comands semantics and doesn't mix the application layer with the transport layer. I would like to say that, regarding the clear distinction between those layers, this proposal is even better than RFC5734 as every EPP response is returned by the server as a consequence of receiving an EPP request. On the contrary, in RFC5734, an EPP <greeting> is returned to the client after the TCP connection has been established so, at least in this case, the two layers get mixed. Which method other than session cookie shoud be used instead ? 3) Security Considerations Ulirch recommended to review the security considerations by inheriting those from TLS WG about which versions and ciphers of TLS to use. Thanks a lot for the heads up, Ulrich. Surely, we'll do. Gavin noted that, unlike EPP-over-TCP, this draft states that client IP address check is optional. As a matter of fact, it is stated as recommended. Anyway, the authors don't object to changing it into an absolute rquirement if the WG agrees. 4) Cookie vs. HTTP Connection One comment from James in the chat is about establishing the cookie at setup of the connection and not linking it to the EPP Login command. James, can you further clarify why we should opt for establishing the cookie at setup of the connection and how shoudl it be possible? For example, what kind of request should be used to start the HTTP connection? IMO, an HTTP session is something that is inherently unlinked to the HTTP connections. HTTP connections can be broken but sessions don't get lost. Programmatically, REST implementers are in charge of processing HTTP requests and building responses rather than managing HTTP connections, which is instead delegated to the application servers. Finally, I would like to outline that Section 2.9.1 of RFC5730 states that an EPP session starts with a Login command and the mechanism described by RFC6265 lets (I'm quoting here) "the servers maintain a stateful session over the mostly stateless HTTP protocol". As a consequence, it seems much more practical to start the EPP/HTTP session as a result of a Login command. 5) EPP/HTTP Sessions vs. HTTP3 Connections Ulrich remarked that, in HTTP3, it is possible to have multiple sessions on an HTTP connection. This is valid also for the other HTTP versions. In fact, an HTTP connection can be kept alive and, over it, a client could submit multiple login-commands-logout sequences. This is quite usual for a smart client managing a pool of HTTP connections. Instead, It is unlikely but not impossible to come across HTTP connections supporting multiple concurrent sessions. What should be the possible drawbacks for a server in allowing the scenarios above? 6) Client authentication in HTTP3 Another note pointed out that HTTP3 client authentication requirements are different from this draft and they need to be reconciled. Think that it could be sufficient to add to the security considerations some text similar to what is included in section 4.4 "Peer authentication" of RFC 9001 "Using TLS to secure QUIC": A client MUST authenticate the identity of the server. This typically involves verification that the identity of the server is included in a certificate and that the certificate is issued by a trusted entity (see for example [RFC2818<https://secure-web.cisco.com/1tkPqD6aAMfTp6t6KppHDGdn0xpgOWSMeCqwZR-hs9Duph9SiceA0vCbaJJVqywNzcZscc6vUZkCPH9lCdtXq_nVJ3OfnNMz-XTQvhBuSBLsXa0VfO5ZNrGo47fSin8GRaQOWRSvSQP_7vRecBdddhF6L0Yqx3KcxAGpvdxpFCsPhLcd5bm-aVy3vTko6TfGBlohe2XEw3bwUmH-u56ZuZz50CUXUqA3YDFgBENAwPrLBjwdDxwgG1JFVGPZF_LEQ/https%3A%2F%2Fdatatracker.ietf.org%2Fdoc%2Fhtml%2Frfc2818>])>]). The draft has only considered the optional use of a certificate on server side (not on client side). In doing that, the draft is consistent with another sentence in the same paragraph of RFC9001: A server MAY request that the client authenticate during the handshake. A server MAY refuse a connection if the client is unable to authenticate when requested. Would it address the feedback? That's all for now. Hope I did not miss anything. Thanks a lot for your interest and feedback. Looking forward to your further comments. Best, Mario -- Dr. Mario Loffredo Technological Unit “Digital Innovation” Institute of Informatics and Telematics (IIT) National Research Council (CNR) via G. Moruzzi 1, I-56124 PISA, Italy Phone: +39.0503153497 Web: http://www.iit.cnr.it/mario.loffredo<http://secure-web.cisco.com/1Af0lIvD4wj2TkngfEVwrFVEVRozLiVIU2m1Gi1AH1GN4-eWP-IREXsOLCh8OJ03YAxRNYqVCPHQSwgj-tMCyzvN3jokOBTIBx4-5n1pJdiRXxl-ShJCaHkCjGNPa8EA5qw4kPjkxIrFAy1qOTcPFhieqdc_xyu8yisYoXzily9ozVw3GZaUtkKrLnmnDJhlFv2LRTCTnw913LzH8bX-hB6FpPlyFi_0v2_H1NFCgZYjuu4pgUeOeIqQJRQwtzNLS/http%3A%2F%2Fwww.iit.cnr.it%2Fmario.loffredo>
- [regext] Comments to the feedback about epp-over-… Mario Loffredo
- Re: [regext] Comments to the feedback about epp-o… Gould, James
- Re: [regext] Comments to the feedback about epp-o… Mario Loffredo
- Re: [regext] Comments to the feedback about epp-o… Matthias Pfeifer
- Re: [regext] Comments to the feedback about epp-o… Mario Loffredo
- Re: [regext] Comments to the feedback about epp-o… Gould, James
- Re: [regext] Comments to the feedback about epp-o… Thomas Corte (TANGO support)
- Re: [regext] Comments to the feedback about epp-o… Mario Loffredo
- Re: [regext] Comments to the feedback about epp-o… Mario Loffredo
- Re: [regext] Comments to the feedback about epp-o… Thomas Corte (TANGO support)
- Re: [regext] Comments to the feedback about epp-o… Gould, James
- [regext] Fwd: Comments to the feedback about epp-… Matthias Pfeifer
- [regext] Fwd: Comments to the feedback about epp-… Mario Loffredo
- Re: [regext] Comments to the feedback about epp-o… Alexander Mayrhofer
- Re: [regext] Comments to the feedback about epp-o… Mario Loffredo
- Re: [regext] Comments to the feedback about epp-o… Gould, James
- Re: [regext] Comments to the feedback about epp-o… Mario Loffredo
- Re: [regext] Comments to the feedback about epp-o… Gould, James
- Re: [regext] Comments to the feedback about epp-o… Mario Loffredo
- Re: [regext] Comments to the feedback about epp-o… Thomas Corte (TANGO support)
- Re: [regext] Comments to the feedback about epp-o… Gould, James
- Re: [regext] Comments to the feedback about epp-o… Mario Loffredo
- Re: [regext] Comments to the feedback about epp-o… Patrick Mevzek
- Re: [regext] Comments to the feedback about epp-o… Mario Loffredo
- Re: [regext] Comments to the feedback about epp-o… Thomas Corte (TANGO support)
- Re: [regext] Comments to the feedback about epp-o… Francisco Obispo
- Re: [regext] Comments to the feedback about epp-o… Mario Loffredo
- Re: [regext] Comments to the feedback about epp-o… Hollenbeck, Scott
- Re: [regext] Comments to the feedback about epp-o… Mario Loffredo
- Re: [regext] Comments to the feedback about epp-o… Francisco Obispo
- Re: [regext] Comments to the feedback about epp-o… Mario Loffredo
- Re: [regext] Comments to the feedback about epp-o… Hollenbeck, Scott
- Re: [regext] Comments to the feedback about epp-o… Francisco Obispo
- Re: [regext] Comments to the feedback about epp-o… Mario Loffredo
- Re: [regext] Comments to the feedback about epp-o… Thomas Corte (TANGO support)