Riautenticazione di un utente per azioni sensibili tramite OpenID

1

Normalmente, quando esegui azioni sensibili su un sito web, come cambiare la password o abilitare l'autenticazione a due fattori, devi reinserire la password, presumibilmente per proteggerti contro il dirottamento di sessione (a causa di intercettazione o di qualcuno che usa fisicamente il computer) ). Tuttavia, se un utente si è registrato usando OpenID o utilizzando un provider di autenticazione OAuth come Google o Facebook, la riautenticazione ha un uso limitato contro qualcuno che usa fisicamente il computer perché è probabile che l'utente sia collegato al suo account Google / Facebook / etc, quindi non è una password riproposta. Proteggerebbe comunque da un ID sessione rubato e utilizzato per aggiungere una password locale, ma se il sito funziona su HTTPS, questa non è una preoccupazione importante.

C'è un modo per verificare l'autenticità della richiesta, ad esempio, aggiungere una password locale a un account che in precedenza ha utilizzato solo un servizio esterno per autenticare gli accessi, o è solo un rischio che deve essere preso?

    
posta JackW 10.09.2016 - 15:40
fonte

1 risposta

2

È ragionevole pensare che un particolare utente possa avere molti privilegi diversi su un sito, alcuni di maggiore e alcuni di minore sensibilità. In terra OAuth, la danza fornisce un token all'utente e il sito contro cui è valido il token avrà definito i privilegi che il token custodisce.

Quindi il sito può decidere di includere solo i privilegi legati alla specifica richiesta che l'utente ha fatto avviare la danza OAuth, che può essere più ristretta della serie completa di diritti che lo stesso utente potrebbe avere sul sito.

Se l'utente, la cui autorizzazione è incorporata in quel token, desidera eseguire un'azione non consentita dai privilegi forniti dal token, il sito può rifiutarsi di consentire loro di eseguire l'azione e può fornire all'utente con un'altra opportunità di riaprire la danza OAuth, anche se ciò comporta che l'utente rientri le sue stesse credenziali.

Questo non è ottimo per l'usabilità, ma è permissibile.

Detto questo, la circostanza specifica citata - la modifica di una credenziale "locale" - non dovrebbe forse essere pensata come un problema da risolvere. Molteplici fonti di verità per l'autenticazione spesso non sono una buona idea.

    
risposta data 11.09.2016 - 04:05
fonte

Leggi altre domande sui tag