gpt4 book ai didi

amazon-s3 - 用于只读和一次写入访问的 Amazon S3 ACL

转载 作者:行者123 更新时间:2023-12-03 06:08:06 25 4
gpt4 key购买 nike

我正在开发一个 Web 应用程序,目前已将以下 ACL 分配给它用来访问其数据的 AWS 账户:

{
"Statement": [
{
"Sid": "xxxxxxxxx", // don't know if this is supposed to be confidential
"Action": [
"s3:*"
],
"Effect": "Allow",
"Resource": [
"arn:aws:s3:::cdn.crayze.com/*"
]
}
]
}

但是,我想对此进行更多限制,以便如果我们的 AWS 凭证遭到泄露,攻击者就无法破坏任何数据。

从文档来看,我似乎只想允许以下操作:s3:GetObjects3:PutObject,但我特别希望该帐户仅是能够创建尚不存在的对象 - 即应拒绝对现有对象的 PUT 请求。这可能吗?

最佳答案

这在 Amazon S3 中是不可能的就像你可能想象的那样;但是,您可以通过 Using Versioning 来解决此限制这是一种将对象的多个变体保存在同一个存储桶中的方法,并且是在开发时考虑到这样的用例:

You might enable versioning to prevent objects from being deleted or overwritten by mistake, or to archive objects so that you can retrieve previous versions of them.

还有一些相关的常见问题解答,例如:

  • What is Versioning? - 版本控制允许您保留、检索和恢复 Amazon S3 存储桶中存储的每个对象的每个版本。为存储桶启用版本控制后,只要您对现有对象执行 PUT、POST、COPY 或 DELETE 操作,Amazon S3 就会保留现有对象。默认情况下,GET 请求将检索最近写入的版本。可以通过在请求中指定版本来检索被覆盖或删除的对象的旧版本。

  • Why should I use Versioning? - Amazon S3 为客户提供高度耐用的存储基础设施。版本控制通过在客户意外覆盖或删除对象时提供恢复手段来提供额外级别的保护。 这使您可以轻松地从意外的用户操作和应用程序故障中恢复。您还可以使用版本控制进行数据保留和归档。 [强调我的]

  • How does Versioning protect me from accidental deletion of my objects? - 当用户对对象执行 DELETE 操作时,后续默认请求将不再检索该对象。但是,该对象的所有版本将继续保留在您的 Amazon S3 存储桶中,并且可以检索或恢复。 只有 Amazon S3 存储桶的所有者才能永久删除版本。[强调我的]

如果您确实对存储桶所有者(当然可以与访问用户不同)的 AWS 凭证至关重要,您甚至可以更进一步,请参阅 How can I ensure maximum protection of my preserved versions? :

Versioning’s MFA Delete capability, which uses multi-factor authentication, can be used to provide an additional layer of security. [...] If you enable Versioning with MFA Delete on your Amazon S3 bucket, two forms of authentication are required to permanently delete a version of an object: your AWS account credentials and a valid six-digit code and serial number from an authentication device in your physical possession. [...]

关于amazon-s3 - 用于只读和一次写入访问的 Amazon S3 ACL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10592541/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com