0Pricing
AWS Security Academy · 课时

访问点与对象所有权

清晰限定访问范围,避免存在风险的跨账户 ACL。

访问点与对象所有权 是 CoddyKit 上的免费 AWS Security Academy 课时。 这是第 2 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 AWS Security Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 AWS Security Academy 课程共包含 4 节课。

ACL 为何存在风险

旧式 ACL(访问控制列表)允许您授予对象级访问权限,但它早于 IAM 和存储桶策略出现,在大规模环境中难以审计。

最大的风险是跨账户上传:由其他账户写入的对象可能归该账户所有,导致存储桶所有者无法控制这些对象。

S3 对象所有权

S3 Object Ownership用于确定上传对象的所有者。其推荐设置Bucket owner enforced会完全停用 ACL,并自动让存储桶所有者拥有每个对象。

关闭 ACL 后,所有访问都由 IAM 和存储桶策略统一控制,更容易理解和审计。

存储桶所有者强制执行

当 Object Ownership 设置为 Bucket owner enforced 时,ACL 不再适用,也完全无法授予访问权限。

这现在是新存储桶的默认设置,也是 AWS 推荐的最佳实践。只需一个设置,就能消除整类令人困惑且容易出错的跨账户所有权问题。

所有权问题

假设账户 A 拥有一个存储桶,而账户 B 向其中上传日志。按照旧式 ACL 行为,这些对象归 B 所有,因此 A 无法读取或删除自己存储桶中的内容。

Bucket owner enforced 可以解决这一问题:无论由谁上传,A 都会自动拥有每个对象,从而让存储桶所有者恢复完整控制权。

什么是访问点

S3 Access Points是附加到存储桶的命名网络端点,每个端点都有自己的访问策略。

您不必使用一个庞大而纠缠的存储桶策略为所有应用提供服务,而是可以针对每种使用场景创建专用访问点,并为其配置简单且限定范围的策略,从而更容易管理和审计访问权限。

访问点的作用

随着更多团队使用同一个存储桶,单一共享存储桶策略会变得复杂且有风险。访问点可以将其拆分为许多小型策略。

每个访问点都可以限制为某个 VPC,拥有自己的名称和权限,并可独立撤销,因此一个团队的需求不会迫使您为所有人放宽访问权限。

arn:aws:s3:us-east-1:111122223333:accesspoint/finance-ap

受 VPC 限制的访问点

您可以将访问点设置为仅接受来自特定 VPC(虚拟私有云)的请求。这样,通过该访问点访问的对象就完全无法从公共互联网触达。

这是确保敏感数据只能由内部工作负载通过私有网络路径访问的一种简洁方式。

多区域访问点

Multi-Region Access Points提供一个统一的全球端点,将请求路由到多个区域中的存储桶。

从安全角度看,它们简化了全球分布式数据的策略管理,并提供自动故障转移,让应用无需硬编码区域存储桶名称也能持续运行。

正确实现跨账户访问

跨账户共享时,请结合使用存储桶策略、访问点和 Object Ownership,而不要使用 ACL。

设置 Bucket owner enforced,通过限定范围的存储桶策略或访问点策略授予另一个账户访问权限,即可获得可审计、可撤销的跨账户访问,同时避免 ACL 导致的所有权混乱。

访问点策略

每个访问点都带有自己的访问点策略,并与存储桶策略一起进行评估。存储桶策略甚至可以委派给访问点,仅允许通过访问点授予访问权限。

这样,您可以保留一个简单且限制严格的存储桶策略,同时在小型、独立的访问点策略中表达各应用的权限,便于审查和撤销。

最佳实践总结

现代 S3 访问控制的做法很明确:使用 Bucket owner enforced停用 ACL,通过 IAM 和存储桶策略管理访问,并使用访问点让各应用的策略保持小巧且限定范围。

与旧式 ACL 模式相比,这种组合更安全,也显著更易于审计。

快速检查

选择最简洁的解决方案。

回顾

旧式 ACL会导致跨账户所有权难题,也难以审计。将 S3 的 Object Ownership设置为 Bucket owner enforced,以停用 ACL 并清晰地拥有每个对象,再通过 IAM 和存储桶策略管理访问。使用 S3 Access Points为每个应用提供小型、限定范围且可选择限制到 VPC 的策略,并使用 Multi-Region Access Points 处理全球数据。它们共同用可审计的最小权限访问模型取代 ACL。

常见问题解答

「访问点与对象所有权」课时是免费的吗?

是的 — 「访问点与对象所有权」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 AWS Security Academy 课程的其余内容,请升级到 CoddyKit PRO。 AWS Security Academy 课程共包含 4 节课。

「访问点与对象所有权」这节课中我会学到什么?

清晰限定访问范围,避免存在风险的跨账户 ACL。 你通过在浏览器中直接运行的动手代码来练习 AWS Security Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 AWS Security Academy 需要有经验吗?

无需任何先前经验。CoddyKit 上的 AWS Security Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 2 节课,共 4 节。

「访问点与对象所有权」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 AWS Security Academy 课中编写并运行代码吗?

能。每节 AWS Security Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. 阻止公开访问并设置存储桶策略
  2. 访问点与对象所有权
  3. 使用 Amazon Macie 发现敏感数据
  4. 数据生命周期与安全删除
← 返回 AWS Security Academy