Domanda

Sembra che chiunque possa curiosare sui messaggi SOAP del servizio Web .NET in entrata / in uscita semplicemente inserendo un semplice SoapExtension nella cartella bin e installandolo in seguito usando:

<soapExtensionTypes>
  <add type="MyLoggingSoapExtension, SoapLoggingTools" priority="0" group="High" />
<soapExtensionTypes>

Esiste un modo per impedire il caricamento o la richiesta delle estensioni SOAP nella mia app (tramite un evento o un meccanismo simile) se è possibile caricare?

@Hurst: grazie per la risposta. Conosco la crittografia a livello di messaggio / WS-Security e speravo di non dover fare quella strada. Abbiamo clienti ASP classici che utilizzano il servizio e questo apre un piccolo mondo di dolore. Ci sono certificati SSL sul sito che eseguono il servizio web, ma speravo in qualche modo di poter scoraggiare il client dal armeggiare con le estensioni del sapone dato che hanno sviluppatori che hanno una certa capacità di "giocare".

È stato utile?

Soluzione

Non sono sicuro di cosa intendi per estensioni e cartelle bin (immagino che tu stia utilizzando .NET), quindi non posso rispondere del loro caricamento ecc.

Tuttavia, si noti che SOAP è progettato per consentire agli intermediari di leggere le intestazioni e persino di modificarle. (Fai una ricerca per " SOAP Active Intermediaries "). A giudicare da ciò, mi aspetto che non ci sia motivo per una tecnologia per evitare di curiosare impedendo al codice di leggere il SAPONE .

Il modo corretto di proteggerti è utilizzare " sicurezza a livello di messaggio " ;. (Ciò è in contrasto con sicurezza a livello di trasporto , come SSL, che non protegge dagli intermediari). In altre parole, crittografa i tuoi messaggi prima di inviarli.

Uno standard disponibile utilizzato per implementare meccanismi di sicurezza a livello di messaggio è il protocollo WS-Security . Ciò consente di indirizzare la crittografia al payload e alle intestazioni pertinenti indipendentemente dal trasporto. È più complesso, ma è così che limiteresti l'accesso.

Altri suggerimenti

Completamente d'accordo con @Hurst - se vuoi impedire ad altri di leggere i tuoi messaggi devi usare la crittografia a livello di messaggio. Altrimenti anche NetMon semplice può spaccare il traffico via cavo.

Naturalmente se qualcuno ha accesso alla macchina (dato l'accesso a / bin ecc.), anche la crittografia potrebbe non essere sufficiente per impedire ai ficcanaso di usare i debugger, ad es. leggere le rappresentazioni in memoria del messaggio dopo la decodifica.

Con accesso fisico alla macchina - tutte le scommesse sono disattivate.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top