在这篇文章中,我们将讨论 10 个良好的安全实践,这些实践将使我们能够正确管理我们的 S3 存储桶。
让我们开始吧。
默认情况下,存储桶是私有的,只能由我们帐户的用户使用,只要他们正确建立了权限即可。
此外,存储桶具有“ S3 阻止公共访问”选项,可防止存储桶被视为公开。可以在 AWS 账户中按每个存储桶打开或关闭此选项。为了防止用户能够禁用此选项,我们可以在我们的组织中创建一个 SCP 策略,以便组织中的任何 AWS 账户成员都不能这样做。
所有安全策略都必须遵循最小特权原则。为此,我们将在建立权限时避免使用通配符“*”,并且每次我们要建立对存储桶的权限时,我们将指定“主体”必须访问该资源。它可以是一个 IP 地址范围、一个 AWS 账户、一个 VPC……但永远不会使用通配符。
遵循最小权限原则,我们将使用我们授予访问权限的身份必须执行的“操作”来验证允许策略是否正确描述。例如,我们将使用S3:GetObject或S3:PutObject但避免使用允许所有操作的S3:* 。
GuardDuty 服务实时监控我们的存储桶以发现潜在的安全事件。它使我们能够检测来自异常来源的请求、对试图发现配置错误的存储桶的 API 调用的奇怪模式......
GuardDuty 生成警报以通知安全团队,从而自动解决安全事件。
Macie 使用人工智能来检测我们存储桶之间的敏感内容。通过在组织级别激活 Macie,我们可以获得一个集中式控制台,我们可以在其中评估我们的数据,如果它们是公开的、未加密的或已在组织外部共享,则会向他们发出警报。
对我们的数据进行静态加密至关重要。Amazon S3 提供了四种加密数据的方法:
在标准存储的情况下,亚马逊提供了 99.999999999% 的对象的持久性,标准存储至少存储在 3 个不同的可用区中。
这并不能防止意外删除导致您的数据消失,我们有不同的选择来避免这种情况:
AWS S3 与 Cloudtrail 集成。每个 S3 API 调用都可以记录下来并与 CloudWatch 集成以供将来分析。Cloudtrail 可以为整个组织全局激活,因此建议我们的关键存储桶激活此集成。
在多个目的地至少保留一份关键数据备份。
AWS 提供跨区域复制 CRR功能,我们可以将存储桶完全复制到另一个区域。如果源存储桶中的对象被删除,我们会将对象保留在目标存储桶中。
Security Hub 为我们提供了一个全局控制台,我们可以在其中查看 AWS 账户的状态。
我们可以上传一组合规性规则,帮助我们确保我们的资源符合一组基于最佳实践的配置。S3 服务从中受益,使我们能够评估我们的存储桶是否具有活动的“拒绝公共访问”、静态加密、传输中加密......
正如我们所看到的,通过这些技巧,我们可以在我们的存储桶中建立强大的安全策略,保护和控制信息免受未经授权的访问,加密我们的数据,记录其中执行的每个活动并为灾难进行备份。
AWS 为我们提供了大量的可能性和工具来帮助我们做到这一点,因此我们必须了解它们为我们提供的所有可能性以及如何正确配置它们。
本文系外文翻译,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文系外文翻译,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。