Hi all,
What if … there’s no need for a standard for this? Or at least, the
standard would require no significant changes to the protocol?
The application that I help manage integrates alternately with Sectigo
and with Let’s Encrypt. Sectigo, when they verify domain control, always checks
parent domains along with the domain(s) given in the certificate order. If any
of those checks succeeds, the authz is valid. Perhaps the standard could be
defined merely in those terms, such that CAs who so choose could simply
indicate in the authz objects that parent/ancestor domains suffice for the
verification?
This would also allow CAs to mandate that such liberty apply only to
DNS-based authz, while still requiring HTTP-based authz to be against the
literal identifier.
A bit of context: our application runs on shared-hosting servers that
we don’t administer, subject to firewall rules that neither we nor the admin
may control. The admins run the gamut of competence, from highly-skilled on
down. The domains are end-user-controlled, not necessarily registered with the
same organization that administers the server. We’ve seen all kinds of crazy
setups that complicate SSL issuance, as a result of which our
certificate-provision logic attempts to accommodate potential
misconfigurations. Sectigo’s acceptance of ancestor domains for authz helps
toward that end since all we have to do to capitalize on it is to create the
relevant HTTP docroot files or DNS records all at once, then send the order.
Some oddity might frustrate direct authz against “www.whatever.bobs-store.com”,
but as long as “bobs-store.com” works, we can still secure the subdomain.
An alternate implementation might be for authz objects to include
challenges against whatever ancestor domains and methods the server allows;
thus, if I do newAuthz against “foo.bar.example.com”, I might get back:
- http-01, foo.bar.example.com
- tls-alpn-01, foo.bar.example.com
- dns-01, foo.bar.example.com
- dns-01, bar.example.com
- dns-01, example.com
The disadvantage to that, for us, would be that we’d have to recreate
the authz for every failure. I assume that that’s also disadvantageous for the
ACME server--more so than simply doing “fallback” authz checks against parent
domains.
That aside, as to Owen’s proposal document:
- How is the client to indicate that they want to authz the parent domain
(example.com) rather than the literal identifier (sub0.example.com)? And for
foo.bar.example.com, how shall the client indicate which parent domain is to be
used for authz?
Thank you!
cheers,
-Felipe Gasper
> On Sep 2, 2020, at 5:41 AM, Owen Friel (ofriel)
> <[email protected]> wrote:
>
> Thanks Russ. I've addressed all these in github at:
> https://github.com/upros/acme-subdomains/blob/master/draft-friel-acme-subdomains.md.
> I have not pushed out draft-03 yet, lets see what Jacob and Felipe have to
> say on the related thread about challenge options, and I will incorporate
> then.
>
>
> -----Original Message-----
> From: Acme <[email protected]> On Behalf Of Russ Housley
> Sent: 05 August 2020 06:44
> To: IETF ACME <[email protected]>
> Subject: [Acme] Review of draft-friel-acme-subdomains-02
>
> Document: draft-friel-acme-subdomains-02
> Reviewer: Russ Housley
> Date: 2020-08-04
>
> Major Concern:
>
> The TODO markers regarding wildcard domain names, the 200 response code, and
> the security considerations should be filled in with strawman text before
> this I-D is adopted by the ACME WG.
>
>
> Minor Concerns:
>
> General: s/certificate authority/certification authority/ (many)
>
> Abstract: s/certificate authority policy/certificate policy/
>
> Introduction: s/X.509 (PKIX)/X.509v3 (PKIX) [RFC5280]/
>
> Terminology: Correct CA, please. See above.
>
> Terminology: Please add a definition of subdomain.
>
>
> Nits:
>
> Section 3: says:
>
> 3. client sends POST-as-GET requests to retrieve the
> "authorizations", with the downloaded "authorization" object(s)
> containing the "identifier" that the client must prove control of
>
> s/client must prove control of/client must prove that they control/
>
> There is something wrong with the table formatting in Section 6.2.
>
> _______________________________________________
> Acme mailing list
> [email protected]
> https://www.ietf.org/mailman/listinfo/acme
>
> _______________________________________________
> Acme mailing list
> [email protected]
> https://www.ietf.org/mailman/listinfo/acme
_______________________________________________
Acme mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/acme