Ho un endpoint dell'API HTTP sul mio server che è crittografato (TLS). Non è un'API pubblica; gli utenti devono accedere e convalidare il proprio account / identità per accedere all'API.
Quando mi collego con il mio client di test (utilizzando una coppia di tastiere appena generata ogni volta), ottengo questa risposta:
{[] [] [Domain Control Validated COMODO SSL Wildcard] [] [] [] [] *.blah.com [{Domain Control Validated} {COMODO SSL Wildcard} {*.blah.com}]}
2015/05/26 10:53:34 client: handshake: true
2015/05/26 10:53:34 client: mutual: true
Tutto sembra a posto.
Ora, ogni utente della mia API deve avere una coppia di chiavi pubblica / privata mantenuta lato client da utilizzare per connettersi all'API per conformarsi al protocollo TLS. Questo è tutto buono e bene come lo capisco.
Gli utenti invieranno dati sensibili e file attraverso il cavo per essere archiviati sul mio server.
Il mio prossimo passo è quello di autenticare gli utenti e assicurare che i loro dati siano al sicuro durante il trasporto. Quale dovrei usare?
- Autenticazione di base HTTP
- OAuth
- OAuth2
Ho letto il link ma si tratta principalmente di proteggere un'API pubblica dagli attacchi. La parte relativa alla protezione dei dati è di per sé una nota a piè di pagina.