7个保护AWS S3存储的最佳实践
像所有的云服务一样,你必须对云存储负责。
在本文中,我们将讨论保护AWS S3存储的最佳提示。
在我们看到保护AWS S3存储的提示之前,我们应该知道为什么它是至关重要的。2017年,它暴露了关键数据,例如帐户和。
从那时起,每个组织都非常重视保护存储在的数据。
这是否意味着S3是Amazon Web服务中不安全的存储解决方案?绝对不是,S3是一个安全的,但它取决于用户如何保护他们的数据。
AWS共享责任模型
大多数提供的解决方案都提供了一个共享责任模型。这意味着云平台的安全责任由AWS负责,而云客户负责云中的安全。
这种共享模式有助于减轻数据泄露的风险。下面的图表显示了一般情况下和客户的责任保护数据。
仔细研究上面的图表,了解您需要承担的责任。预防措施是保护S3存储必不可少的,但并非所有的威胁都可以防止。AWS提供了一些方法来帮助您主动监控和避免数据泄露的风险。
让我们看一下以下保护AWS S3存储的最佳实践。
创建私有和公共存储桶
当您创建一个新的存储桶时,默认的存储桶策略是私有的。上传的新对象也是如此。您必须手动授予访问数据的实体权限。
通过使用存储桶策略、ACL和IAM策略的组合,为正确的实体提供正确的访问权限。但是,如果您在同一个存储桶中同时保留私有对象和公共对象,这将变得复杂和困难。将公共对象和私有对象混合放置在同一个存储桶中将导致对ACL进行仔细分析,从而浪费您的工作时间。
一个简单的方法是将对象分成公共存储桶和私有存储桶。创建一个公共存储桶,并创建一个存储桶策略以授予对其中存储的所有对象的访问权限。
{
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::YOURPUBLICBUCKET/*"
}
接下来,创建另一个存储桶来存储私有对象。默认情况下,所有对存储桶的访问都会阻止公共访问。然后,您可以使用IAM策略为特定用户或应用程序访问授予对这些对象的访问权限。
加密数据的静止和传输
为了保护数据的静止和传输,启用加密。您可以在AWS中设置这一点,在将对象存储到S3之前,在服务器端对其进行加密。
这可以通过使用默认的AWS托管S3密钥或在密钥管理服务中创建的密钥来实现。为了在传输过程中强制执行数据加密,您必须在存储桶策略中添加以下代码,以使用HTTPS协议进行所有存储桶操作。
{
"Action": "s3:*",
"Effect": "Deny",
"Principal": "*",
"Resource": "arn:aws:s3:::YOURBUCKETNAME/*",
"Condition": {
"Bool": { "aws:SecureTransport": false }
}
}
利用CloudTrail
CloudTrail是AWS的一项服务,用于记录和维护跨AWS服务发生的事件的轨迹。CloudTrail事件分为数据事件和管理事件两种。数据事件默认禁用,并且更为详细。
管理事件是指创建、删除或更新S3存储桶。而数据事件是指在对象上进行的API调用,如PutObject、GetObject或GetObject。
与管理事件不同,数据事件将每10万个事件收取0.10美元的费用。
您可以创建特定的跟踪来记录和监视给定区域或全局的S3存储桶。这些跟踪将把日志存储在S3存储桶中。
CloudWatch和警报
如果您需要对警报和自愈有控制权,则使用CloudWatch是很好的选择。AWS CloudWatch可以立即记录事件。
此外,您还可以在CloudWatch日志组中设置CloudTrail以创建日志流。将CloudTrail事件添加到CloudWatch中将增加一些强大的功能。您可以设置度量过滤器以启用对可疑活动的CloudWatch警报。
设置生命周期策略
设置生命周期策略可以确保数据的安全,同时可以节省资金。通过设置生命周期策略,您可以将不需要的数据移动到私有位置并最终删除。这样可以确保黑客无法访问不需要的数据,并通过释放空间来节省资金。启用生命周期策略可以将数据从标准存储移动到AWS Glacier以节省资金。
如果存储在Glacier中的数据对您或组织没有更多价值,则可以将其删除。
阻止S3公开访问
AWS已经采取措施自动化阻止存储桶的公开访问功能,以前需要使用CloudWatch、CloudTrail和Lambda的组合。
开发人员有时会不小心将对象或存储桶设置为公开访问。为避免意外访问将存储桶或对象设为公开,这些功能非常有用。
新的阻止公开访问设置功能将防止任何人将存储桶设置为公开。您可以在AWS控制台中启用此设置,如上面的视频所示。您还可以在帐户级别应用此设置,如下面的视频所述。
倾听AWS Trusted Advisor
AWS Trusted Advisor是一个内置功能,用于分析您账户中的AWS资源并推荐最佳实践。
他们在5个类别中提供推荐;其中一个关键功能是安全性。自2018年2月以来,AWS在S3存储桶可公开访问时向您发出警报。
第三方AWS安全工具
除了亚马逊之外,还有一些第三方提供安全工具来保护您的数据。它们可以节省大量时间,同时保护数据的安全。以下是一些流行的工具:
Security Monkey
这是Netflix开发的一个工具,用于监控AWS策略更改,并在发现任何不安全配置时发出警报。 Security Monkey对S3执行一些审核,以确保最佳实践得到应用。它还支持Google Cloud Platform。
Cloud Custodian
Cloud Custodian帮助您根据最佳实践管理云中的资源。简单来说,一旦识别出最佳实践,您可以使用此工具扫描云中的资源以确保其符合最佳实践。
如果不符合,您可以使用多种选项发送警报或执行遗漏策略。
Cloud Mapper
Duo Security创建了Cloud Mapper,这是一个出色的云可视化和审计工具。它具有与Security Monkey类似的功能,可以扫描S3存储桶以查找任何配置错误。它提供了出色的AWS基础架构的可视化表示,以增强进一步问题的识别。
它还提供出色的报告功能。
结论
由于大部分工作都使用数据进行,因此保护数据应该是核心责任之一。
人们永远无法知道错误何时何地发生。因此,预防措施总是推荐的做法。保护数据将为您节省数千美元。
如果您是云计算新手并且有兴趣学习AWS,请查看此链接。