首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用Paw应用程序进行错误的S3认证

用Paw应用程序进行错误的S3认证
EN

Stack Overflow用户
提问于 2016-04-08 08:29:52
回答 2查看 247关注 0票数 1

终端设备: EMC ECS协议: AWS S3

我试图使用Python脚本进行身份验证,并使用Paw构建相同的请求。

Pythonboto运行得很好。原始代码:

代码语言:javascript
复制
from boto.s3.connection import S3Connection

accessKeyId = 'objuser'
secretKey = 'spl4vDHl11H7uW/683WZCoYrle03Bn1hd42gy8bd'
host = '10.10.10.10'
port = 9020

conn = S3Connection(aws_access_key_id=accessKeyId,
                    aws_secret_access_key=secretKey,
                    host=host,
                    port=port,
                    calling_format='boto.s3.connection.ProtocolIndependentOrdinaryCallingFormat',
                    is_secure=False)

print conn.get_all_buckets()

正确的标头被S3服务器接受

代码语言:javascript
复制
Date: Fri, 08 Apr 2016 07:38:34 GMT 
Authorisation: AWS obtuser:Gi/qcdbyYcVMdI9EkdORPMx2wbo=

接下来,我用Paw重新创建相同的请求,但是得到错误的标题:

代码语言:javascript
复制
Date: Fri, 08 Apr 2016 07:38:34 GMT
Authorisation: AWS obtuser:/znFNFviqD5fw3t1oWUwBQ8B5M4= 

当然,它会被S3服务器拒绝。

在Paw中,我使用授权头和标准的"S3 Amazon S3授权头“动态值。AWS访问密钥ID、秘密访问密钥ID与脚本中的相同(三重检查)。

根据ECS文档,S3身份验证遵循签署和验证REST请求,因此签名是基于标准HMAC-SHA1的。我希望Paw也会使用同样的方法。

你能告诉我为什么Paw没有创建正确的授权头的潜在原因是什么,以及如何解决这个问题?

事先非常感谢!

EN

回答 2

Stack Overflow用户

发布于 2016-05-14 12:57:08

很抱歉回答得太晚了!我已经使用我们的AWS帐户再次测试了这一点,例如,我能够轻松地列出我们的所有S3存储桶,请看下面的屏幕快照:

这似乎是一个与授权头配置方式有关的问题,或者是在URL字段中插入无效字符的问题。(截图将有助于发现什么可能是错误的)

票数 0
EN

Stack Overflow用户

发布于 2017-04-20 10:12:51

使用Pawv3.0.16和"Amazon授权头“动态值,该S3发生SignatureDoesNotMatch错误。

GET https://s3-ap-northeast-1.amazonaws.com/bucket123/sub456/some789.json

这个URL运行得很好。

GET https://bucket123.s3.amazonaws.com/sub456/some789.json

http://docs.aws.amazon.com/AmazonS3/latest/dev/VirtualHosting.html

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36494994

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档