Se un sito Web può utilizzare direttamente un servizio Web di terzi?

1

Immagina di avere un sito Web in esecuzione su un IIS. Il sito Web deve ottenere / inviare dati sensibili da un servizio web REST di terze parti.

C'è qualche ragione per cui un sito web (lato server, non lato client) non dovrebbe essere autorizzato a consumare direttamente un servizio web di terzi, ma un servizio interno separato che effettua la chiamata al servizio web di terzi?

Web Site --> 3rd party party web service

o

Web Site --> internal service --> 3rd party web service

    
posta Rookian 23.06.2016 - 23:21
fonte

2 risposte

4

Sono molto contento di essermi imbattuto in questa domanda in quanto è una situazione comune ma per lo più gestita in modo errato.

La mia risposta è che deve esserci un servizio interno per servire allo scopo di consumare / nutrire un servizio di terzi e il mio fondamento logico è il seguente.

  1. Mi aiuta a tenere traccia di tutte le occorrenze dei servizi interni che si rivolgono ai 3PE. (supponiamo che un giorno dopo 1 anno devi trovare tutti i 3PE e non hai idea di dove siano sparsi per il codice e quali siano i loro nomi, ma se hai un servizio interno che fa gli intermediari lavori sai esattamente cosa guardare per). Il controllo delle associazioni esterne è stato facile.
  2. Se il servizio riceve qualche problema alla fine della terza parte, hai una possibilità di ottenere fallimenti aggraziati.
  3. Tieni traccia di tutti i dati che i 3PE consegneranno / consumeranno in modo da sapere esattamente cosa entra ed esce.
  4. In situazioni molto specifiche, questi tipi di 3PE devono essere eseguiti dopo una revisione dell'architettura di sicurezza (ad esempio dominio bancario) che implica la revisione di fornitori, servizi, dati, privilegi e molti altri. Avere un servizio interno rimuove completamente la dipendenza del codice di terze parti. (non c'è fiducia in infosec, giusto?)

C'è anche un inconveniente. Ogni volta che il servizio esterno si modifica, è necessario apportare modifiche rilevanti al servizio interno di conseguenza. Ma ciò può essere tollerato a causa dei vantaggi che comporta.

Ultimo punto, se si sta puntando a PCI-DSS o ad altri controlli, è sempre possibile aggiungere il rapporto dei 3PE e il modo in cui li gestisci utilizzando i servizi interni nella lista di prove pratiche di codifica sicura.

Spero che questo aiuti.

    
risposta data 24.06.2016 - 01:38
fonte
3

Può accedervi direttamente

Ci possono essere dei motivi per cui un servizio interno intermedio può essere utile, ad esempio estrapolare il servizio web di terzi o fornire un'interfaccia comune a diversi frontend.

Tuttavia, non c'è motivo per cui il sito web non possa consumare direttamente la terza parte, se fatto correttamente. Tieni presente che il sito web dovrà ancora interfacciarsi con il servizio interno, che potrebbe essere altrettanto difficile da interagire con la terza parte.

Per quanto riguarda la sicurezza, l'uso di quel servizio interno potrebbe consentire di separare le credenziali di terze parti o usarlo per applicare un altro livello di filtro all'input, ma tale servizio non è richiesto .

    
risposta data 24.06.2016 - 00:05
fonte

Leggi altre domande sui tag