2013-10-03 11 views
16

Stiamo creando un'applicazione nel cloud di Google. Stiamo utilizzando App Engine come frontend e Compute Engine come backend. In queste istanze di Compute Engine sto eseguendo un server TCP che accetta determinati messaggi di "comando". Le istanze di Compute Engine sono inoltre connesse a Internet dietro un firewall e il bilanciamento del carico per il traffico https in entrata. Vorrei associare il server TCP a un indirizzo IP locale e consentire solo le istanze di App Engine (che si trovano all'interno dello stesso progetto) per connettersi alla porta "comandi" TCP tramite socket api.Google App Engine comunica con Compute Engine tramite la rete interna

Per ora ci stiamo limitando le connessioni in entrata per Google Ip's only

Il Compute Engine documentation Sais i seguenti:

Ogni istanza è un membro di una singola rete. Una rete svolge la stessa funzione di un router in una rete domestica: descrive l'intervallo di rete e l'indirizzo IP del gateway, gestisce le comunicazioni tra le istanze e funge da gateway tra le istanze e i chiamanti all'esterno della rete. Una rete è vincolata a un singolo progetto; non può coprire i progetti. Qualsiasi comunicazione tra istanze in reti diverse, anche all'interno dello stesso progetto, deve avvenire tramite indirizzi IP esterni. Nell'API, una rete è rappresentata dall'oggetto Rete.

Sarebbe possibile creare una configurazione di comunicazione sicura? Forse con le istanze di back-end di App Engine?

risposta

7

Attualmente non esiste un modo per configurare una rete privata tra GCE e GAE. Limitare l'intervallo IP di google non è sicuro poiché chiunque su GAE o GCE potrebbe connettersi al tuo server. Quindi ti consiglio di autenticare le connessioni in entrata sul tuo server TCP per verificare che la connessione provenga dalle tue istanze GAE.

+0

Stavo pensando di aggiungere questo. Sto anche cercando la sicurezza del livello di rete. Non solo applicazione. Ma penso che tu abbia ragione, in questo momento è l'unica cosa che posso fare. –

+0

È qualcosa che posso fare non appena ho accesso alle macchine virtuali gestite? Da quanto ho capito, AE e la mia app per il motore di calcolo si trovano sulla stessa macchina. Sono ora in grado di parlare su localhost? –

+1

questa risposta è ancora valida per oggi? '__')? Ho intenzione di utilizzare GAE e CGE (aerospike) – Kokizzu

4

A partire da ora Nel 2016 come google cloud ha lanciato l'ambiente flessibile cloud google appengine/docs/flexible/. Quindi sì, ora è possibile perché ora sia il motore di app che il motore di calcolo sono presenti nella stessa rete e quindi utilizzando il motore di app è possibile accedere al motore di elaborazione usando il proprio IP interno, inoltre ricorda di eliminare tutte le regole del firewall esterno per i tuoi motori di calcolo vuoi consentire l'accesso dal motore dell'app.