Skip to content

Add EST support - #2762

Draft
hslatman wants to merge 10 commits into
masterfrom
est
Draft

Add EST support#2762
hslatman wants to merge 10 commits into
masterfrom
est

Conversation

@hslatman

Copy link
Copy Markdown
Member

No description provided.

jbpin and others added 10 commits August 12, 2026 11:49
Implementation of [RFC 7030] (https://datatracker.ietf.org/doc/html/rfc7030).
Support TLS client certificate authentication and basic auth.   Support webhook for authentication, notification and data.
Not covered :
* full CMC
* server-side key generation
need for db migration and authority startup

use replace in go.mod to use a linkedca version compatible (need for the build)
This removes some functionality that is not used with EST, simplifying
the configuration and validation of the authority and EST provisioner.

It stubs out some parts too, so that the code compiles again, albeit
with a non-complete EST implementation.
The EST RFC describes that EST is always served on a well known path:

  `https://host:port/.well-known/est`

It also supports paths that contain a label, supporting multiple
authorities:

  `https://host:port/.well-known/some-label/est`

Clients may be forming the URL to use based on just the base host
URL, and may or may not support using a label. We'll thus have to
keep that into account when serving EST.

The fact that the label comes after `.well-known` is not great, as
the label is then not namespaced. Anything else that we may want to
serve there could now be pointing to an EST provisioner too.

We currently don't know if EST clients support `/.well-known` to not
sit at the root, or whether they support suffix path parts and/or
query parameters. For now this is the conservative choice.
@github-actions github-actions Bot added the needs triage Waiting for discussion / prioritization by team label Aug 13, 2026
@hslatman hslatman mentioned this pull request Aug 13, 2026
if !s.authMethodsConfigured() {
s.DummyBool = &enable
}
if s.DummyBool == nil && (s.DummyString != "" || s.DummyString != "") { // TODO(hs): refactor
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

needs triage Waiting for discussion / prioritization by team

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants