Sto cercando di capire il modo migliore e più sicuro per farlo, se è possibile farlo in modo sicuro e protetto.
Piccola azienda. Abbiamo un server Web ospitato da una terza parte che serve la nostra app Web client con il minimo di dati nel database sul server. Vuoi iniziare a offrire più funzionalità attraverso il portale che richiederebbe di sviluppare l'app per accedere ai nostri dati più completi sul nostro database interno. L'azienda non vuole mettere i dati sul server di terze parti.
Penso che un modo per farlo sarebbe quello di aprire il server di terze parti sulla porta del database e consentire solo il traffico dall'IP dell'ufficio a quella porta. Sul server interno, aprire la porta per il database solo per il traffico dall'IP del server di terze parti.
1) Questa sarebbe considerata una configurazione ragionevolmente sicura?
Non sono né una rete né un ragazzo della sicurezza, quindi sto raccogliendo informazioni sulle migliori pratiche e ricevendo suggerimenti per l'installazione.
So che può esistere lo spoofing IP in cui un utente malintenzionato può rendere il proprio IP simile a quello di chiunque altro. Dovrebbero sapere in anticipo quale IP è esentato. Tuttavia, una chiave di autenticazione tra i server può essere configurata in modo che anche se l'IP fosse stato contraffatto, entrambe le estremità della connessione avrebbero bisogno della chiave.
2) Questo sarebbe solo un tasto SSH?
MODIFICA 1:
Per essere sinceri, no, in azienda è una vera comprensione per quanto riguarda la sicurezza. Non vogliamo i nostri dati sensibili su un server di terze parti perché pensano che sia solo in giro per chiunque nell'etere di afferrare. Fondamentalmente come googling 'Microsoft', o qualcosa del genere, qualcuno può essere solo come 'dati my_company' e ottenere i nostri dati. L'altra ragione è pratica. I dati devono essere immediatamente disponibili poiché lavoriamo costantemente con esso. Dovendo caricare e scaricare da un server remoto sarebbe lento e fastidioso molto veloce.
Inoltre, dovrei aggiungere che ciò implica informazioni sensibili che non dovrebbero essere rese pubbliche. Che cosa succede se un cliente desidera calcolare il 65 ° percentile per un determinato articolo, tale richiesta viene inviata dall'app Web del client in esecuzione sul terzo server di parti al database interno in cui i dati grezzi devono calcolare il percentile. Il risultato viene inviato nuovamente all'app Web del cliente e presentato lì. Non dovrebbero avere accesso ai dati direttamente perché sono riservati.
Detto questo, stavo leggendo un po 'le API REST. Una parte di quello che stavo leggendo stava dicendo che le API REST potrebbero non essere le migliori quando sono richieste informazioni sensibili, o l'autenticazione, e che SOAP dovrebbe essere usato.