最新sigv4 s3浏览器上传帖子的文档-http://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-post-example.html -显示我需要使用x-amz-signature
、x-amz-credential
和策略
。
如果我尝试这样做,我会得到一个错误,说我错过了AWSAccessKeyId
,这在文档中没有提到,并且x-amz-签名
需要是签名
。
我应该做上面的bas64桶策略文档,还是应该做规范的方法,比如python发布到DynamoDB-http://docs.aws.amazon.com/general/latest/gr/sigv4-signed-request-examples.html#sig-v4-examples-post.
规范使用hmac hexdigesthmac.new(signing_key,(string_to_sign).encode('utf-8')、hashlib.sha256).hexdigest()
上面的上载文档使用hmac和bas64:Base64.encode64(OpenSSL::HMA. digest('sha256', Signaturekey,@策略))
。
在ruby sdk的引擎盖下,看起来他们正在使用非hmac hexdigest:OpenSSL::HMA. hexdigest(OpenSSL::Digest.new('sha256'),键,值)
。
需要哪种方法上传到s3?
FWIW,我使用一个SPA与Rails作为一个API,所以不幸的是,我不能访问任何rails视图帮助。
昨天我发布了一个关于我的代码的问题,不幸的是,我看到了一个使用rails视图助手的链接
策略发送的内容:
{"expiration":"2017-03-06T20:13:51Z",
"conditions":[
{"bucket":"example-development"},
{"x-amz-credential":"AKIAIVVIZJHOBCBAB5CA/20170305/us-west-2/s3/aws4_request"},
{"x-amz-algorithm":"AWS4-HMAC-SHA256"},
{"x-amz-date":"20170305T000000Z"}
]
}
表单发送的内容:
Policy:"eyJleHBpcmF0aW9uIjoiMjAxNy0wMy0wNlQyMDoxOTowN1oiLCJjb25kaXRpb25zIjpbeyJidWNrZXQiOiJ3YXlkb3BlLWRldmVsb3BtZW50In0seyJ4LWFtei1jcmVkZW50aWFsIjoiQUtJQUlWVklaSkhPQkNCQUI1Q0EvMjAxNzAzMDUvdXMtd2VzdC0yL3MzL2F3czRfcmVxdWVzdCJ9LHsieC1hbXotYWxnb3JpdGhtIjoiQVdTNC1ITUFDLVNIQTI1NiJ9LHsieC1hbXotZGF0ZSI6IjIwMTcwMzA1VDAwMDAwMFoifV19"
X-Amz-Signature:"Cqjvo9aYCrb8PYHD+mUDjlOwKUzTpsI4d5/oycFAUBA="
key:"uploads/photo/photo/126/photo.jpg"
x-amz-algorithm:"AWS4-HMAC-SHA256"
x-amz-credential:"AKIAIVVIZJHOBCBAB5CA/20170305/us-west-2/s3/aws4_request"
x-amz-date:"20170305T000000Z"
桶策略和CORS包含零条件。
对于s3浏览器上载,要签名的字符串应为bucket config:http://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-UsingHTTPPOST.html
按照页面底部的链接进行操作。
所以我就做了如下的桶策略: {“版本”:“2012-10-17”,“ID”:“HTTP引用策略示例”,“语句”:[{“SID”:“允许从www.example.com和example.com发起的get请求”,“Effect”:“Allow”,“Principal”:“”Action“:”S3:“,”Resource“:”arn:aws:s3:::exampleBucket/“,”Conditio
我搞不清这里出了什么问题。如有任何帮助,我们将不胜感激。
我可以成功地上传到Azure Blob存储,但我在下载文件(csv和pdf文件)时遇到了问题。 我的目标是将文件下载到浏览器(因为这将是一个web应用程序,我不知道下载文件的本地路径)。
我发现,当我在IAM策略中使用NotResource作为掩码并将其附加到bucket时,受策略影响的资源是那个bucket中没有在NotResource子句中指定的所有资源。我需要指出一个文档,它清楚地表明情况是这样的。我一直在查看内联策略的文档,以及s3访问管理和策略的文档,但我很难找到这些特定的信息。文档中是否说明了在内联策略中指定资源的限制?
此文档似乎有问题:http://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-authentication-HTTPPOST.html 我一丝不苟地遵循它,它似乎确实奏效了。我总是收到签名不匹配错误。v2授权仍然有效。让我想知道这是否是某种阿尔法阶段质量的产品。 下面是我的php代码。我试图模仿本页中的示例:http://docs.aws.amazon
情景: 浏览器(用户)向服务提供商(SP)请求资源 SP(使用SAML请求)重定向到身份提供程序(IdP) 由于是第一次登录,用户将向(IdP)提供其有效凭据 然后,IdP将浏览器(带有包含SAML令牌的SAML响应)重定向到SP页面 我有两个问题: A、 在步骤4中,浏览器是否存储或缓存SAML响应和/或SAML令牌? B.如果是,什么样的事情(属性?超时?协议?)阻止我获取存储的SAML令牌。