summaryrefslogtreecommitdiff
path: root/swift/common/middleware/s3api/s3request.py
diff options
context:
space:
mode:
authorZuul <zuul@review.openstack.org>2018-10-30 06:55:06 +0000
committerGerrit Code Review <review@openstack.org>2018-10-30 06:55:06 +0000
commitf6df4dbeb4bb80a8c14c15c73d298fe078c503b1 (patch)
tree731eba9f239a67aa1edff15c0a81f0b542e7be46 /swift/common/middleware/s3api/s3request.py
parente4ad56abb1e982b576bdf25afb4ed47faa3875f5 (diff)
parent45c840a565d53ba9d168f98e74611ac1a0a629d3 (diff)
downloadswift-f6df4dbeb4bb80a8c14c15c73d298fe078c503b1.tar.gz
Merge "s3api: Ensure secret is utf8 in check_signature"
Diffstat (limited to 'swift/common/middleware/s3api/s3request.py')
-rw-r--r--swift/common/middleware/s3api/s3request.py2
1 files changed, 2 insertions, 0 deletions
diff --git a/swift/common/middleware/s3api/s3request.py b/swift/common/middleware/s3api/s3request.py
index ee76781f0..03894a09e 100644
--- a/swift/common/middleware/s3api/s3request.py
+++ b/swift/common/middleware/s3api/s3request.py
@@ -116,6 +116,7 @@ class SigV4Mixin(object):
"""
def check_signature(self, secret):
+ secret = utf8encode(secret)
user_signature = self.signature
derived_secret = 'AWS4' + secret
for scope_piece in self.scope.values():
@@ -504,6 +505,7 @@ class S3Request(swob.Request):
self.environ['swift.leave_relative_location'] = True
def check_signature(self, secret):
+ secret = utf8encode(secret)
user_signature = self.signature
valid_signature = base64.b64encode(hmac.new(
secret, self.string_to_sign, sha1).digest()).strip()