Research platform-native TLS trust configuration
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Anfängerfreundlichkeit
- 32/100
- Issue-Typ
- Dokumentation
- Klarheit
- Größtenteils klar
- Aktivitätsstatus
- Ruhig
- Tech-Stack
- rust
- Bereich
- cli, documentation, security
Rechercherichtung
Prüfe src/http.rs und Cargo.toml, um das aktuelle Setup der gebündelten Roots zu bestätigen, und lies anschließend die zugehörigen Issues #448, #438 und #445. Vergleiche die aufgeführten Vertrauensstrategien über die unterstützten Targets und die angegebenen Zertifikatsfälle hinweg. Als abgeschlossen gilt die Arbeit, wenn eine dokumentierte Empfehlung, eine Begründung, ein umsetzbares Fehlerverhalten sowie die nächsten Schritte für Implementierung und Tests vorliegen und die Runtime-Dokumentation aktualisiert wurde.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Context
The HTTP host currently builds its TLS connector with with_webpki_roots() in src/http.rs, while Cargo.toml enables the webpki-tokio feature. This embeds the Mozilla root set in every basic-cli application and does not use trust configured by the operating system.
Bundled roots make static applications self-contained and allow public HTTPS to work in minimal environments without a system CA bundle. However, a general-purpose CLI may need to honor:
- enterprise TLS interception and private certificate authorities;
- locally trusted development certificates;
- administrator trust and distrust policy;
- operating-system certificate updates;
- standard CA bundle overrides such as
SSL_CERT_FILEandSSL_CERT_DIR.
Research questions
Investigate and document the tradeoffs between:
- a platform verifier;
- loading native roots into rustls;
- retaining only bundled WebPKI roots;
- combining or falling back between native and bundled roots;
- exposing an application-level custom CA configuration.
The investigation should cover:
- x64 and arm64 macOS, x64 Windows, and x64 and arm64 Linux musl;
- static linking, cross-compilation, binary size, and startup/runtime cost;
- minimal containers or hosts with no usable native certificate store;
- whether fallback to bundled roots could bypass an intentional OS distrust decision;
- actionable errors when roots cannot be loaded or a certificate is rejected;
- private CA, public CA, missing-store, and invalid-store test cases.
Desired outcome
Record a recommended trust policy for basic-cli and the rationale behind it. If a change is recommended, define implementation and test follow-ups that provide predictable behavior on every supported target without requiring users to disable certificate verification.
Keep the public runtime documentation updated with the chosen behavior.
Related work
- #448 documents the current bundled-root behavior.
- #438 tracks stable HTTP transport error classification, including TLS failures.
- #445 tracks dependency advisories and rebuild expectations for statically linked applications.
- Vorherrschende Sprache
- Rust
- Sterne
- 122
- Forks
- 47
- Ø Merge
- 12 Std. 4 Min.
- Gemergte PRs (30 T.)
- 19
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Keine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus roc-lang/basic-cli
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 52/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 48/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 57/100
Maintainer antworten meist innerhalb von 1 Tag
-
Unix socket supportOffen
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 45/100
roc-lang/basic-cli#500 · 1 Kommentar · 1 Reaktion ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 25/100
roc-lang/basic-cli#482 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in roc-lang/basic-cli
Ähnliche Issues
-
proxy: include denial_category in the "proxy request denied" log lineEvtl. vergeben @sreyas-endor hat das heute übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 77/100
nolabs-ai/nono#2172 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
enhancement
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
metasequoiaime/msime#9113 ·
Maintainer antworten meist innerhalb von 1 Tag
-
area:desktop priority:p2 type:chore
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100
Maintainer antworten meist innerhalb von 1 Tag
-
area: supply-chain
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 73/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 67/100