Skip to content

Document the account endpoint and the DNS-PERSIST-01 operating model #1237

Description

@shibayan

Background

Part of #1152.

Acmebot's position on DNS-PERSIST-01 is that _validation-persist records are persistent issuance authorization managed by the operator, never written by the application. That model needs to be documented, along with its security consequences, before operators start publishing records.

Scope

docs/reference/api.md

  • Document GET /api/account, its response shape, and its authorization requirement
  • State that the first call registers an ACME account when none exists yet

docs/guide/

  • Acmebot never creates, updates, or deletes _validation-persist records
  • Where each part of the record comes from, using the values shown in the dashboard
  • The ACME account key becomes the primary sensitive asset: where Acmebot stores it, and what its compromise implies
  • Removal and rollback: deleting the record stops future issuance but does not revoke certificates that were already issued
  • Current limitation: certificate issuance through DNS-PERSIST-01 is not available yet, so DNS-01 with a configured DNS provider remains the only issuance path

Notes

The record format is not stable. draft-ietf-acme-dns-persist is in active revision and the accounturi parameter is being replaced with a client-computed hashed URI (ietf-wg-acme/draft-ietf-acme-dns-persist#64, PR ietf-wg-acme/draft-ietf-acme-dns-persist#67). Let's Encrypt has stated it will not deploy DNS-PERSIST-01 until that issue is resolved.

The documentation should therefore link to the draft for the record syntax rather than pinning the exact format, and should be explicit that Acmebot does not generate the value.

Acceptance Criteria

  • GET /api/account is documented in the API reference, including the account registration side effect
  • The operating model, ACME account key security considerations, and the removal procedure are documented
  • The docs state that Acmebot does not write _validation-persist records
  • The docs state that issuance via DNS-PERSIST-01 is not yet supported

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area: docsDocumentation site and contributor-facing documentation

    Type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions