Accesso pubblico al server Web IIS all'interno della rete aziendale, per un servizio specifico

2

Sto sviluppando un'app mobile che deve accedere a un server specifico all'interno di una rete aziendale e dovrebbe essere in grado di farlo da qualsiasi parte del mondo. L'app comunica tramite HTTP a un servizio Web sul server. La prima chiamata è un messaggio di accesso e il login riuscito restituisce un ID sessione utilizzato per recuperare i dati.

In che modo è possibile configurare l'infrastruttura dell'azienda per consentire all'app di raggiungere sempre il server, ma allo stesso tempo essere al sicuro?

Il servizio Web viene eseguito in un IIS e il team di sicurezza non sembra gradire l'idea di rendere il servizio Web disponibile per gli utenti esterni alla rete aziendale così come è . L'idea al momento è quella di introdurre un TMG a metà tra l'app e il servizio Web, ma altri suggerimenti sono i benvenuti.

Sto cercando una soluzione che enfatizzi semplicità e facilità di accesso dal punto di vista dell'utente.

    
posta MortenGR 26.01.2016 - 11:49
fonte

4 risposte

1

Il mio voto è TMG.

Ciò consentirà di esporre il servizio consentendo comunque ispezione del traffico prima che raggiunga il server interno.

Molto simile alla VPN, può essere configurato per richiedere un certificato lato client e / o una password per l'autenticazione, oltre a supportare una varietà di metodi di crittografia. Ciò impedirà l'uso di scanner casuali e script kiddies da parte del servizio.

L'utilizzo di TMG ha anche il vantaggio che terze parti non sono "on" sulla tua rete come farebbero con una connessione VPN.

    
risposta data 26.01.2016 - 16:16
fonte
5

Personalmente utilizzerei una VPN e rendere il servizio accessibile dalla rete locale (le connessioni VPN sembrerebbero locali).

Quando si utilizza una connessione VPN, tutto viene crittografato e si richiedono le credenziali per utilizzare la VPN. Queste credenziali potrebbero cambiare su base settimanale, mensile, ecc. Ecc.

Risposta molto breve ma è molto in bianco e nero.

    
risposta data 26.01.2016 - 11:58
fonte
0

È possibile utilizzare TLS con l'autenticazione del client. La comunicazione è crittografata e sia il server che il client devono dimostrare la loro autenticità fornendo certificati validi. È possibile installare un proxy inverso di fronte al server esistente per gestire la crittografia.

    
risposta data 26.01.2016 - 12:58
fonte
0

Il mio pensiero sarebbe di mantenerlo il più semplice possibile. Utilizza un proxy inverso nella tua DMZ con terminazione SSL per la crittografia.

Personalmente uso nginx su Centos ma ho usato HAProxy prima e sono entrambi semplici da configurare. Entrambi hanno edizioni commerciali e di comunità.

Potresti riuscire a trovare immagini Docker di nginx o HAProxy.

La tua app comunica con il proxy inverso crittografato su 443 e quindi il proxy inverso comunica con il backend sulla porta 80.

    
risposta data 26.01.2016 - 18:05
fonte

Leggi altre domande sui tag