Come impedire l'accesso a un archivio dati sicuro tra domini

-1

Ho un cliente che deve essere in grado di proteggere un sito di dati dagli hacker. Questa è la metodologia che stiamo attualmente osservando:

server.com (server web) - > Richiesta HTTP JSON API - > dataStore.net (server dati).

Non vuole costringere le persone ad autenticarsi solo per visitare server.com . L'autenticazione sarebbe necessaria solo per accedere a dataStore.net . La chiamata javascript tra domini è possibile tramite CORS, ma CORS non è sicurezza.

Devo prevenire: some-person.com - > Richiesta HTTP JSON API - > dataStore.net

Qualche idea su come realizzare questo?

    
posta SpokaneDude 30.07.2014 - 01:21
fonte

2 risposte

1

Tieni presente che la mia risposta si basa su ipotesi. Se modifichi la tua domanda per chiarire fammelo sapere e aggiornerò la mia risposta.

Dal tuo diagramma

server.com (web server) —> HTTP JSON API request —> dataStore.net (data server).

sembra che tu stia connettendo a datastore.net dal tuo server.

Tuttavia, quando si parla di CORS, ho l'impressione che i seguenti diagrammi siano più precisi:

user —> HTTP request —> server.com

user -> HTTP JSON API request —> datastore.net

Authentication would be needed just for accessing dataStore.net.

Questa affermazione aggiunge ulteriore importanza alla mia ipotesi.

Se questo è il caso, l'autenticazione deve avvenire su datastore.net (non server.com ). Solo le richieste autenticate dovrebbero poter accedere ai dati su datastore.net . Si dice anche che non si desidera che gli utenti si registrino. Se vuoi proteggere i tuoi dati su datastore.net , devi solo consentire agli utenti autenticati di connettersi, motivo per cui la registrazione è effettivamente necessaria.

L'altra opzione è consentire solo a server.com di comunicare con datastore.net (primo diagramma) - cioè l'accesso lato server all'API. Ciò significa che datastore.net è effettivamente un server back-end e non è necessario che sia visibile su Internet (per il traffico in entrata diverso da server.com ).

    
risposta data 30.07.2014 - 15:24
fonte
2

I need to prevent: some-person.com —> HTTP JSON API request —> dataStore.net

È importante capire che, se qualcuno vuole ottenere dati dal tuo archivio dati, potrebbe semplicemente utilizzare qualsiasi proxy web per eludere le politiche di cross-tra-origine.

Non è chiaro cosa stai chiedendo qui, ma ti consiglio di prendere dataStore.net da Internet, metterlo in una rete privata e lasciare che il back-end di server.com parli attraverso la rete interna. In alternativa, se deve essere su Internet, puoi lasciare back-end server.com per autenticare e rifiutare qualsiasi altra richiesta.

In questo modo gli utenti possono ancora user server.com senza registrarsi, ma il tuo archivio dati sarà protetto.

    
risposta data 30.07.2014 - 06:23
fonte

Leggi altre domande sui tag