API CLI che richiede dettagli utente in testo normale

7

Mi è stato assegnato il compito di scrivere un modulo per la mia azienda per l'interfaccia con un'API esterna. Questa API ha una sintassi simile a SSH in cui devo incorporare i dettagli dell'utente e l'indirizzo host del server a cui sto cercando di connettermi.

Tuttavia, mi imbatto nel problema di sicurezza che per passare i dettagli dell'utente, ho bisogno di averli in chiaro. Ancora peggio è il fatto che questi dettagli utente sono in realtà i dettagli dell'utente per la macchina su cui è in esecuzione il server. Esiste un modo intelligente per eseguire questa operazione senza andare fuori bordo e utilizzando un server di accesso esterno? So che ci sono state discussioni simili in cui è stata raggiunta la conclusione "Do not do it", ma in questo caso non ho alcun controllo sul modo in cui funziona l'API.

    
posta Max Basescu 22.07.2014 - 16:42
fonte

3 risposte

0

Se non puoi modificare l'API, devi archiviare la password o chiederla all'utente ogni volta che devi effettuare una chiamata API.

Supponendo che chiedere non è pratico, memorizzare la password crittografata. No, non fermerà un attaccante serio, ma è meglio di niente: la memorizzazione della password in testo non fermerà nemmeno uno script kiddie.

    
risposta data 17.12.2014 - 08:55
fonte
0

È un comune problema e l'utilizzo di un server di accesso esterno sposta semplicemente il problema altrove.

Una soluzione (piuttosto elaborata) consiste nel crittografare la password utilizzando una chiave pubblica per ogni utente autenticato e utilizzando la protezione tramite password sulla chiave privata dell'utente, memorizzata sulla macchina, in cui la password fornita dall'utente può anche autenticare l'accesso al macchina che funge da client o inviata attraverso il cavo dalla memoria sulla macchina client (ma comunque protetta dalla password immessa manualmente). Questo almeno rimuove il testo in chiaro dalla memoria.

Sicuramente vuoi assicurarti che ci sia un firewall restrittivo tra il computer client e qualsiasi utente.

    
risposta data 12.01.2016 - 00:43
fonte
-1

Bene, quindi potresti fare il metodo chiave asimmetrico, ma se ci pensi, il motivo per cui la password è crittografata sul client, solitamente la stessa password viene usata in altre istanze, quindi se usi una password separata per transazioni con questa API, isolerai i problemi solo con questo metodo di accesso.

    
risposta data 17.12.2014 - 09:02
fonte

Leggi altre domande sui tag