nodeSolidServer / nodeSolidServer/node-solid-server

Enable WebID-TLS integration tests (fix self-signed cert verification loop)

Aperta Adatta ai principianti
#1,841 2 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Lingua principale
JavaScript
Stelle
1.8k
Fork
308
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

Summary

In October 2019, WebID-TLS tests were disabled with describe.skip() (commit 778095ad). The authentication code still works - just the tests are skipped and CI lacks DNS setup.

Fix size: ~10 lines changed.

The Bug

// Added Oct 29, 2019 by jaxoncreed
describe.skip('ACL with WebID+TLS', function () {  // <-- this .skip

The comment says "TLS is currently broken" but the code isn't broken - the tests just need tim.localhost to resolve to 127.0.0.1.

The Fix

1. Remove 5x .skip from test/integration/acl-tls-test.mjs:

  • Line 67, 134, 571, 616, 946

2. Add 4 lines to CI (.github/workflows/ci.yml):

- name: Setup hosts for TLS tests
  run: |
    echo "127.0.0.1 tim.localhost" | sudo tee -a /etc/hosts
    echo "127.0.0.1 nicola.localhost" | sudo tee -a /etc/hosts

Done.

Verification

The code works today:

  • Server starts with --auth tls
  • Responds to requests ✅
  • Test certificates match test profiles ✅
  • cert:modulus in profile matches cert ✅

Why It Matters

  • README still advertises --auth tls support
  • Solid spec requires OIDC, doesn't forbid TLS
  • Server-to-server, CLI, IoT use cases need non-browser auth
  • W3C LWS working group discussing enterprise mTLS needs (LWS-UCS #40)

References

  • Commit that introduced skip: 778095ad (Oct 29, 2019)
  • PR where TimBL approved TLS+OIDC coexistence: #650

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Inizia da test/integration/acl-tls-test.mjs ed esamina le cinque posizioni di describe.skip alle righe 67, 134, 571, 616 e 946. Poi leggi .github/workflows/ci.yml e verifica come CI configura gli host. Il lavoro è completato quando i test di integrazione WebID-TLS vengono eseguiti in CI con tim.localhost e nicola.localhost che risolvono in 127.0.0.1.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
github-actions, javascript
Ambito
ci-cd, testing
Tipo di issue
Bug
Difficoltà
2/5
Tempo stimato
1-3 ore
Stato di attività
Ferma
Chiarezza
Specificata chiaramente
Idoneità per principianti
65/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.