Perché un operatore del sito web deve fidarsi di un fornitore openid?

8

Sto lavorando su un sito web e sto pensando di utilizzare OpenID per l'autenticazione. Il sito avrà alcuni servizi premium a basso costo ($ 3- $ 5), ma non proteggerà i dati degli utenti particolarmente sensibili, ma solo lo stato di gioco salvato. Dal mio punto di vista, la mia principale preoccupazione per l'autenticazione è che la persona che ha pagato per tali servizi è la stessa persona che utilizza tali servizi. Non mi interessa verificare che l'utente appartenga a un particolare indirizzo email o altra identità pubblica.

Quali rischi mi apro se autorizzo l'utilizzo di johndoeblog.com/openid rispetto a un fornitore noto come Google? Forse l'utente si fida del proprio server privato più di Google? Perché dovrei costringerlo a fidarsi degli stessi provider di autenticazione di cui mi fido?

L'unico fattore che posso vedere è che l'utente condivide volontariamente le proprie credenziali o viene compromesso, consentendo così a più persone di accedere ai servizi premium, ma questo è un problema che devo mitigare a prescindere dal provider di autenticazione che utilizzo. Cosa mi manca qui?

    
posta Karl Bielefeldt 15.04.2014 - 20:15
fonte

1 risposta

6

Fondamentalmente, non è necessario fidarsi di un provider OpenID: l'utente fa.

Confrontiamo, dal punto di vista rigoroso dell'autenticazione, le password con OpenID.

  • Password: Utente: "hey, server, sono io! Sai che sono io perché nessun altro conosce la parola magica correcthorsebatterystaple , che ti ho detto quando ho creato l'account. "
  • OpenID: Utente: "hey, server, sono io! Sai che sono io perché johndoeblog.com/openid dice che sono io e ti ho detto di fidarti di johndoeblog.com/openid quando dice che sono io quando ho creato l'account. "

In entrambi i casi, come server, ci si basa sulla disponibilità e sulla capacità dell'utente di scegliere un metodo di autenticazione affidabile. Con le password, l'utente deve scegliere una password che nessun altro conosce. Con OpenID, l'utente deve scegliere un endpoint OpenID che nessun altro può utilizzare.

Ai fini dell'autenticazione, non c'è motivo, come operatore di server, di preferire un provider OpenID a un altro. Si può (o non si può) preferire raccomandare provider OpenID che si sa essere affidabili, ma non è necessario affidarsi al provider OpenID in alcun modo per autenticare l'utente.

Entrambi i casi si basano equamente sulla cooperazione dell'utente per garantire che l'utente che ha pagato sia colui che utilizza il servizio. Un utente autenticato da password può condividere la sua password; un utente autenticato da OpenID può consentire l'uso del proprio endpoint OpenID.

Tutto questo perché ti interessa solo l'identità dell'utente come account # 1234 sul tuo server. Ovviamente sarebbe completamente diverso se volessi sapere che il proprietario dell'account # 1234 è conosciuto come Joe Bloggs per il governo di Syldavia: allora dovresti fidarti del fornitore OpenID per fornirti il vero nome di Joe Bloggs.

Un motivo minore per fidarsi di un provider OpenID è di scaricare il lavoro di limitare i tassi di creazione dell'account: se sai che Myriad ha misure per limitare la velocità di creazione dell'account e accetti solo account OpenID di Myriad, allora questo limita automaticamente il tasso di creazione dell'account per il tuo servizio. Questo non vale per te: dato che stai eseguendo un servizio for-pay, la limitazione della velocità di creazione dell'account è integrata.

    
risposta data 16.04.2014 - 01:51
fonte

Leggi altre domande sui tag