Merge "s3api: Allow lower-cased region name for AWS .NET SDK compatibility"

This commit is contained in:
Zuul 2020-07-28 23:35:13 +00:00 committed by Gerrit Code Review
commit d6399b32e7
1 changed files with 12 additions and 0 deletions

View File

@ -283,6 +283,12 @@ class SigV4Mixin(object):
if cred_param[key] != self.scope[key]:
kwargs = {}
if key == 'region':
# Allow lowercase region name
# for AWS .NET SDK compatibility
if not self.scope[key].islower() and \
cred_param[key] == self.scope[key].lower():
self.location = self.location.lower()
continue
kwargs = {'region': self.scope['region']}
raise AuthorizationQueryParametersError(
invalid_messages[key] % (cred_param[key], self.scope[key]),
@ -325,6 +331,12 @@ class SigV4Mixin(object):
if cred_param[key] != self.scope[key]:
kwargs = {}
if key == 'region':
# Allow lowercase region name
# for AWS .NET SDK compatibility
if not self.scope[key].islower() and \
cred_param[key] == self.scope[key].lower():
self.location = self.location.lower()
continue
kwargs = {'region': self.scope['region']}
raise AuthorizationHeaderMalformed(
invalid_messages[key] % (cred_param[key], self.scope[key]),