@@ -43,7 +43,6 @@ __export(src_exports, {
4343 checkClockSkew : ( ) => checkClockSkew ,
4444 detectAndVerifyAlgorithm : ( ) => detectAndVerifyAlgorithm ,
4545 digestHeaderRegEx : ( ) => digestHeaderRegEx ,
46- genDraftAuthorizationHeader : ( ) => genDraftAuthorizationHeader ,
4746 genDraftSignature : ( ) => genDraftSignature ,
4847 genDraftSignatureHeader : ( ) => genDraftSignatureHeader ,
4948 genDraftSigningString : ( ) => genDraftSigningString ,
@@ -178,9 +177,6 @@ function genDraftSignature(signingString, privateKey, hashAlgorithm) {
178177 const r = crypto2 . sign ( hashAlgorithm , Buffer . from ( signingString ) , privateKey ) ;
179178 return r . toString ( "base64" ) ;
180179}
181- function genDraftAuthorizationHeader ( includeHeaders , keyId , signature , hashAlgorithm = "rsa-sha256" ) {
182- return `Signature ${ genDraftSignatureHeader ( includeHeaders , keyId , signature , hashAlgorithm ) } ` ;
183- }
184180function genDraftSignatureHeader ( includeHeaders , keyId , signature , algorithm ) {
185181 return `keyId="${ keyId } ",algorithm="${ algorithm } ",headers="${ includeHeaders . join ( " " ) } ",signature="${ signature } "` ;
186182}
@@ -404,11 +400,6 @@ function validateRequestAndGetSignatureHeader(request, clock) {
404400 if ( ! request . headers )
405401 throw new SignatureHeaderNotFoundError ( ) ;
406402 const headers = lcObjectKey ( request . headers ) ;
407- const signatureHeader = headers [ "signature" ] ;
408- if ( ! signatureHeader )
409- throw new SignatureHeaderNotFoundError ( ) ;
410- if ( Array . isArray ( signatureHeader ) )
411- throw new RequestHasMultipleSignatureHeadersError ( ) ;
412403 if ( headers [ "date" ] ) {
413404 if ( Array . isArray ( headers [ "date" ] ) )
414405 throw new RequestHasMultipleDateHeadersError ( ) ;
@@ -422,7 +413,18 @@ function validateRequestAndGetSignatureHeader(request, clock) {
422413 throw new InvalidRequestError ( "Request method not found" ) ;
423414 if ( ! request . url )
424415 throw new InvalidRequestError ( "Request URL not found" ) ;
425- return signatureHeader ;
416+ const signatureHeader = headers [ "signature" ] ;
417+ if ( signatureHeader ) {
418+ if ( Array . isArray ( signatureHeader ) )
419+ throw new RequestHasMultipleSignatureHeadersError ( ) ;
420+ return signatureHeader ;
421+ }
422+ const authorizationHeader = headers [ "authorization" ] ;
423+ if ( authorizationHeader ) {
424+ if ( authorizationHeader . startsWith ( "Signature " ) )
425+ return authorizationHeader . slice ( 10 ) ;
426+ }
427+ throw new SignatureHeaderNotFoundError ( ) ;
426428}
427429function parseRequestSignature ( request , options ) {
428430 const signatureHeader = validateRequestAndGetSignatureHeader ( request , options ?. clockSkew ) ;
@@ -668,7 +670,6 @@ function verifyDraftSignature(parsed, publicKeyPem, errorLogger) {
668670 checkClockSkew,
669671 detectAndVerifyAlgorithm,
670672 digestHeaderRegEx,
671- genDraftAuthorizationHeader,
672673 genDraftSignature,
673674 genDraftSignatureHeader,
674675 genDraftSigningString,
0 commit comments