FSN#36395 Ontmantelen CodeCharge

svn path=/Website/trunk/; revision=30395
This commit is contained in:
Jos Groot Lipman
2016-08-24 07:14:04 +00:00
parent ad606f11d0
commit 1f5851810c

View File

@@ -1,64 +0,0 @@
<?xml version="1.0"?>
<component>
<?component error="true" debug="true"?>
<registration
description="protectqs"
progid="protectqs.WSC"
version="1.00"
classid="{6D817B6F-9D08-4636-AAD9-8BD7C5EFF56A}"
>
</registration>
<public>
<!-- properties -->
<!-- methods -->
<method name="create">
<PARAMETER name="url"/>
<PARAMETER name="expire"/>
</method>
</public>
<script language="javascript">
<![CDATA[
/* methods */
/*
/*
$Revision$
$Id$
File: protectQS.wsc
Hulpvariant voor vanuit FacmgtTools (VB Script)
Eigenlijk zou dit even naar VBScript omgezet moeten worden
*/
var sha1 = null; // reference to sha1.wsc
// Bescherm de url tegen tampering door een hmac achteraan toe te voegen
// Te controleren aan de ontvangende kant met protectQS.verify()
// Let op: kopie van code in shared.inc
function create(url, secret, user_key, sha1path)
{
var splitter = url.split("?");
var pad = splitter[0];
var qs = splitter.length>1?splitter[1]:"x=x";
var padsplitter = pad.split("/");
var file = padsplitter[padsplitter.length-1]; // laatste component
if (!sha1)
{
sha1 = GetObject("script:"+sha1path);
}
var ts = String(Math.round((new Date).getTime() / 1000));
// TODO Session("ASPFIXATION") er bij in?
// Let op dat verify dezelfde data hasht
var data = ts+":" + user_key + ":" + file.toUpperCase() + "?" + qs;
var hmac = sha1.b64_hmac_sha1(secret, data);
return pad + "?" + qs + "&hmac="+ts+":"+hmac.replace(/\+/g, "%2B");
}
]]>
</script>
</component>