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
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>
|
|
<?xml version="1.0"?>
|
|
|
|
<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#">
|
|
|
|
<import namespace="http://www.w3.org/2002/03/xkms#"
|
|
location='http://www.w3.org/TR/xkms2/Schemas/xkms.xsd'/>
|
|
|
|
<message name="PendingRequest">
|
|
<part name="body" element="xkms:PendingRequest"/>
|
|
</message>
|
|
<message name="PendingResult">
|
|
<part name="body" element="xkms:Result"/>
|
|
</message>
|
|
<message name="CompoundRequest">
|
|
<part name="body" element="xkms:CompoundRequest"/>
|
|
</message>
|
|
<message name="CompoundResult">
|
|
<part name="body" element="xkms:CompoundResult"/>
|
|
</message>
|
|
<message name="StatusRequest">
|
|
<part name="body" element="xkms:StatusRequest"/>
|
|
</message>
|
|
<message name="StatusResult">
|
|
<part name="body" element="xkms:StatusResult"/>
|
|
</message>
|
|
<message name="LocateRequest">
|
|
<part name="body" element="xkms:LocateRequest"/>
|
|
</message>
|
|
<message name="LocateResult">
|
|
<part name="body" element="xkms:LocateResult"/>
|
|
</message>
|
|
<message name="ValidateRequest">
|
|
<part name="body" element="xkms:ValidateRequest"/>
|
|
</message>
|
|
<message name="ValidateResult">
|
|
<part name="body" element="xkms:ValidateResult"/>
|
|
</message>
|
|
<message name="RegisterRequest">
|
|
<part name="body" element="xkms:RegisterRequest"/>
|
|
</message>
|
|
<message name="RegisterResult">
|
|
<part name="body" element="xkms:RegisterResult"/>
|
|
</message>
|
|
<message name="ReissueRequest">
|
|
<part name="body" element="xkms:ReissueRequest"/>
|
|
</message>
|
|
<message name="ReissueResult">
|
|
<part name="body" element="xkms:ReissueResult"/>
|
|
</message>
|
|
<message name="RevokeRequest">
|
|
<part name="body" element="xkms:RevokeRequest"/>
|
|
</message>
|
|
<message name="RevokeResult">
|
|
<part name="body" element="xkms:RevokeResult"/>
|
|
</message>
|
|
<message name="RecoverRequest">
|
|
<part name="body" element="xkms:RecoverRequest"/>
|
|
</message>
|
|
<message name="RecoverResult">
|
|
<part name="body" element="xkms:RecoverResult"/>
|
|
</message>
|
|
|
|
<portType name="XKMSPortType">
|
|
<operation name="Pending">
|
|
<input message="tns:PendingRequest"/>
|
|
<output message="tns:PendingResult"/>
|
|
</operation>
|
|
<operation name="Compound">
|
|
<input message="tns:CompoundRequest"/>
|
|
<output message="tns:CompoundResult"/>
|
|
</operation>
|
|
<operation name="Status">
|
|
<input message="tns:StatusRequest"/>
|
|
<output message="tns:StatusResult"/>
|
|
</operation>
|
|
<operation name="Locate">
|
|
<input message="tns:LocateRequest"/>
|
|
<output message="tns:LocateResult"/>
|
|
</operation>
|
|
<operation name="Validate">
|
|
<input message="tns:ValidateRequest"/>
|
|
<output message="tns:ValidateResult"/>
|
|
</operation>
|
|
<operation name="Register">
|
|
<input message="tns:RegisterRequest"/>
|
|
<output message="tns:RegisterResult"/>
|
|
</operation>
|
|
<operation name="Reissue">
|
|
<input message="tns:ReissueRequest"/>
|
|
<output message="tns:ReissueResult"/>
|
|
</operation>
|
|
<operation name="Revoke">
|
|
<input message="tns:RevokeRequest"/>
|
|
<output message="tns:RevokeResult"/>
|
|
</operation>
|
|
<operation name="Recover">
|
|
<input message="tns:RecoverRequest"/>
|
|
<output message="tns:RecoverResult"/>
|
|
</operation>
|
|
</portType>
|
|
|
|
<binding name="SOAPBinding" type="tns:XKMSPortType">
|
|
<wsdlsoap:binding
|
|
transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
|
|
<operation name="Pending">
|
|
<wsdlsoap:operation soapAction="&soapaction;"/>
|
|
<input message="tns:PendingRequest">
|
|
<wsdlsoap:body use="literal"/>
|
|
</input>
|
|
<output message="tns:PendingResult">
|
|
<wsdlsoap:body use="literal"/>
|
|
</output>
|
|
</operation>
|
|
<operation name="Compound">
|
|
<wsdlsoap:operation soapAction="&soapaction;"/>
|
|
<input message="tns:CompoundRequest">
|
|
<wsdlsoap:body use="literal"/>
|
|
</input>
|
|
<output message="tns:CompoundResult">
|
|
<wsdlsoap:body use="literal"/>
|
|
</output>
|
|
</operation>
|
|
<operation name="Status">
|
|
<wsdlsoap:operation soapAction="&soapaction;"/>
|
|
<input message="tns:StatusRequest">
|
|
<wsdlsoap:body use="literal"/>
|
|
</input>
|
|
<output message="tns:StatusResult">
|
|
<wsdlsoap:body use="literal"/>
|
|
</output>
|
|
</operation>
|
|
<operation name="Locate">
|
|
<wsdlsoap:operation soapAction="&soapaction;"/>
|
|
<input message="tns:LocateRequest">
|
|
<wsdlsoap:body use="literal"/>
|
|
</input>
|
|
<output message="tns:LocateResult">
|
|
<wsdlsoap:body use="literal"/>
|
|
</output>
|
|
</operation>
|
|
<operation name="Validate">
|
|
<wsdlsoap:operation soapAction="&soapaction;"/>
|
|
<input message="tns:ValidateRequest">
|
|
<wsdlsoap:body use="literal"/>
|
|
</input>
|
|
<output message="tns:ValidateResult">
|
|
<wsdlsoap:body use="literal"/>
|
|
</output>
|
|
</operation>
|
|
<operation name="Register">
|
|
<wsdlsoap:operation soapAction="&soapaction;"/>
|
|
<input message="tns:RegisterRequest">
|
|
<wsdlsoap:body use="literal"/>
|
|
</input>
|
|
<output message="tns:RegisterResult">
|
|
<wsdlsoap:body use="literal"/>
|
|
</output>
|
|
</operation>
|
|
<operation name="Reissue">
|
|
<wsdlsoap:operation soapAction="&soapaction;"/>
|
|
<input message="tns:ReissueRequest">
|
|
<wsdlsoap:body use="literal"/>
|
|
</input>
|
|
<output message="tns:ReissueResult">
|
|
<wsdlsoap:body use="literal"/>
|
|
</output>
|
|
</operation>
|
|
<operation name="Revoke">
|
|
<wsdlsoap:operation soapAction="&soapaction;"/>
|
|
<input message="tns:RevokeRequest">
|
|
<wsdlsoap:body use="literal"/>
|
|
</input>
|
|
<output message="tns:RevokeResult">
|
|
<wsdlsoap:body use="literal"/>
|
|
</output>
|
|
</operation>
|
|
<operation name="Recover">
|
|
<wsdlsoap:operation soapAction="&soapaction;"/>
|
|
<input message="tns:RecoverRequest">
|
|
<wsdlsoap:body use="literal"/>
|
|
</input>
|
|
<output message="tns:RecoverResult">
|
|
<wsdlsoap:body use="literal"/>
|
|
</output>
|
|
</operation>
|
|
</binding>
|
|
|
|
<service name="XKMSService">
|
|
<port name="XKMSPort" binding="tns:SOAPBinding">
|
|
<wsdlsoap:address location="&serviceURL;"/>
|
|
</port>
|
|
</service>
|
|
|
|
</wsdl:definitions>
|
|
</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>
|