Esempi di comunicazione remota
Benché l'utilizzo dell'architettura predefinita e dei canali di trasporto sia semplice e soddisfi la maggior parte dei requisiti di comunicazione remota, è possibile che determinati scenari richiedano un controllo più completo sul processo. Negli argomenti della presente sezione viene descritto in modo più approfondito il processo di comunicazione remota per spiegare i processi di livello più basso e come sostituirli o estenderli.
È importante che gli sviluppatori tengano conto della protezione nella generazione di applicazioni aziendali e, per soddisfare i requisiti dell'azienda, siano in grado di aggiungere alle chiamate di metodo remote funzionalità di protezione, quali l'autorizzazione o la crittografia. Per soddisfare le suddette esigenze, è possibile personalizzare i canali in modo da fornire agli sviluppatori il controllo sul meccanismo effettivo di trasporto dei messaggi da e verso un oggetto remoto.
Attenzione .NET Remoting non consente di effettuare l'autenticazione né la crittografia per impostazione predefinita. Si consiglia dunque di eseguire tutte le azioni necessarie per verificare l'identità dei client o dei server prima di interagire con essi in modalità remota. Poiché l'esecuzione delle applicazioni .NET Remoting richiede autorizzazioni FullTrust, qualora a un client non autorizzato venisse concesso l'accesso al server, il client potrebbe eseguire codice come se fosse completamente attendibile. È necessario autenticare sempre gli endpoint e crittografare i flussi di comunicazione mediante l'hosting dei tipi remoti in Internet Information Services (IIS) oppure generando a questo scopo una coppia di sink di canale personalizzata.
In questa sezione
- Esempio di comunicazione remota: pubblicazione dinamica
Viene illustrato l'utilizzo delle classi di .NET Remoting per pubblicare in modo dinamico e interrompere la pubblicazione di un determinato oggetto. - Esempio di comunicazione remota: servizio di registrazione
Viene dimostrato l'utilizzo di ITrackingHandler per registrare il marshalling, l'unmarshalling e la disconnessione degli eventi. - Esempio di comunicazione remota: hosting in Internet Information Services (IIS)
Viene illustrato l'utilizzo di IIS per l'hosting di un tipo remotizzabile e come modificare il client per utilizzare un oggetto BinaryFormatter invece dell'oggetto SoapFormatter predefinito. - Esempio di comunicazione remota: durata
Vengono descritti gli sponsor e i lease di durata. - Esempio di comunicazione remota: provider di sink di canale
Viene dimostrata la generazione di un provider di sink di canale che effettua ricerche nella catena di sink di canale per impostare le proprietà specificate nel file di configurazione dell'applicazione. - Esempio di comunicazione remota: CallContext
Viene dimostrato come utilizzare CallContext per passare le informazioni in un thread logico. - Esempio di comunicazione remota: comunicazione remota asincrona
Viene illustrato l'utilizzo della programmazione asincrona in uno scenario di .NET Remoting.
Sezioni correlate
- Cenni preliminari su .NET Remoting
Viene fornita una descrizione di alto livello di tutta l'architettura di .NET Remoting. - Configurazione
Vengono descritte le informazioni necessarie per effettuare chiamate remote mediante il sistema .Net Remoting.