5

Sto guardando this e this e sembrerebbe "facile" inviare le credenziali nell'URL. Per esempio:Nessun browser sta inviando informazioni di autorizzazione nell'intestazione

http://gooduser:[email protected]/webcallback?foo=bar

Questo è cosa buona e giusta, ma doesnt lavoro. Ho attivato il violinista e per Chrome non viene inviata l'intestazione Authorization. Sembra mostrare lo stesso comportamento per altri browser (ho un punto di interruzione sul server e nessuna intestazione di autorizzazione per Firefox, Safari o IE)

Come migliorarlo?

+0

Ciao, ho appena incontrato la stessa domanda. Hai già trovato una soluzione? – mreithub

+0

@mreithub no sorry :( – wal

+0

Mi ha sorpreso vedere l'intestazione dell'autorizzazione inviata per un'autorizzazione di base in chrome. – spankmaster79

risposta

2

Si è imbattuto in questo mentre cercava varie implementazioni di base per l'autenticazione.

I browser in genere inviano solo l'autenticazione di base se ricevono una risposta di verifica 401 dal server (more on basic auth protocol). Se l'endpoint in questione accetta sia utenti autenticati che non autenticati, è probabile che una richiesta basata su browser non venga mai richiesta per i parametri auth.

Il modo più semplice per testare questo tipo di configurazione è quello di inviare una richiesta di ricciolo (che invia i parametri di autenticazione a prescindere) al server endpoint e convalidare la ricezione dell'intestazione authorization:

curl 'http://gooduser:[email protected]/webcallback?foo=bar'

0

OK così dopo molte ricerche e sperimentazioni sull'approccio

http://gooduser:[email protected]/webcallback?foo=bar 

funziona. Tuttavia bisogna fare attenzione per assicurarsi che la password segreta NON contenga caratteri speciali. Usa una password contenente solo lettere e numeri e un'ipen (se devi) e dovrebbe funzionare.