220 likes | 356 Views
SOW & WSE. Tsai, Meng-Ru Consultant Microsoft Technologies Centre Microsoft Taiwan Corp. Agenda. Service-Oriented Architecture Introduction Web Service Introduction and WSE. SOA. Service-Oriented Architecture
E N D
SOW & WSE Tsai, Meng-Ru Consultant Microsoft Technologies Centre Microsoft Taiwan Corp.
Agenda • Service-Oriented Architecture Introduction • Web Service Introduction and WSE
SOA • Service-Oriented Architecture • A set of components which can be invoked, and whose interface descriptions can be published and discovered (W3C). • Services can be invoked, published and discovered, and are abstracted away from the implementation using a single, standards-based form of interface. (CBDI)
“Scales Away” spans organizations and geographies “Scales Out” by adding machines “Scales Up” on large systems “Scales In” on a machine “Scales Down” to devices Services Everywhere
Form-Factor Friendly Doesn’t require centralized services Unlocks rich client assets Empowers users with high-end communications Low-cost devices via the PC… Flexible, end-to-end security Dynamic protocol negotiation
How to approach SOA? • Be Incremental • Crawl, Walk, Run • Identify key services for building a connected system • Build Web service façades in front of them • Exploit the value of those services with Smart Clients and Business Processes • Evolve apps behind façade as necessary
Agenda • Service-Oriented Architecture Introduction • Web Service Introduction and WSE
Web Services • See What Web Services Can Do for You • Built on industry standards, Web Services provide a means for software to interoperate across programming languages, platforms and operating systems. • Loosely Coupled • Popular Communication • Generic Data Format • Classic Web Service limitations • No WS-* implementations • Lack of non-functional requirements of SOA (Security, Transaction, Large transmission data, Stateful Session, etc)
Web Service Enhancements • WSE is an extension to the .NET Framework • Provides support for several WS-* specs • Can be used to extend ASMX behavior • Fully integrated with Visual Studio 2005 • Fully supported product with customer support
Communication Security • Authentication • Message Integrity • Confidentiality
Secure CommunicationProtocol-level security • Sender must trust intermediaries • Message decrypted at intermediaries • Encrypts the entire message • Restricts protocols that can be used Encrypted Encrypted
Secure CommunicationMessage-level security • End-to-end message security independent of transport • Supports multiple protocols and multiple encryption technologies • Can encrypt parts of the message • Sender need only trust ultimate receiver • The signature is stored with the data
Turnkey Security Scenarios • Based on industry best practices • Each scenario represented as an assertion • UsernameOverX509 • AnnonymousOverX509 • UsernameOverTransport • Kerberos • MutualX509
Policy Pipeline Architecture Policy assertions transform the message Policy describes an input pipeline Input Soap Message Custom Tracing Security Application Processing Output Soap Message Custom Security Tracing … and an output Pipeline
Security Simplify Reduction Client Server Message-Level Security for Large Amounts of Data Message Transmission Optimization Mechanism (MTOM)
Sessions with Secure Conversation • Asymmetric keys (X509 Certificates) are slow for multiple messages • WS-SecureConversation defines a Security Context Token (SCT) • A messaging optimization • Faster for multiple calls (client makes > 2) Request for SCT SCT Issued to client Client Server Multiple messages Signed and encrypted with SCT
WSE 3.0 Session Management • Stateful SCTs • WSE 2.0 required the service to maintain an SCT’s state • In WSE 3.0 the state may be preserved with the SCT • Enables SCTs to re-establish the session • SCT Cancellation • In WSE 2.0 SCTs have a timeout • WSE 3.0 provides the ability to cancel a session
Re-Establishing Sessions SCT State SCT State Request for SCT SCT Issued to client Session Re-Established Client Request Multiple messages Signed and encrypted with SCT Server Client
Which Specs? WS-*? W3C? • Reliable Messaging Specifications • WS-ReliableMessaging • Transaction Specifications • WS-Coordination • WS-AtomicTransaction • WS-BusinessActivity • Metadata Specifications • WSDL • UDDI • WS-Policy • WS-PolicyAssertions • WS-PolicyAttachment • WS-SecurityPolicy • WS-Discovery • WS-MetadataExchange • XML Specifications • XML • Namespaces in XML • XML Information Set • Business Process Specifications • BPEL4WS • Messaging Specifications • SOAP • WS-Addressing • MTOM (Attachments) • WS-Eventing • Security Specifications • Web Services Security: SOAP Message Security • Web Services Security: UsernameToken Profile 1.0 • Web Services Security: X.509 Certificate Token Profile • WS-Security • WS-SecureConversation • WS-Trust • WS-Federation • WS-Federation Active Requestor Profile • WS-Federation Passive Requestor Profile • Web Services Security Kerberos Binding • Specification Profiles • Devices Profile Source: http://msdn.microsoft.com/webservices/understanding/specs/wslicensing.aspx