Windows Communication Foundation António Cruz Freelancer (SAPO/PT.COM)

Slides:



Advertisements
Similar presentations
Michael S. Chan xLM Solutions, LLC
Advertisements

WCF Intro Scott Reed Owner - Brain Hz Software Instructor – DevelopMentor
Zoiner Tejada Hershey Technologies. About Zoiner Tejada.
Aplicaciones Distribuidas Manuel Zegarra Sánchez Microsoft Certified Application Developer.
MCITP Guide to Microsoft Windows Server 2008 Server Administration (Exam #70-646) Chapter 12 Application and Data Provisioning.
 Introduction  WCF Definition  WCF Architecture  Implementation  WCF Demo Overview.
Windows Communication Foundation and Web Services.
© 2007 Charteris plc20 June Extending Web Service Security with WS-* Presented by Chris Seary MVP Charteris plc, Bartholomew Close, London.
Darryl Burling Developer Evangelist Microsoft The age of connected applications Whats new in VS2008 WCF Background: WS*,.Net 3.0 and WCF ABC’s & improvments.
X.509 support in WCF Exploring support for X.509 Certificates in Microsoft’s Windows Communication Foundation Paul Cormier UCCS CS591 Fall 2009.
Adam Dille CS526 – Spring  Advances in Microsoft’s service offerings  ASMX vs. WCF  Latest WCF Improvements (.NET 4.0)  No in-depth study of.
The Microsoft Technical Roadshow 2006 Windows Communication Foundation Mike Taulty Developer & Platform Group Microsoft Ltd
Module 13: WCF Receive Adapters. Overview Lesson 1: Introduction to WCF Receive Adapters Lesson 2: Configuring a WCF Receive Adapter Lesson 3: Using the.
Getting Started with WCF Windows Communication Foundation 4.0 Development Chapter 1.
Copyright ©2004 Virtusa Corporation | CONFIDENTIAL Introduction to Windows Communication Foundation Ruwan Wijesinghe.
CON 307 Developing Manageable WCF Services Chris Peiris | Avanade Rory Primrose | Avanade
Agenda What Is the Windows Communication Foundation? How Does It Work? How Do I Use and Deploy It? Bindings Addresses Contracts How to host WCF services.
1 Understanding Windows Communication Foundation Nick Page Application Architect Microsoft Ltd.
1 Windows Communication Foundation: Integrating COM+ and MSMQ Applications Andy Milligan COM305 Program Manager Microsoft Corporation.
Microsoft Visual Studio 2010 Muhammad Zubair MS (FAST-NU) Experience: 5+ Years Contact:- Cell#:
Presentation: Other Object Oriented Middlewares. Outline Web services Java RMI.NET Remoting WCF For each technology Compare: heterogenity (platform, OS,
Microsoft Visual Studio 2010 Muhammad Zubair MS (FAST-NU) Experience: 5+ Years Contact:- Cell#:
Intro to WCF From the beginning and uses Steve AppRochester.
Paul Johansen – October Mankato.NET Users Group. Agenda  WCF Essentials  Bunch o’ demos Coding from scratch Why the Visual Studio tools suck  Additional.
Random Logic l Forum.NET l Web Services Enhancements for Microsoft.NET (WSE) Forum.NET ● October 4th, 2006.
A Deep Dive into Best Practices with the Windows Communication Foundation John Justice COM415 Program Manager Microsoft Corporation.
Developing Web Services Using ASP.NET and WSE That Interoperate with the Windows Communications Foundation ("Indigo") Mark Fussell COM432 Lead Program.
.NET Enterprise Services COM+ 1.5 麥超俊 Bobby Mak 架構技術推廣經理開發工具暨平台推廣處台灣微軟股份有限公司.
Mahesh Krishnan, Senior Consultant, Readify Slide 1.
Telerik Software Academy Web Services & Cloud.
Introducing the ABCs of Windows Communication Foundation | Feb 2006 rickgaribay.net Windows Communication Foundation Hosting & Endpoints Winter 2006.
2 Productive Windows Communication Foundation Jeremy Boyd Mindscape MSDN Regional Director – New Zealand SOA315.
Windows Communication Foundation David Anderson Independent Software Developer DCOM Productions.
Web Services Security with Visual Studio 2005 Muhammad Saqib Ilyas
Presentation 24: Windows Communication Foundation Introduced Objektorienteret Netværkskommunikation.
Agenda What Is the Windows Communication Foundation? How Does It Work? How Do I Use and Deploy It? Bindings Addresses Contracts How to host WCF services.
Satisfy Your Technical Curiosity Beyond ABC: WCF practices from the field Christian Weyer thinktecture Co-Founder & Solution Architect
.NET Mobile Application Development XML Web Services.
Endpoints Lesson 17. Skills Matrix Endpoints Endpoints provide a reliable, securable, scalable messaging system that enables SQL Server to communicate.
Dhananjay Kumar MVP-Connected System 1. WCF  Agenda What is WCF ? Why WCF? Address, Binding, Contract End Points Hosting Message Patterns Programming.
Christian Weyer thinktecture.
Introduction to.NET FX 3.0 (+ sneak preview of.NET FX 3.5) Martin Parry Developer & Platform Group Microsoft Ltd
The SOAP Story Martin Parry Developer & Platform Group Microsoft Ltd
For Developers Martin Parry Developer and Platform Group Microsoft
.NET Framework Enterprise. Agenda WCF Overview WCF Solutions WF Overview WF Solutions Card Spaces Bringit it all together: Dinner Now Scenario.
Justin Smith Technical Evangelist Microsoft Corporation CON301.
Shani Raba Team Leader & Software Architect
OE-NIK HP Advanced Programming WCF WCF SOAP service, host, client Exception handling (NOT required)
Windows Communication Foundation Stipe Ivan Latković.
Nati Dobkin
O VERVIEW OF SOA AND WCF Jinaldesai.net – My Thouths And Learnings.
Windows Communication Foundation. Agenda How We Got Here ASMX vs WCF Throwdown WCF Contracts Service Data Message Bindings Security Reliability Declarative.
Windows Communication Foundation and Web Services
Windows Communication Foundation
Segments Introduction: slides 2–7 10 minutes
4/12/2018 2:37 PM Windows Communication Foundation: Migration, interop, upgrade, and integration Risman Adnan ISV Lead, Microsoft Indonesia
Windows Communication Foundation
Windows Communication Foundation
Window Communication Foundation
WCF.
Windows Communication Foundation
Windows Communication Foundation (WCF)
Distribution of functionality Webservice using WCF
Windows Communication Foundation and Web Services
Windows Communication Foundation
WSE 3.0 的网络服务安全 Security in WSE 3.0 Hongmei Ge Con321
for Developers Martin Parry Developer and Platform Group Microsoft
Windows Communication Foundation (WCF)
Distributed Applications on Windows Vista
The SOAP Story Martin Parry Developer & Platform Group Microsoft Ltd
Presentation transcript:

Windows Communication Foundation António Cruz Freelancer (SAPO/PT.COM)

Agenda What Is the Windows Communication Foundation? How Does It Work? How Do I Use and Deploy It? Bindings Addresses Contracts Transactions Security Management Integration and Extensibility

What Is the Windows Communication Foundation? Many confusing and complicated options Remotin g COM D/COM COM+ MSMQ WSE ASMX One simple choice that is always the best option Windows Communication Foundation Yesterday: Now:

Agenda What Is the Windows Communication Foundation? How Does It Work? How Do I Use and Deploy It? Bindings Addresses Contracts Transactions Security Management Integration and Extensibility

How Does It Work? Data Service Model Address, Binding, Contract, and Behaviors Channel Layer Protocols, Encoders, and Transports Messages Metadata

Agenda What Is the Windows Communication Foundation? How Does It Work? How Do I Use and Deploy It? Bindings Addresses Contracts Transactions Security Management Integration and Extensibility

How Do I Use It? [ServiceContract] public interface IMyInterface { [OperationContract] public MyOutputType MyMethod(MyInputType myData); } Service Contract Definition <service name=“MyService”> <endpoint address=“MyAddress” binding=“netTcpBinding” contract=“IMyInterface” /> Endpoint Configuration [ServiceBehavior(InstanceContextMode=Single] public class MyService: IMyInterface { public MyOutputType MyMethod(MyInputType myData) { //my code … } Contract Implementation (Service Type)

How do I Deploy It? For HTTP services on Windows XP ® SP2 & WS2K3 For any service on Windows Vista ® and Windows Server ® “Longhorn” Proven reliability, scalability, and security Requires a.svc file to identify the Service Type Web Host within IIS: Self-Host within any.NET process: Available for any service Console apps, windowed apps,.NET NT Services …

Building a Simple Service and Client

Agenda What Is the Windows Communication Foundation? How Does It Work? How Do I Use and Deploy It? Bindings Addresses Contracts Transactions Security Management Integration and Extensibility

All About Bindings You can choose a pre-defined binding: <endpoint name=“MyService” address=“MyAddress” binding=“netTcpBinding” contract=“IMyInterface” /> NetPeerTcpBinding NetMsmqBinding NetNamedPipeBinding NetTcpBinding WSHttpBinding BasicHttpBinding Binding.NET Peer  Peer.NET .NET via MSMQ.NET .NET across processes Secure, reliable duplexed.NET .NET across processes Secure, reliable duplexed Basis for WS-* interop Supports WS-Security, WS-RM, WS-Tx Basic Profile 1.1 Interop and Integration w/ASMX Purpose

You can customize a pre-defined binding <service name=“MyService”> <endpoint address=“MyAddress” binding=“wsHttpBinding” bindingConfiguration=“MyReliableBinding” contract=“IMyInterface” /> <reliableSession enabled=“true” ordered=“true” All About Bindings

You can define custom bindings <service name=“MyService”> <endpoint address=“MyAddress” binding=“customBinding” bindingConfiguration=“MyCustomBinding” contract=“IMyInterface” /> All About Bindings

Reliability

Agenda What Is the Windows Communication Foundation? How Does It Work? How Do I Use and Deploy It? Bindings Addresses Contracts Transactions Security Management Integration and Extensibility

All About Addresses The scheme portion of an address corresponds to the transport protocol: The schemes clearly indicate which protocols have been standardized. NetNamedPipeBinding NetMsmqBinding NetTcpBinding BasicHttpBinding, WSHttpBinding Binding net.pipe://… net.msmq://… net.tcp://… Scheme

All About Addresses An endpoint address is relative to a base address: For a Web-Hosted service, the base address is that of its virtual directory <service name=“MyService”> <endpoint address=“MyEndpointAddress” binding=“wsHttpBinding” bindingConfiguration=“MyReliableBinding” contract=“IMyInterface” />

Agenda What Is the Windows Communication Foundation? How Does It Work? How Do I Use and Deploy It? Bindings Addresses Contracts Transactions Security Management Integration and Extensibility

All About Contracts Look again at this service contract: [ServiceContract] public interface IMyInterface { [OperationContract] public MyOutputType MyMethod(MyInputType myData); } How do MyOutputType and MyInputType get serialized into messages? Serialization is done by DataContractSerializer by default Handles “built-in”.NET Framework types automatically User-defined types require Data Contracts: [DataContract] public class MyDataContract {[DataMember] public string MyField; } [ServiceContract] [XmlSerializerFormat] public interface IMyInterface Can opt for the older, slower XmlSerializer:

WCF in a Nutshell AddressBinding BehaviorContract HTTP Transport TCP Transport NamedPipe Transport MSMQ Transport Custom Transport WS-Security Protocol WS-RM Protocol WS-Coord Protocol Duplex Channel Custom Protocol net.tcp://... net.pipe://... net.msmq://... xxx://... Throttling Behavior Metadata Behavior Error Behavior Custom Behavior Instancing Behavior Concurrency Behavior Transaction Behavior Security Behavior Request/ Response One-Way Duplex net.p2p://... Peer Transport Externally visible, per-endpoint Opaque, per-service, endpoint or operation

Agenda What Is the Windows Communication Foundation? How Does It Work? How Do I Use and Deploy It? Bindings Addresses Contracts Transactions Security Management Integration and Extensibility

WCF Transaction Managers Lightweight Transaction Manager (LTM) Single AppDomain, single durable resource, multiple volatile, one service, maximum performance. Distributed Transaction Coordinator (DTC) Transactions across process and network, uses OleTx or WS-AT, multiple services, flows client and services transactions, system service. Kernel Transaction Manager (KTM) Vista/Longhorn only, transactional file system (TxF) & registry (TxR), uses LTM (multiple volatile resources, one service).

Transactions

Agenda What Is the Windows Communication Foundation? How Does It Work? How Do I Use and Deploy It? Bindings Addresses Contracts Transactions Security Management Integration and Extensibility

All About Security Authentication A message may incorporate a security token The security token has claims about the sender The type of security token is configured with the binding Built-in support for these token types: Windows (Kerberos or NTLM) Username (a user name & a password) X.509 certificate CardSpace tokens SAML tokens Can add support for custom token types Authorization Authorization configured w/ServiceAuthorizationBehavior Authorization options: For users authenticated using Windows tokens: Principal Permissions ASP.NET Role Provider For users authenticated using any sort of token: a ServiceAuthorization manager

Message-Level Security

Agenda What Is the Windows Communication Foundation? How Does It Work? How Do I Use and Deploy It? Bindings Addresses Contracts Transactions Security Management Integration and Extensibility

All About Management Instruments (Data & Control Points) Configuration System Tools Configuration Editor WMI Provider CIM Studio ScriptOMatic PowerShell Tracing and Logging Trace Viewer Performance Counters PerfMon Management Interface PowerShell CmdLet Management Model Microsoft Management Model Designer Integrated Management Microsoft Operations Manager 2005 Management Pack

Agenda What Is the Windows Communication Foundation? How Does It Work? How Do I Use and Deploy It? Bindings Addresses Contracts Transactions Security Management Integration and Extensibility

All About Integration COMWCF Service Monikers WCFCOM+ Use COMSVCConfig.exe to wrap COM+ app w/WCF endpoint WCF WSE 3 WCF For HTTP, use properly configured WSHttpBinding For TCP, custom TCP transport sample on NETFX3.com Remoting WCF WSE 2 WCF Remoting WCF WSE 2 Upgrade Remoting & WSE 2 components to WCF ASMX WCF ASMX Configure WCF components to use BasicHttpBinding ClientService Integration Strategy

All About Extensibility Client Code parameters Typed Proxy Channel Transport Channel byte[] Encoder Service Type parameters Dispatcher Channel Transport Channel byte[] Encoder Contract Message Inspector Custom Channel Custom Transport Custom Encoder Custom Transport Custom Channel Operation Invoker Message Formatter Parameter Inspector Message Formatter WSDL Exporter Instance Provider * Added by configuring the runtime with behaviors * Added by adding binding elements to the binding Message Inspector Parameter Inspector Operation Selector

REST and POX extensibility

Summary What Is the Windows Communication Foundation? How Does It Work? How Do I Use and Deploy It? Bindings Addresses Contracts Transactions Security Management Integration and Extensibility

António Cruz Freelancer (SAPO/PT.COM) Links