Dela via


Tillförlitlig säker profil

Exemplet ReliableSecureProfile visar hur du skriver WCF och Reliable Secure Profile (RSP). Det här exemplet visar implementeringen av en Make Connection-kanal , som kan bestå tillsammans med Reliable Messaging och eventuellt en säker kanal för att skapa en tillförlitlig säker bindning baserat på RSP-specifikationen.

Diskussion

Det här exemplet visar ett tillförlitligt asynkront scenario för dubbelriktad meddelandeutbyte. Tjänsten har ett duplex-kontrakt och klienten implementerar duplex-återanropskontraktet. Klienten initierar en begäran till en tjänst, för vilken ett svar förväntas på en separat anslutning. Begärandemeddelandet skickas på ett tillförlitligt sätt. Klienten vill inte öppna en lyssningsslutpunkt i slutet. Tjänsten skickar därför "Make Connection"-förfrågningar till tjänsten så att svaret kan skickas tillbaka via den bakre kanalen för denna "Make Connection"-förfrågan. Det här exemplet visar hur du har säker tillförlitlig dubbelsidig kommunikation via HTTP utan att klienten exponerar en lyssnande slutpunkt (och skapar ett brandväggsfel).

Så här konfigurerar du, skapar och kör exemplet

  1. Öppna lösningen ReliableSecureProfile .

  2. Högerklicka på serviceprojektet i Solution Explorer, välj Felsök, Starta ny instans på snabbmenyn. Detta startar värdtjänsten.

  3. Högerklicka på klientprojektet i Solution Explorer, välj Felsök, Starta ny instans på snabbmenyn. Detta startar klienten.

  4. Skriv in valfri sträng i kommandotolken i klientkonsolfönstret och tryck på ENTER. Detta skickar inmatningssträngen till tjänsten, som beräknar en hash av strängen.

  5. Visa resultatet i klientfönstren när tjänsten anropar återanropskontraktet för duplex för att visa resultatet i klientkonsolfönstret. Det finns en avsiktlig fördröjning på tjänsten för att simulera en tidskrävande bearbetning av data.

  6. Övervakning av HTTP-trafiken (av något av onlinenätverksövervakningsverktygen som Network Monitor, Fiddler och så vidare) visar att en sekvens för kommunikation upprättas mellan klienten och tjänsten enligt vad som anges av Reliable Secure Profile och hur klienten avsöker tjänsten med begäranden om "Upprätta anslutning". När tjänsten gör sig redo att skicka tillbaka det bearbetade svaret använder den den bakre kanalen för den senaste begäran om att upprätta anslutning för att skicka tillbaka resultatet.

  7. Tryck på RETUR i tjänstkonsolfönstret för att stänga tjänsten. Tryck på RETUR i klientkonsolfönstret för att stänga klienten.