Another abandoned server code base... this is kind of an ancestor of taskrambler.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

471 lines
18 KiB

<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>A WSDL 1.1 description for XKMS</title>
<style type="text/css">
code { font-family: monospace; }
div.constraint,
div.issue,
div.note,
div.notice { margin-left: 2em; }
dt.label { display: run-in; }
li, p { margin-top: 0.3em;
margin-bottom: 0.3em; }
div.assertion { border: 4px double gray; padding: 0.5em; margin-bottom: 0.2em; }
blockquote { background-color: #eeeeee; }
spectext { background-color: #eeeeee; }
.message { background-color: #d5dee3; }
pre { margin-left: 4em}
p.diff-chg,
li.diff-chg,
h1.diff-chg,
h2.diff-chg,
h3.diff-chg,
h4.diff-chg,
h5.diff-chg,
h6.diff-chg,
td.diff-chg,
tr.diff-chg { background-color: #E47833; }
p.diff-del,
li.diff-del,
h1.diff-del,
h2.diff-del,
h3.diff-del,
h4.diff-del,
h5.diff-del,
h6.diff-del,
td.diff-del,
tr.diff-del { background-color: red; text-decoration: line-through;}
p.diff-add,
p.diff-add,
h1.diff-add,
h2.diff-add,
h3.diff-add,
h4.diff-add,
h5.diff-add,
h6.diff-add,
td.diff-add,
tr.diff-add { background-color: lime; }
table { empty-cells: show; }
div.exampleInner pre { margin-left: 1em;
margin-top: 0em; margin-bottom: 0em}
div.exampleOuter {border: 4px double gray;
margin: 0em; padding: 0em}
div.exampleInner { background-color: #d5dee3;
border-top-width: 4px;
border-top-style: double;
border-top-color: #d3d3d3;
border-bottom-width: 4px;
border-bottom-style: double;
border-bottom-color: #d3d3d3;
padding: 4px; margin: 0em }
div.exampleWrapper { margin: 4px }
div.exampleHeader { font-weight: bold;
margin: 4px}
</style>
<link rel="stylesheet" type="text/css"
href="http://www.w3.org/StyleSheets/TR/W3C-WG-NOTE" />
</head>
<body>
<div class="head">
<p><a href="http://www.w3.org/" shape="rect"><img alt="W3C" height="48"
src="http://www.w3.org/Icons/w3c_home" width="72" /></a></p>
<h1 style="clear:both" id="title">A WSDL 1.1 description for XKMS</h1>
<h2 id="W3C-doctype">W3C Working Group Note 18 November 2005</h2>
<dl>
<dt>This version:</dt>
<dd><a href="http://www.w3.org/TR/2005/NOTE-xkms-wsdl-20051118/"
shape="rect">http://www.w3.org/TR/2005/NOTE-xkms-wsdl-20051118/
</a></dd>
<dt>Latest version:</dt>
<dd><a href="http://www.w3.org/TR/xkms-wsdl/"
shape="rect">http://www.w3.org/TR/xkms-wsdl/</a></dd>
</dl>
<dl>
<dt>Authors:</dt>
<dd>Rich Salz (DataPower Technology, Inc)<br/>
Yunhao Zhang (SQLData Systems)</dd>
</dl>
<p class="copyright"><a
href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright"
shape="rect">Copyright</a> © 2005 <a href="http://www.w3.org/"
shape="rect"><acronym
title="World Wide Web Consortium">W3C</acronym></a><sup>®</sup> (<a
href="http://www.csail.mit.edu/" shape="rect"><acronym
title="Massachusetts Institute of Technology">MIT</acronym></a>, <a
href="http://www.ercim.org/" shape="rect"><acronym
title="European Research Consortium for Informatics and Mathematics">
ERCIM</acronym></a>, <a href="http://www.keio.ac.jp/" shape="rect">Keio</a>),
All Rights Reserved. W3C <a
href="http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer"
shape="rect"> liability</a>, <a
href="http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks"
shape="rect"> trademark</a> <a
href="http://www.w3.org/Consortium/Legal/copyright-documents"
shape="rect">document use</a> rules apply.</p>
</div>
<hr />
<div>
<h2 id="abstract">Abstract</h2>
<p>The <a href="http://www.w3.org/TR/2005/REC-xkms2-20050628/"
shape="rect">XML Key Management Specification (XKMS 2.0)</a>
is a <a href="http://www.w3.org/2003/06/Process-20030618/tr.html#RecsW3C">
W3C Recommendation</a> that specifies protocols for distributing and
registering public keys.</p>
<p>The XML Key Management Service (XKMS) Working Group
has defined a Web Service to handle conventional PKI (public-key
infrastructure) functions such as registration, revocation and status, as well
as related functions such as retrieval.</p>
<p>This note provides a sample <a href="http://www.w3.org/TR/wsdl"
shape="rect">Web Services Description Language (WSDL) 1.1</a> description for
an XKMS service. It is intended that XKMS developers use this as a "first
draft" for developing their own version. Conversion to
<a href="http://www.w3.org/2002/ws/desc/" shape="rect">WSDL 2.0</a> should be
fairly straightforward, once that specification completes its <a
href="http://www.w3.org/2004/02/Process-20040205/tr.html#last-call"
shape="rect">Last Call</a>.
</p>
</div>
<div>
<h2 id="status">Status of this document</h2>
<p><em>This section describes the status of this document at the time of its
publication. Other documents may supersede this document. A list of current
W3C publications and the latest revision of this technical report can be
found in the <a href="http://www.w3.org/TR/" shape="rect">W3C technical
reports index</a> at http://www.w3.org/TR/.</em></p>
<p>This is the 18 November 2005 Working Group Note of "A WSDL 1.1
description for XKMS". This document was developed by the <a
href="http://www.w3.org/2001/XKMS/" shape="rect">XML Key Management
Working Group</a>. It is intended to provide a WSDL 1.1 description that
XKMS implementors may find useful. It is being published as the XKMS
Working Group concludes, and has no normative status.</p>
<p>This document is a Working Group Note made available by W3C for
discussion only. Publication of this Note by W3C does not imply
endorsement by W3C, including the Team and Membership. No W3C
resources were, are, or will be allocated to the issues addressed by
this W3C Working Group Note.</p>
<p>While the XKMS Working Group has completed its chartered work
items, we expect that the mailing list will remain active for some
time. Please send comments about this document to <a
href="mailto:www-xkms@w3.org" shape="rect">www-xkms@w3.org</a> (with
<a href="http://lists.w3.org/Archives/Public/www-xkms/"
shape="rect">public archive</a>).</p>
<p>As of this publication, the Working Group does not expect this document to
become a W3C Recommendation, and therefore it has no associated <a
href="http://www.w3.org/Consortium/Patent-Policy-20040205/" shape="rect">W3C
Patent Policy</a> licensing obligations. If this expectation changes, the
Working Group or its sucessors will have an opportunity to fulfill the
associated patent policy requirements with respect to a future draft.</p>
<p>This document was developed under no patent policy.</p>
<p><em>Publication as a Working Group Note does not imply endorsement by
the W3C Membership. This is a draft document and may be updated,
replaced or obsoleted by other documents at any time. It is
inappropriate to cite this document as other than work in
progress.</em></p>
</div>
<div class="toc">
<h2 id="toc">Table of Contents</h2>
<div class="toc1">1. <a href="#intro">Introduction</a></div>
<div class="toc1">2. <a href="#wsdl">WSDL file</a></div>
<div class="toc1">3. <a href="#sec-References">References</a></div>
</div>
<div class="body">
<h2><a name="intro"></a>1. Introduction</h2>
<p>The <a href="http://www.w3.org/TR/xkms2/#XKMS_2_0_Section_9"
shape="rect">XKMS</a> recommendation does not define a mechanism
for resource discovery, such as specifying the set of operations
supported. It suggests that a client consult metadata such as a
WSDL description. This note provides a definition that might be
useful to implementors.</p>
<p>Since XKMS uses a conventional request-response message exchange
pattern, the WSDL file is very straightforward. In fact, a server
that implemented the entire service would most likely only have to
change two parameters. The first is the URL where the service may
be reached. A single XKMS service may wish to expose one URL for
all domains that it processes, or a separate URL for each one. The
second is the value of the <code>SOAPAction</code> HTTP header,
which is often not significant anyway. </p>
<p>Note, however, that many important operational and policy details
are not exposed in the WSDL file, even though it is a natural place
to do so. For example, an extension within the definition of the
<code>Register</code> element could be used to specify the supported
key sizes. Currently, this type of information must be exchanged
out of band, and implied by the <code>Service</code> attribute.</p>
<h2><a name="wsdl"></a>2. WSDL file</h2>
<p>Note that the definition below uses two entities which must either
be replaced inline or defined with a DTD:</p>
<dl>
<dt><code>soapaction</code></dt>
<dd>The value to be used in the HTTP <code>SOAPAction</code> header.</dd>
<dt><code>serviceURL</code></dt>
<dd>The URL where the service can be reached.</dd>
</dl>
<p>An XML version of this file may be found at
<a href="http://www.w3.org/TR/xkms2/Schemas/xkms.wsdl" shape="rect">
http://www.w3.org/TR/xkms2/Schemas/xkms.wsdl</a>
</p>
<pre>
<code>
&lt;?xml version="1.0"?&gt;
&lt;wsdl:definitions name="XMLKeyManagement"
targetNamespace="http://www.w3.org/2002/03/xkms#wsdl"
xmlns:tns="http://www.w3.org/2002/03/xkms#wsdl"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:xkms="http://www.w3.org/2002/03/xkms#"&gt;
&lt;import namespace="http://www.w3.org/2002/03/xkms#"
location='http://www.w3.org/TR/xkms2/Schemas/xkms.xsd'/&gt;
&lt;message name="PendingRequest"&gt;
&lt;part name="body" element="xkms:PendingRequest"/&gt;
&lt;/message&gt;
&lt;message name="PendingResult"&gt;
&lt;part name="body" element="xkms:Result"/&gt;
&lt;/message&gt;
&lt;message name="CompoundRequest"&gt;
&lt;part name="body" element="xkms:CompoundRequest"/&gt;
&lt;/message&gt;
&lt;message name="CompoundResult"&gt;
&lt;part name="body" element="xkms:CompoundResult"/&gt;
&lt;/message&gt;
&lt;message name="StatusRequest"&gt;
&lt;part name="body" element="xkms:StatusRequest"/&gt;
&lt;/message&gt;
&lt;message name="StatusResult"&gt;
&lt;part name="body" element="xkms:StatusResult"/&gt;
&lt;/message&gt;
&lt;message name="LocateRequest"&gt;
&lt;part name="body" element="xkms:LocateRequest"/&gt;
&lt;/message&gt;
&lt;message name="LocateResult"&gt;
&lt;part name="body" element="xkms:LocateResult"/&gt;
&lt;/message&gt;
&lt;message name="ValidateRequest"&gt;
&lt;part name="body" element="xkms:ValidateRequest"/&gt;
&lt;/message&gt;
&lt;message name="ValidateResult"&gt;
&lt;part name="body" element="xkms:ValidateResult"/&gt;
&lt;/message&gt;
&lt;message name="RegisterRequest"&gt;
&lt;part name="body" element="xkms:RegisterRequest"/&gt;
&lt;/message&gt;
&lt;message name="RegisterResult"&gt;
&lt;part name="body" element="xkms:RegisterResult"/&gt;
&lt;/message&gt;
&lt;message name="ReissueRequest"&gt;
&lt;part name="body" element="xkms:ReissueRequest"/&gt;
&lt;/message&gt;
&lt;message name="ReissueResult"&gt;
&lt;part name="body" element="xkms:ReissueResult"/&gt;
&lt;/message&gt;
&lt;message name="RevokeRequest"&gt;
&lt;part name="body" element="xkms:RevokeRequest"/&gt;
&lt;/message&gt;
&lt;message name="RevokeResult"&gt;
&lt;part name="body" element="xkms:RevokeResult"/&gt;
&lt;/message&gt;
&lt;message name="RecoverRequest"&gt;
&lt;part name="body" element="xkms:RecoverRequest"/&gt;
&lt;/message&gt;
&lt;message name="RecoverResult"&gt;
&lt;part name="body" element="xkms:RecoverResult"/&gt;
&lt;/message&gt;
&lt;portType name="XKMSPortType"&gt;
&lt;operation name="Pending"&gt;
&lt;input message="tns:PendingRequest"/&gt;
&lt;output message="tns:PendingResult"/&gt;
&lt;/operation&gt;
&lt;operation name="Compound"&gt;
&lt;input message="tns:CompoundRequest"/&gt;
&lt;output message="tns:CompoundResult"/&gt;
&lt;/operation&gt;
&lt;operation name="Status"&gt;
&lt;input message="tns:StatusRequest"/&gt;
&lt;output message="tns:StatusResult"/&gt;
&lt;/operation&gt;
&lt;operation name="Locate"&gt;
&lt;input message="tns:LocateRequest"/&gt;
&lt;output message="tns:LocateResult"/&gt;
&lt;/operation&gt;
&lt;operation name="Validate"&gt;
&lt;input message="tns:ValidateRequest"/&gt;
&lt;output message="tns:ValidateResult"/&gt;
&lt;/operation&gt;
&lt;operation name="Register"&gt;
&lt;input message="tns:RegisterRequest"/&gt;
&lt;output message="tns:RegisterResult"/&gt;
&lt;/operation&gt;
&lt;operation name="Reissue"&gt;
&lt;input message="tns:ReissueRequest"/&gt;
&lt;output message="tns:ReissueResult"/&gt;
&lt;/operation&gt;
&lt;operation name="Revoke"&gt;
&lt;input message="tns:RevokeRequest"/&gt;
&lt;output message="tns:RevokeResult"/&gt;
&lt;/operation&gt;
&lt;operation name="Recover"&gt;
&lt;input message="tns:RecoverRequest"/&gt;
&lt;output message="tns:RecoverResult"/&gt;
&lt;/operation&gt;
&lt;/portType&gt;
&lt;binding name="SOAPBinding" type="tns:XKMSPortType"&gt;
&lt;wsdlsoap:binding
transport="http://schemas.xmlsoap.org/soap/http" style="document"/&gt;
&lt;operation name="Pending"&gt;
&lt;wsdlsoap:operation soapAction="&amp;soapaction;"/&gt;
&lt;input message="tns:PendingRequest"&gt;
&lt;wsdlsoap:body use="literal"/&gt;
&lt;/input&gt;
&lt;output message="tns:PendingResult"&gt;
&lt;wsdlsoap:body use="literal"/&gt;
&lt;/output&gt;
&lt;/operation&gt;
&lt;operation name="Compound"&gt;
&lt;wsdlsoap:operation soapAction="&amp;soapaction;"/&gt;
&lt;input message="tns:CompoundRequest"&gt;
&lt;wsdlsoap:body use="literal"/&gt;
&lt;/input&gt;
&lt;output message="tns:CompoundResult"&gt;
&lt;wsdlsoap:body use="literal"/&gt;
&lt;/output&gt;
&lt;/operation&gt;
&lt;operation name="Status"&gt;
&lt;wsdlsoap:operation soapAction="&amp;soapaction;"/&gt;
&lt;input message="tns:StatusRequest"&gt;
&lt;wsdlsoap:body use="literal"/&gt;
&lt;/input&gt;
&lt;output message="tns:StatusResult"&gt;
&lt;wsdlsoap:body use="literal"/&gt;
&lt;/output&gt;
&lt;/operation&gt;
&lt;operation name="Locate"&gt;
&lt;wsdlsoap:operation soapAction="&amp;soapaction;"/&gt;
&lt;input message="tns:LocateRequest"&gt;
&lt;wsdlsoap:body use="literal"/&gt;
&lt;/input&gt;
&lt;output message="tns:LocateResult"&gt;
&lt;wsdlsoap:body use="literal"/&gt;
&lt;/output&gt;
&lt;/operation&gt;
&lt;operation name="Validate"&gt;
&lt;wsdlsoap:operation soapAction="&amp;soapaction;"/&gt;
&lt;input message="tns:ValidateRequest"&gt;
&lt;wsdlsoap:body use="literal"/&gt;
&lt;/input&gt;
&lt;output message="tns:ValidateResult"&gt;
&lt;wsdlsoap:body use="literal"/&gt;
&lt;/output&gt;
&lt;/operation&gt;
&lt;operation name="Register"&gt;
&lt;wsdlsoap:operation soapAction="&amp;soapaction;"/&gt;
&lt;input message="tns:RegisterRequest"&gt;
&lt;wsdlsoap:body use="literal"/&gt;
&lt;/input&gt;
&lt;output message="tns:RegisterResult"&gt;
&lt;wsdlsoap:body use="literal"/&gt;
&lt;/output&gt;
&lt;/operation&gt;
&lt;operation name="Reissue"&gt;
&lt;wsdlsoap:operation soapAction="&amp;soapaction;"/&gt;
&lt;input message="tns:ReissueRequest"&gt;
&lt;wsdlsoap:body use="literal"/&gt;
&lt;/input&gt;
&lt;output message="tns:ReissueResult"&gt;
&lt;wsdlsoap:body use="literal"/&gt;
&lt;/output&gt;
&lt;/operation&gt;
&lt;operation name="Revoke"&gt;
&lt;wsdlsoap:operation soapAction="&amp;soapaction;"/&gt;
&lt;input message="tns:RevokeRequest"&gt;
&lt;wsdlsoap:body use="literal"/&gt;
&lt;/input&gt;
&lt;output message="tns:RevokeResult"&gt;
&lt;wsdlsoap:body use="literal"/&gt;
&lt;/output&gt;
&lt;/operation&gt;
&lt;operation name="Recover"&gt;
&lt;wsdlsoap:operation soapAction="&amp;soapaction;"/&gt;
&lt;input message="tns:RecoverRequest"&gt;
&lt;wsdlsoap:body use="literal"/&gt;
&lt;/input&gt;
&lt;output message="tns:RecoverResult"&gt;
&lt;wsdlsoap:body use="literal"/&gt;
&lt;/output&gt;
&lt;/operation&gt;
&lt;/binding&gt;
&lt;service name="XKMSService"&gt;
&lt;port name="XKMSPort" binding="tns:SOAPBinding"&gt;
&lt;wsdlsoap:address location="&amp;serviceURL;"/&gt;
&lt;/port&gt;
&lt;/service&gt;
&lt;/wsdl:definitions&gt;
</code>
</pre>
<h2><a name="sec-References" id="sec-References"></a>3. References</h2>
<dl>
<dt class="label"><a name="ref-wsdl" id="ref-wsdl"></a>Web Services Description Language
(WSDL)</dt>
<dd> E. Christensen et al. W3C Note 15 March 2001 <a
href="http://www.w3.org/TR/2001/NOTE-wsdl-20010315">http://www.w3.org/TR/2001/NOTE-wsdl-20010315</a>.</dd>
<dt class="label"><a name="XKMS"></a>XML Key
Management Specification (XKMS 2.0)</dt><dd> P. Hallam-Baker and
S. Mysore, Editors. W3C Recommendation, 28 June 2005, <a href="http://www.w3.org/TR/2005/REC-xkms2-20050628/">http://www.w3.org/TR/2005/REC-xkms2-20050628/</a>.
</dd>
</dl>
</div>
</body>
</html>