Protezione delle chiamate di servizio

3

Ho un oggetto ServiceCallContext che deve essere passato come primo parametro di qualsiasi chiamata di servizio. Vorrei mettere un oggetto Utente sull'oggetto contesto, ma so che non posso costringere il chiamante a rispedire l'oggetto User ricevuto dal servizio e non posso impedirgli di riempirlo con le informazioni che preferiscono.

Quindi, a quanto ho capito, avrei bisogno di usare un token di sicurezza (tramite qualcosa come OAuth) per autenticarli e avrei sempre bisogno di cercare tutte le informazioni degli utenti che ho bisogno sul lato del servizio dopo l'autenticazione piuttosto che metterlo sul oggetto contesto.

Tuttavia, so che è normale creare un hash per un file di dati per verificare che i suoi contenuti non siano stati manomessi. Sarebbe ragionevole fare questo per le informazioni utente che ho messo su un oggetto di contesto in modo che non debba effettuare una chiamata al livello di persistenza per ogni chiamata di servizio? Quali sono i rischi di farlo in questo modo?

    
posta BVernon 24.01.2015 - 23:14
fonte

2 risposte

1

Un hash delle informazioni di accesso dell'utente sarebbe essenzialmente un token di sicurezza mal implementato. Dal momento che devi ancora autenticare ogni singola richiesta, non vedo che cosa otterrai dalla rotazione della tua autenticazione. Utilizza una soluzione ben testata come OAuth o XAuth.

Puoi bloccare in modo semplice e sicuro gli "intermediari" da manomissioni o intercettazioni utilizzando HTTP S .

    
risposta data 24.01.2015 - 23:25
fonte
1

Una volta eseguita la funzione costosa (autenticazione di un utente), si configurerà un token archiviato in un posto molto più veloce e meno costoso (cioè Memcache).

In questo modo, re-autentica sempre l'utente a ogni richiesta e puoi forzare automaticamente una completa re-autenticazione scaricando la memoria per tutti gli utenti con una sessione corrente.

Puoi anche archiviare tutti i dati dell'utente necessari per ogni chiamata di servizio in Memcache (o simile) per un rapido recupero.

    
risposta data 22.09.2015 - 05:35
fonte

Leggi altre domande sui tag