Service Description: Addressing & Policy COMP6017 Topics on Web Services Dr Nicholas Gibbins – 2012-2013.

Slides:



Advertisements
Similar presentations
Oct, 26 th, 2010 OGF 30, NSI-WG: Network Service Interface working group Web Services Overview Web Services for NSI protocol implementation
Advertisements

Primer Maryann Hondo, IBM Umit Yalcinalp, SAP. Current Proposal Introduction The WS-Policy specification defines a policy to be a collection of policy.
® IBM Software Group © IBM Corporation WS-Policy Attachment- spec overview Maryann Hondo IBM.
Web Service Architecture
Siebel Web Services Siebel Web Services March, From
Service Description: WSDL COMP6017 Topics on Web Services Dr Nicholas Gibbins –
Claus von Riegen, SAP AG WS-Policy Overview W3C Workshop on Constraints and Capabilities for Web Services.
WS – Security Policy Prabath Siriwardena Director, Security Architecture.
Web Service Ahmed Gamal Ahmed Nile University Bioinformatics Group
1 Understanding Web Services Presented By: Woodas Lai.
Web Services Seminar: Service Description Languages
Web Services Nasrullah. Motivation about web service There are number of programms over the internet that need to communicate with other programms over.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 1 Distributed Systems Design 2.
EGEE is a project funded by the European Union under contract IST WSDL Web Service Description Language 3 – 4 June
SOA and Web Services. SOA Architecture Explaination Transport protocols - communicate between a service and a requester. Messaging layer - enables the.
1 Introduction to XML. XML eXtensible implies that users define tag content Markup implies it is a coded document Language implies it is a metalanguage.
Presentation 7 part 2: SOAP & WSDL. Ingeniørhøjskolen i Århus Slide 2 Outline Building blocks in Web Services SOA SOAP WSDL (UDDI)
Latest techniques and Applications in Interprocess Communication and Coordination Xiaoou Zhang.
XML Technologies and Applications Rajshekhar Sunderraman Department of Computer Science Georgia State University Atlanta, GA 30302
Grid Computing, B. Wilkinson, 20043a.1 WEB SERVICES Introduction.
Web Services Seppo Heikkinen MITA seminar/TUT
WS-PolicyNegotiate A Web Service Standard for Policy Negotiation by Nicholis Bufmack.
CSE 636 Data Integration Web Services.
WSDL Web Services Description Language Neet Wadhwani University of Colorado 3 rd October, 2001.
Secure Systems Research Group - FAU Web Services Standards Presented by Keiko Hashizume.
SOAP, WSDL, UDDI. Service Broker Basic SOAP Message Exchange Service Consumer Service Provider http transport SOAP message WSDL describing service SOAP.
Chapter 9 Web Services Architecture and XML. Objectives By study in the chapter, you will be able to: Describe what is the goal of the Web services architecture.
T Network Application Frameworks and XML Web Services and WSDL Sasu Tarkoma Based on slides by Pekka Nikander.
I hereby declare that this document is based on my project experience. To the best of my knowledge, this document does not contain any material that infringes.
The Semantic Web Service Shuying Wang Outline Semantic Web vision Core technologies XML, RDF, Ontology, Agent… Web services DAML-S.
Web Services (SOAP, WSDL, and UDDI)
James Holladay, Mario Sweeney, Vu Tran. Web Services Presentation Web Services Theory James Holladay Tools – Visual Studio Vu Tran Tools – Net Beans Mario.
Web Services Description Language (WSDL) Jason Glenn CDA 5937 Process Coordination in Service and Computational Grids September 30, 2002.
WEB SERVICE DESCRIPTION LANGUAGE ( WSDL) -SIVA SAGAR TELLA.
Web Services Week 7 Aims: A detailed look at the underlying mechanisms for communication between web services Objectives: SOAP, WSDL, UDDI.
Web Services Description Language CS409 Application Services Even Semester 2007.
Dodick Zulaimi Sudirman Lecture 14 Introduction to Web Service Pengantar Teknologi Internet Introduction to Internet Technology.
Web Services Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester,
Web Services Standards. Introduction A web service is a type of component that is available on the web and can be incorporated in applications or used.
1 Web Service Description Language (WSDL) 大葉大學資工系.
Chapter 10 Intro to SOAP and WSDL. Objectives By study in the chapter, you will be able to: Describe what is SOAP Exam the rules for creating a SOAP document.
1 Web Services Web and Database Management System.
Kemal Baykal Rasim Ismayilov
Web Service Resource Framework WSMO Presentation Jos de Bruijn Digital Enterprise Research Institute http ://
WSDL – Web Service Definition Language  WSDL is used to describe, locate and define Web services.  A web service is described by: message format simple.
Module: Software Engineering of Web Applications Chapter 2: Technologies 1.
Using WS-I to Build Secure Applications Anthony Nadalin Web Services Interoperability Organization (WS-I) Copyright 2008, WS-I, Inc. All rights reserved.
Slide 1 Service-centric Software Engineering. Slide 2 Objectives To explain the notion of a reusable service, based on web service standards, that provides.
Web services. Introduction to WSDL. February 23, 2006.
The goal of XML Protocol Develop technologies allowing peers to communicate…....in a distributed environment......using XML as encapsulation language.
1 WSDL Web Services Description Language. 2 Goals of WSDL Describes the formats and protocols of a Web Service in a standard way –The operations the service.
Introduction to Web Services Presented by Sarath Chandra Dorbala.
1 WS-Policy. 2 What’s the Problem? To use a web service a client needs more information than is provided in WSDL file. Examples: –Does service support.
Lecture VI: SOAP-based Web Service CS 4593 Cloud-Oriented Big Data and Software Engineering.
1 G52IWS: Web Services Description Language (WSDL) Chris Greenhalgh
Web Services. XML Namespaces, Schemas XML processing. Week 2.
SOAP, Web Service, WSDL Week 14 Web site:
SE 548 Process Modelling WEB SERVICE ORCHESTRATION AND COMPOSITION ÖZLEM BİLGİÇ.
© 2005 Global Grid Forum The information contained herein is subject to change without notice Leading the pervasive adoption of grid computing for research.
Topics on Web Services COMP6017 Dr Nicholas Gibbins –
Software Architecture Patterns (3) Service Oriented & Web Oriented Architecture source: microsoft.
WS-Resource Framework University of Amsterdam
Florida Atlantic University Department of Electrical and Computer Engineering &Computer Science ( ECECS ) &Computer Science ( ECECS ) Security Systems.
Sabri Kızanlık Ural Emekçi
T Network Application Frameworks and XML Web Services and WSDL Sasu Tarkoma Based on slides by Pekka Nikander.
Service-centric Software Engineering
W3C Workshop WS-Policy in the Web Service Architecture
Presentation transcript:

