2015-08-16 5 views
2

Я хочу включить SSE-S3 на Amazon S3. Я нажимаю свойства и проверяю окно шифрования для AES-256. Он говорит, что шифрование, а затем сделано. Но я все еще могу читать файлы, не предоставляя ключ, и когда я снова проверяю свойства, он показывает, что переключатели не отмечены. Я сделал это правильно? Зашифровано? Так запутанно.Как использовать SSE-S3 на Amazon S3?

SSE S3

ответ

2

Вы смотрите на вид ковша в консоли S3, который показывает более одного файла, показывает только один файл, но этот файл не выбран. Кнопки радиосвязи позволяют вам выбирать все элементы, которые вы выбираете, для значений, которые вы выбираете в переключателях, но переключатели остаются пустыми, когда отображаются несколько файлов, потому что они только там, чтобы вы могли внести изменения - не показывать вы значения существующего объекта.

Нажмите на отдельный файл и просмотрите его свойства, и вы увидите, что файл хранится с помощью шифрования на стороне сервера = AES256.

Да, вы можете скачать файл без необходимости расшифровать его, потому что эта функция на стороне сервера шифрования данных покоящихся - файлы шифруются S3 до хранения на физическом носителе, что S3 работает на , Это часто делается для целей соблюдения, когда нормативные ограничения или другие договорные обязательства требуют, чтобы данные были зашифрованы в покое.

Ключи шифрования хранятся отдельно от объекта по S3 и управляются S3. На самом деле ключи шифрования фактически хранятся, зашифрованы, на S3. (Они генерируют ключ для каждого объекта и сохраняют этот ключ в зашифрованном виде, используя главный ключ).

Расшифровка зашифрованных данных не требует усилий с вашей стороны. Когда вы используете GET зашифрованный объект, мы извлекаем и дешифруем ключ, а затем используем его для дешифрования ваших данных.

https://aws.amazon.com/blogs/aws/new-amazon-s3-server-side-encryption/

Для данных в пути, S3 шифрует, что всякий раз, когда вы используете HTTPS.

В отличие от функции, доступной в консоли, S3 also supports server-side AES-256 encryption with keys you manage. В этом случае, называемом SSE-C, вы по-прежнему не отвечаете за фактическое шифрование/дешифрование, потому что S3 все еще делает это для вас. Разница в том, что S3 не сохраняет ключ, и вы должны представить ключ на S3 с запросом GET, чтобы S3 мог получить объект, расшифровать его и вернуть его вам. Если вы не укажете правильный ключ, S3 не захочет возвращать объект - даже в зашифрованном виде. S3 знает, отправил ли вы правильный ключ с запросом GET, потому что S3 сохраняет соленое HMAC ключа вместе с объектом для проверки ключа, который вы отправляете, когда пытаетесь извлечь объект позже.

Эта возможность - где вы управляете своими собственными ключами - требует HTTPS (иначе вы отправляете свой ключ шифрования по незашифрованному Интернету) и доступны только через API, а не в консоли.

Вы не можете использовать консоль Amazon S3 для загрузки объекта и запроса SSE-C. Вы также не можете использовать консоль для обновления (например, изменить класс хранения или добавить метаданные) существующего объекта, сохраненного с помощью SSE-C.

http://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html

И, конечно же, этот метод - с ключами клиента управляемого - это особенно опасно, если у вас нет надежной инфраструктуры управления ключами, потому что если вы потеряете ключ, который вы используется для загрузки файла, этот файл для всех практических целей теряется.

Смежные вопросы