Accesso sicuro attraverso due app Web

3

Ho l'obbligo di implementare l'accesso tra domini per due app Web (APP1 e APP2) in modo che un utente possa accedere a APP2 dopo aver effettuato l'accesso all'AP1. APP2 deve conoscere un ID dell'utente che ha effettuato l'accesso a APP1. Ho trovato una soluzione ma non sono sicuro che sia il modo migliore per farlo. Potrebbe per favore dare un'occhiata a questa soluzione e indicare potenziali vulnerabilità o darmi qualche suggerimento su come ottenerlo in un modo migliore? Ecco la soluzione:

  1. APP1 ha un collegamento a APP2 da qualche parte sul sito web. Il link contiene un token di accesso che viene generato dal server di APP1, cioè collegamento

  2. Un token di accesso è un testo semplice crittografato utilizzando un algoritmo a chiave simmetrica come AES e una password di crittografia nota solo con APP1 e APP2. Contiene le seguenti informazioni: userId, indirizzo ip, timestamp, chiave segreta, vale a dire. 00001,87.143.203.12,1399725213, a chiave segreta

  3. APP2 riceve la richiesta, decrittografa il token di accesso utilizzando la password di crittografia e verifica quanto segue:

    • Referer HTTP - deve corrispondere all'URL del server APP1
    • indirizzo IP
    • chiave segreta - entrambe le app condividono la stessa chiave segreta (non è uguale alla password di crittografia) per verificare che la richiesta provenga da APP1
    • se il token di accesso è stato utilizzato o meno.
  4. APP2 garantisce che un token di accesso può essere utilizzato una sola volta, quindi non sarà possibile rubare un token di accesso e utilizzarlo per accedere a APP2 da un altro computer.

posta janusz 09.11.2012 - 13:25
fonte

2 risposte

3

Vorrei utilizzare un'implementazione open source di OAuth . Ancora meglio, è possibile utilizzare un provider OAuth di terze parti in modo che non ci si debba preoccupare di perdere le credenziali dei clienti in caso di compromissione.

    
risposta data 09.11.2012 - 16:16
fonte
0

Sono d'accordo con la raccomandazione di utilizzare OAuth.

Per l'analisi della tua proposta, ti consiglio di leggere il seguente post del blog:

risposta data 09.11.2012 - 18:52
fonte

Leggi altre domande sui tag