- From: Henry S. Thompson <ht@inf.ed.ac.uk>
- Date: Tue, 18 May 2010 13:46:57 +0100
- To: Norman Walsh <ndw@nwalsh.com>
- Cc: XProc Dev <xproc-dev@w3.org>
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Norman Walsh writes: > FWIW, I've already implemented HMAC SHA1 as an extension to p:hash. Or > rather, Henry has, as I did little more than apply his patch. I > believe he needed it for some interaction with Amazon. Yes, to access Amazon Web Services, e.g. the Mechanical Turk. > <p:hash algorithm="cx:hmac"> > <p:with-param name="cx:accessKey" value="..."/> > </p:hash> Here's a sample pipeline: <p:pipeline xmlns:p="http://www.w3.org/ns/xproc" version="1.0" xmlns:mt="http://mechanicalturk.amazonaws.com/AWSMechanicalTurkRequester/2005-10-01" exclude-inline-prefixes="mt" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:c="http://www.w3.org/ns/xproc-step"> <p:documentation> <div xmlns="http://www.w3.org/1999/xhtml"> Sign and send a request to the Turk</div> </p:documentation> <p:variable name="stamp" select="current-dateTime()"/> <p:insert position="first-child"> <p:input port="insertion"> <p:inline><Signature xmlns="http://mechanicalturk.amazonaws.com/AWSMechanicalTurkRequester/2005-10-01"><here/></Signature></p:inline> </p:input> </p:insert> <p:insert position="first-child"> <p:input port="insertion"> <p:inline><Timestamp xmlns="http://mechanicalturk.amazonaws.com/AWSMechanicalTurkRequester/2005-10-01"><here/></Timestamp></p:inline> </p:input> </p:insert> <p:string-replace match="mt:Timestamp/mt:here"> <p:with-option name="replace" select="concat('"',$stamp,'"')"/> </p:string-replace> <p:insert position="first-child"> <p:input port="insertion"> <p:inline><AWSAccessKeyId xmlns="http://mechanicalturk.amazonaws.com/AWSMechanicalTurkRequester/2005-10-01">[your access key here]</AWSAccessKeyId></p:inline> </p:input> </p:insert> <p:hash match="/*/mt:Signature/mt:here" algorithm="cx:hmac" xmlns:cx="http://xmlcalabash.com/ns/extensions" name="hash"> <p:with-option name="value" select="concat('AWSMechanicalTurkRequester', local-name(/*),$stamp)"/> <p:with-param name="cx:key" select="'[your key here]'"/> </p:hash> <p:insert match="soapenv:Body" position="first-child"> <p:input port="source"> <p:inline> <c:request method="POST" href="http://mechanicalturk.sandbox.amazonaws.com/onca/soap?Service=AWSMechanicalTurkRequester"> <c:header name="SOAPAction" value=""http://soap.amazon.com""/> <c:body content-type="application/xml"> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Body/></soapenv:Envelope></c:body> </c:request> </p:inline> </p:input> <p:input port="insertion"> <p:pipe step="hash" port="result"/> </p:input> </p:insert> <p:http-request/> </p:pipeline> - -- Henry S. Thompson, School of Informatics, University of Edinburgh 10 Crichton Street, Edinburgh EH8 9AB, SCOTLAND -- (44) 131 650-4440 Fax: (44) 131 651-1426, e-mail: ht@inf.ed.ac.uk URL: http://www.ltg.ed.ac.uk/~ht/ [mail from me _always_ has a .sig like this -- mail without it is forged spam] -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.6 (GNU/Linux) iD8DBQFL8oxBkjnJixAXWBoRAp1ZAJ0Wx9wtVKKD3ZmzQaE+noNULkyTiQCdGLuv LN/wZ0PSRPPbVadZQmoD024= =Fo8o -----END PGP SIGNATURE-----
Received on Tuesday, 18 May 2010 12:48:04 UTC