Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Security 如何在AmazonS3上使用SSE-S3?_Security_Amazon S3 - Fatal编程技术网

Security 如何在AmazonS3上使用SSE-S3?

Security 如何在AmazonS3上使用SSE-S3?,security,amazon-s3,Security,Amazon S3,我想在AmazonS3上启用SSE-S3。我单击属性并选中AES-256的加密框。上面写着加密,然后完成。但是我仍然可以在不提供密钥的情况下读取文件,当我再次检查属性时,它会显示未选中的单选按钮。我做得对吗?是加密的吗?太令人困惑了 您正在S3控制台中查看一个bucket视图,该视图显示多个文件,或者仅显示一个文件,但该文件未被选中。单选按钮允许您将选择的所有项目设置为在单选按钮中选择的值,但每当显示多个文件时,单选按钮将保持空白,因为它们仅用于进行更改,而不是显示现有对象的值 单击单个文件并查

我想在AmazonS3上启用SSE-S3。我单击属性并选中AES-256的加密框。上面写着加密,然后完成。但是我仍然可以在不提供密钥的情况下读取文件,当我再次检查属性时,它会显示未选中的单选按钮。我做得对吗?是加密的吗?太令人困惑了


您正在S3控制台中查看一个bucket视图,该视图显示多个文件,或者仅显示一个文件,但该文件未被选中。单选按钮允许您将选择的所有项目设置为在单选按钮中选择的值,但每当显示多个文件时,单选按钮将保持空白,因为它们仅用于进行更改,而不是显示现有对象的值

单击单个文件并查看其属性,您将看到该文件以服务器端加密=AES256的方式存储

是的,您可以下载文件而无需解密,因为此功能是静态数据的服务器端加密-文件在存储到S3运行的物理介质之前由S3加密。这通常是出于法规遵从性目的而进行的,因为法规限制或其他合同义务要求数据在静止状态下进行加密

加密密钥由S3与对象分开存储,并由S3管理。事实上,加密密钥实际上是由S3存储、加密的。它们为每个对象生成一个密钥,并使用主密钥以加密形式存储该密钥

解密加密数据不需要您的努力。当您得到一个加密对象时,我们获取并解密密钥,然后使用它来解密您的数据

对于传输中的数据,S3会在您使用HTTPS时对其进行加密

与控制台中可用的功能不同,S3。在这个名为SSE-C的场景中,您仍然不负责实际的加密/解密,因为S3仍然为您进行加密/解密。不同之处在于S3不存储密钥,您必须向S3提供一个GET请求,以便S3获取对象、解密对象并将其返回给您。如果您没有提供正确的密钥,S3将不会费心返回对象——即使是以加密的形式。S3知道您是否已通过GET请求发送了正确的密钥,因为S3将密钥的附加HMAC与对象一起存储,以便在稍后尝试获取对象时验证您发送的密钥

此功能(您管理自己的密钥)需要HTTPS,否则您将在未加密的情况下通过Internet发送加密密钥,并且只能通过API而不是控制台访问

您不能使用Amazon S3控制台上载对象并请求SSE-C。您也不能使用控制台更新,例如,更改存储类或向使用SSE-C存储的现有对象添加元数据

当然,如果您没有可靠的密钥管理基础设施,那么这种方法(使用客户管理的密钥)尤其危险,因为如果您丢失了用于上载文件的密钥,那么该文件实际上就丢失了