A3 Credential validation
- Area
- A — Getting started
- Audience
- operator
- Kind
- feature
- Status
- accepted
- Maturity
- shipped
- Shipped in
- 0.13.0
- Labels
- security, verification
- Requires
- G4
The feature in the specification · Read at
Requirements
No credential MAY be persisted before a validation attempt has completed.
- locked by
- 0.2.0 met
- recorded done
- lemonfibercrates/lemonfiber-core/src/doctor/credentials.rscrates/lemonfiber-core/src/servarr.rscrates/lemonfiber-ports/src/http.rscrates/lemonfiber-adapters/src/http.rscrates/lemonfiber-core/src/validate.rscrates/lemonfiber-ports/src/nntp.rs
- cited by
- lemonfiber@9677c8b495
Validation MUST test against the live service, not merely check format.
- locked by
- 0.2.0 met
- recorded done
- lemonfibercrates/lemonfiber-core/src/doctor/credentials.rscrates/lemonfiber-core/src/servarr.rscrates/lemonfiber-ports/src/http.rscrates/lemonfiber-adapters/src/http.rscrates/lemonfiber-core/src/validate.rscrates/lemonfiber-ports/src/nntp.rs
- cited by
- lemonfiber@370a2de8c2lemonfiber@de5b6b6c54lemonfiber@d7d00212belemonfiber@9677c8b495lemonfiber@361dc9d1eflemonfiber@771efea3c7
Validation results MUST report an observed capability, not only pass/fail.
- locked by
- 0.2.0 met
- recorded done
- lemonfibercrates/lemonfiber-core/src/doctor/credentials.rscrates/lemonfiber-core/src/servarr.rscrates/lemonfiber-ports/src/http.rscrates/lemonfiber-adapters/src/http.rscrates/lemonfiber-core/src/validate.rscrates/lemonfiber-ports/src/nntp.rs
- cited by
- lemonfiber@370a2de8c2lemonfiber@de5b6b6c54lemonfiber@d7d00212belemonfiber@9677c8b495lemonfiber@361dc9d1eflemonfiber@990e67673flemonfiber@771efea3c7
rejected, unreachable, and degraded MUST be distinguished, each with its own remedy.
- locked by
- 0.2.0 met
- recorded done
- lemonfibercrates/lemonfiber-core/src/doctor/credentials.rscrates/lemonfiber-core/src/servarr.rscrates/lemonfiber-ports/src/http.rscrates/lemonfiber-adapters/src/http.rscrates/lemonfiber-core/src/validate.rscrates/lemonfiber-ports/src/nntp.rs
- cited by
- lemonfiber@370a2de8c2lemonfiber@de5b6b6c54lemonfiber@d7d00212belemonfiber@9677c8b495lemonfiber@361dc9d1eflemonfiber@771efea3c7lemonfiber@e43bf9033alemonfiber@a7e76809aa
Leading and trailing whitespace MUST be trimmed from pasted credentials without error.
Credentials MUST NOT appear in any log, error message, screen output, or support bundle.
- locked by
- 0.13.0 met
- recorded done
- lemonfibercrates/lemonfiber-core/src/validate.rs
- cited by
- lemonfiber@48816dcbb9
Validation MUST time out within a bounded period and report the elapsed time.
Where the provider supports port forwarding, VPN validation MUST verify a port was granted, and on failure MUST name that provider's known trap first.
VPN validation MUST report the observed exit country.
Validation MUST be re-runnable on demand and MUST participate in C1 diagnostics.
- locked by
- 0.2.0 met
- recorded done
- lemonfibercrates/lemonfiber-core/src/doctor/credentials.rscrates/lemonfiber-core/src/servarr.rscrates/lemonfiber-ports/src/http.rscrates/lemonfiber-adapters/src/http.rscrates/lemonfiber-core/src/validate.rscrates/lemonfiber-ports/src/nntp.rs
- cited by
- lemonfiber@6eaf665fc0lemonfiber@771efea3c7
Total loss of network connectivity MUST be reported once, not once per credential.
- locked by
- 0.13.0 met
- recorded done
- lemonfibercrates/lemonfiber-core/src/validate.rs
- cited by
- lemonfiber@6c7596510flemonfiber@48816dcbb9
TLS verification MUST NOT be skipped without explicit per-host opt-in.
- locked by
- 0.13.0 met
- recorded done
- lemonfibercrates/lemonfiber-core/src/validate/reading.rs
- cited by
- lemonfiber@6c7596510flemonfiber@48816dcbb9
Proceeding with an unvalidated credential MUST be possible, MUST require confirmation, and MUST be recorded.
- locked by
- 0.13.0 met
- recorded done
- lemonfibercrates/lemonfiber-core/src/app/setup/proving.rs
- cited by
- lemonfiber@48816dcbb9
Port-forwarding validation MUST be skipped for providers that do not support it, and its absence MUST NOT be reported as a validation failure.
Where lemonfiber has no provider-specific knowledge, validation MUST report the generic failure and MUST NOT speculate about the cause.