Service Description: Addressing & Policy COMP6017 Topics on Web Services Dr Nicholas Gibbins –

WS-Addressing 2

Goal of WS-Addressing Aim is to make Web Services support : –A wide range of transport protocols –Asynchronous communication –Dynamic end point addressing Defines a small set of tags Last update on the specification March,2004

Transport Protocol Neutral SOAP Classic SOAP example to execute Stock Price Web Service: The type of the message being conveyed is SOAP Host URI SOAP Action SOAP Message is dependent on the transport protocol!

Transport Protocol Neutral SOAP To make SOAP transport protocol neutral use and tags…

Asynchronous Web Services WSDL defines one-way, request-response, solicit response, and notification messaging behaviours –Normally, when a response is made, it is assumed that this response will be conveyed by the already opened HTTP Channel. –Therefore currently there is no standard support to achieve asynchronous communication between Web Services WS-Addressing adds,,,,

Asynchronous Web Services current message has id “uuid:someid” and it is related with another message that has id “uuid:someotherid” and the type of the relationship is “Reply” The address of the sender of the message, the addresses for return reply or fault messages are given

Endpoints,, tags convey an “EndpointReference” Endpoint is any addressable resource to which SOAP message can be sent (Web Service client or application, a SOAP router or any SOAP aware entity The most logical way to include endpoints is to use WSDL “Service” element, however WSDL does not allow extensibility of this element, therefore EndpointReference is defined. EndpointReference may be used in WSDL

Endpoints “EndpointReference” includes the following schema: –Address is an URI that identifies the endpoint –ReferenceProperties may contain the individual properties that are required to identify the entity or resource being conveyed –PortType is the same as the one in WSDL –ServiceName is the same as in WSDL –Policy contains some number of policy elements described in WS- Policy

–EndpointReference extends Service by adding ReferenceProperties and Policy elements –Address, ServiceName, PortName and PortType are already included in WSDL Service element EndpointReference vs. Service

WS-Addressing Constructs 11 WS-Addressing defines two constructs to convey information that is typically provided by transport protocols and messaging systems: –EndpointReference –provides dynamic endpoints –Message Information Header –provides asynchronous transport-neutral communications

EndpointReference 12

Message Information Header 13

Associating Action with WSDL Operations *Example from WSDL 1.1 Specification Normally, it is possible to define SOAPaction with WSDL “binding”

Associating Action with WSDL Operations 15 WS-Addressing defines the following to associate the actions with WSDL operations: –The action for the input of the GetLastTradePrice operation within the StockQuotePortType is explicitly defined to be

Fault Codes Some fault codes are defined (the same logic in HTTP, i.e. 404 file not found) Fault schema of SOAP is extended Defined faults: –Endpoint Unavailable, –Action Not Supported, –Destination Unreachable, –Message Information Header Required, –Invalid Message Information Header

WS-Policy 17

Web Services Model CreatePurchaseOrderRequest CreatePurchaseOrderResponse Provider Consumer Broker (UDDI) Create Purchase Order SOAP/HTTP PublishService FindService PublishServiceMetadata (e.g. WSDL location) FindServiceResponse FindServiceRequest

Expressiveness –Describe any Web service constraint and capability –Carry parameters –Provide mechanism to specify compositions and alternatives Robustness –Don’t change whenever new Web service constraints and capabilities are developed Policy Language Requirements

Composeability –Attach policy to WSDL elements and UDDI entities –Associate policy with WS-Addressing Endpoint References Non-Goals –Domain-specific policy attributes –Policy exchange model

Policy Normal Form WS-Policy Information Model Policy Expression Collection of alternatives (“pick one”) Policy Alternative Collection of assertions (“do all”) Policy Assertion Domain-specific behavior

Compact Form – Nested Operators and operators can be nested arbitrarily –Transformation to normal form using set theory (commutativity, associativity, idempotency, distributivity) Example – distributes over  Is equivalent to

Compact Form – Optional Attribute Assertions may carry the wsp:Optional attribute –An alternative with and an alternative without the assertion – Simplification of prior wsp:Usage attribute Example...  Is equivalent to

Compact Form – Reference Mechanism URI-based policy identification mechanism – wsu:ID attribute is used to specify a fragment identifier

Compact Form – Reference Mechanism element to reuse common expressions wsse:X509v3

Intersection Do two Web service endpoints have compatible policies? – At design time to “ wire together ” compatible services –At runtime to select compatible options

Intersection Compatibility of alternatives –It is necessary that alternatives at least have the same assertion types –Assertion-specific intersection needs to be determined per assertion type ? ?

Runtime Intersection RequesterProvider Get Metadata (To: P)' To: P R out P in Intersect Alternative Apply Validate Policy used by R to send messages out Policy used by P to receive messages in

WS-PolicyAttachment 29

Web Services Policy Attachment Association of policies with Web service subjects Subject type –Arbitrary XML elements –WSDL elements –UDDI entities

Web Services Policy Attachment Association type –Internal association (see next slide) –External association –PolicyAttachment associates policy to domain expressions (identified by URI) –Domain expression can be WS-Addressing endpoint ref. + ( | ) +

Policy references are made via global attributes or PolicyReference element as defined in WS-Policy Policy references can be made to policy expressions defined inline, e.g. in wsdl:definitions section Attaching Policy to WSDL Policy WSDL P

Policy references are made via UDDI categorization mechanism Policy expressions are always remote to UDDI entities Reusable policy expressions can be registered as distinct tModels Policy-based discovery is limited to policy expression URIs Attaching Policy to UDDI UDDI Policy UDDI Policy

Effective Policy Calculation Policy merged ServicePolicySubjectEndpointPolicySubjectOperationPolicySubjectMessagePolicySubject

Merging Example... StockQuoteSoapBinding Policy = "RM" & "AUDIT" GetLastTradePriceRequest Input Binding Policy = "DSIG" & "TOK"

Policy Subject Types Message Policy CreatePurchaseOrderRequest CreatePurchaseOrderResponse CreatePurchaseOrder GetProductCatalogRequest GetProductCatalogResponse GetProductCatalog SOAP/HTTP SMTP SOAP/HTTP Provider Policy Service Policy Endpoint Policy Operation Policy ProviderRequester

Policy Assertions Policy assertions are domain-specific –Strongly typed –Separate XML schema (syntax) and specification (semantics) –Arbitrary nested structure of XML elements and attributes –Allows modeling of domain-specific complexity –Separate namespace Assertion complexity – Simple assertions – Parameterized assertions

Consequences for Policy Processors Support WS-Policy syntax directly Delegate policy assertion processing to assertion-specific handlers –Assertion-specific intersection, merge, and validation

Peer-to-peer -Consumer retrieves policy from provider (e.g. WS- MetadataExchange) Brokered approach -Provider publishes policy to broker (e.g. UDDI) -Consumers subscribe to Web services used -Broker notifies consumers in case changes occur Policy Exchange ProviderConsumer P Broker Consumer P'

WS-Policy Roadmap Republished September 2004 –WS-Policy & WS-PolicyAttachments –Initial Interoperability Testing –Merging, Intersection, Normalization, Effective Policy Calculation –Live endpoints available Next steps –Demonstrate Interoperability enabled by WS-Policy –Using domain-specific scenario –Co-authors will develop a standardization plan –WS-Policy is already published with royalty-free licensing terms –WS-Policy will be submitted to a standards body