Il browser non richiede il certificato client quando è distribuito sulla porta 443

-1

Mi sono imbattuto in una situazione molto strana.

Sto sviluppando un'applicazione web che richiede l'autenticazione del certificato client.

Ogni volta che distribuisco l'applicazione sulla porta HTTPS predefinita 443 il browser non mi richiede un certificato client, l'applicazione web non vede alcun certificato fornito e quindi contrassegna la richiesta come non autorizzata.

Verificato che funzioni come previsto

Nelle seguenti situazioni il browser richiede di allegare un certificato client e l'autenticazione funziona come previsto.

  • Distribuito al link
    • Computer locale con un certificato SSL autofirmato che è stato affidato manualmente.
  • Distribuito al link

Anche lo scenario sopra descritto ha funzionato come previsto se lancio l'applicazione web con il comando sudo per escludere che causi il problema nello scenario sottostante.

Situazioni in cui non funziona

  • Distribuito al link
  • Distribuito al link

Verificato quanto segue

  • Tutto è intatto al 100% in termini di configurazione, l'unica modifica che applico è la modifica del numero di porta da 8443 a 443.
  • Verificato su più browser, Chrome, Firefox e Safari. Il comportamento è coerente per tutti i browser e in tutti gli scenari.
  • Cancellati eventuali cache, cookie, variabili di sessione e anche ispezionato che nessuna richiesta di autorizzazione HTTP è stata inviata nella richiesta.
  • verificato che lo stesso truststore sia caricato dall'applicazione Web in tutti gli scenari.
  • Ho provato a eliminare il file ~ / Library / Cookies / HSTS.plist
  • Ho provato a eseguire l'applicazione Web sulla porta 8443 e sul front HTTPS 443 con nginx, esattamente lo stesso comportamento.

Che cosa potrebbe innescare questo comportamento e quali altri strumenti / debug posso usare per capire meglio cosa sta succedendo?

    
posta aksamit 26.10.2018 - 10:00
fonte

0 risposte

Leggi altre domande sui tag