Repository navigation
feat(probe): mTLS, enrôlement par jeton à usage unique et révocation (#1101) - #1283
Merged
Merged
Conversation
…1101) - module netcross_probe.securite : contexte SSL custom pour vérifier le SAN URI urn:netcross:probe:<probe_id> côté collecteur (PKIX-SSH §5 sans SNI), et URLLib context côté probe (PKIX-SSH §7) ; - module netcross_probe.enrolement : POST /probe/v1/enrolments avec CSR PKCS#10, jeton à usage unique, réponse probe_id + chaîne mTLS ; - routes /probe/v1/security/* : état (révoqué + validité), révocation, jetons d'enrôlement, réponse 400 (et non 422) pour payload malformé ; - docs probe-agent.md, parite-surfaces.md (69 routes), probe-api-v1.yaml appliquées (7 nouvelles), CHANGELOG.md, class diagram régénéré. Refs #1101
6 tasks
Couverture de tests (delta vs
|
| Métrique | Base (dev) |
PR | Δ |
|---|---|---|---|
| Couverture | 98.2 % | 98.2 % | -0.0 pt |
| Instructions couvertes | 32952/33400 | 33254/33706 | +302 |
| Branches couvertes | 9671/9990 | 9699/10022 | +28 |
Seuil bloquant : 95.0 % (fail_under, #246), marge 3.2 pt.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Implémente l'issue #1101 : la couche sécurité mTLS du chantier sondes (#1002) — autorité, enrôlement par jeton à usage unique, révocation.
Contenu
netcross_probe.securite: autorité de confiance (certificat auto-signé EC P-256), signature de CSR de sonde avec SAN URIurn:netcross:probe:<probe_id>, vérification de certificat client (révoquée / autorité étrangère / sans identité / expirée refusées), contextes mTLS (côté collecteur : refus sans certificat client ; côté sonde : URLLib) ;netcross_probe.enrolement: client de la sonde — POST/probe/v1/enrollmentsavec jeton à usage unique et CSR PKCS#10 (EC P-256 par défaut), réponseprobe_id+ certificat client + chaîne CA + expiration ; parcours d'échec exhaustif (426, 409, 400, URLError) ; secrets jamais journalisés ;netcross_api.probe_routes: route d'enrôlement du collecteur (la seule du contrat sans certificat client) — jetons hachés à usage unique, refus 400/401/409/426 conformes au contrat, réponse 400 (et non 422) pour payload malformé ;probe_revoked) et son certificat refusé à la poignée de main mTLS ;Reste pour #1105 (collecteur)
Les routes d'inventaire/santé et
probe://(issue #1105) brancheront ce socle sans le réécrire.Checklist qualité
ruff check/ruff format --check: OKmypy: 0 erreur (255 fichiers)audit_debug_entrees.py: 556/556audit_debug_sorties.py: 4615/4615generate_class_diagram.py: régénérémkdocs build --strict: OKRefs #1101