Come abbiamo discusso nei commenti qui sotto, questo è ciò che Facebook fa per la loro pagina di registrazione, anche se ci sono alcune vulnerabilità a questo metodo. Sebbene non appaia sicuro per l'utente (nessuna icona di blocco), la richiesta effettiva viene eseguita tramite HTTPS. Se hai controllato l'intera pagina di ricezione, non ci sarebbe nulla di meno sicuro nel fare una richiesta JSONP su GET. Tuttavia, un attacco man-in-the-middle potrebbe modificare la pagina di ricezione in fase di caricamento e far sì che le credenziali restituite vengano inviate a un utente malintenzionato.
Tra i lati positivi, però, nessuno che stia solo fiutando i pacchetti sarà in grado di ottenere le credenziali: un attacco dovrebbe essere abbastanza mirato.
Per quanto riguarda i cookie, tecnicamente, JSONP potrebbe "restituire" i cookie; dovresti solo restituire le coppie nome-valore dei cookie che volevi impostare e avere una funzione nella pagina di ricezione impostandole.
Tuttavia, a meno che il browser non consideri <script>
s in modo diverso, potrebbe essere possibile impostare un cookie in modo normale utilizzando le intestazioni di risposta della risposta JSONP.
Sì, togliere 'HTTP' dall'equazione. Se esegui una richiesta 'GET' con origine all'interno di' HTTP', è un testo in chiaro. Altrimenti, metti un re-direct sul server per forzare 'HTTP' a' HTTPS' nella pagina di login. – Anders