Hi Francisco,

Il 31/03/2022 22:19, Francisco Obispo ha scritto:

Hi Mario,

Response inline.

On 31 Mar 2022, at 13:03, Mario Loffredo wrote:

    Hi Francisco,

    appreciated but:

    1) The ssl variables in NGINX are different.

Yes, they usually are :-)

    2) Even supposing to extract CN or SAN, as it seems one should do
    in NGINX via a regular expression, it doesn't necessarily
    correspond to the registrar username to access the EPP server.

Well, whichever method is used, it is important to tie the SSL client to the |clID| otherwise an authorized client could try to login with a separate account, so it serves the purpose of a multi-factor authentication:

  * IP address whitelist
  * SSL client certificate pinning
  * clID/password combination

Is this a recommendation or is a must?

It seems to me that there is no sentence in the security consideration section of RFC5734 stating that the SSL CN MUST be equal to clID ?

Anyway the concept that client certificate may be required is already present in the security considerations of epp-over-http:

   As a further measure to enforce the security, servers MAY require
   clients to present a digital certificate.  Clients who possess and
   present a valid X.509 digital certificate, issued by a recognized
   Certification Authority (CA), could be identified and authenticated
   by a server who trusts the corresponding CA.  This certificate-based
   mechanism is supported by HTTPS and can be used with EPP over HTTP.
   The TLS protocol describes the specification of a client certificate
   in Section 7.4.6 of [RFC8446].

I can replace in that sentence the word "MAY" with "SHOULD" and add text about client being required to check server certificate.

But the real question is another.

The real question is that every HTTP-based server implementing HTTP sessions through session cookies (including the RDAP server!) starts a session as a consequence of a successful authentication.

It's unnatural to start an HTTP session after a command that doesn't provide the server with any user preference. In RDAP, the user preferences are the user claims; in EPP, they are the namespaces that should be in force until the Logout.

This should be enough just to follow a consistent designing method between two protocols that would be used at the same layer of the stack.


Best,

Mario

    3) I repeat: why should I complicate a solution to come to another
    that I consider less efficient?

Those methods described above, happen at different layers in the stack, it is not complicated, this is exactly how we operate today (at least Tucows Registry), SSL certificates are checked to ensure they belong to the clID.

IMO a new transport for EPP should at least offer the same safeguards.

    Thanks again for the example that maybe will be useful in the
    future :-)


N/P, this is very similar to how IP access works at the HTTP level using the |X-Forwarded-For| header or similar approach to signal the application information about the client.

Francisco

--
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
_______________________________________________
regext mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/regext

Reply via email to