Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье описывается настройка шифрования на стороне сервера с помощью ключа KMS для чтения файлов в путях s3a://
с помощью Unity Catalog. Он предоставляется для пользователей, которым нужен межоблачный доступ к внешним таблицам и томам в зашифрованных контейнерах S3.
Настройка шифрования для S3 с помощью каталога Unity
Вы можете настроить шифрование на стороне сервера, чтобы разрешить внешним таблицам и томам в каталоге Unity доступ к данным в S3. Шифрование SSE не поддерживается для внешних таблиц, которые доступны через Delta Sharing.
Шаг 1. Обновление политики ключей KMS в AWS
Для защиты данных в S3 AWS поддерживает шифрование на стороне сервера (SSE) с помощью управляемых ключей Amazon S3 (SSE-S3) или ключей AWS KMS (SSE-KMS). Если вы используете управляемый ключ AWS S3, перейдите к шагу 2.
В AWS перейдите в службу KMS.
Щелкните ключ, к которому требуется добавить разрешение.
В разделе "Политика ключей " выберите "Перейти к представлению политики".
Измените раздел политики ключей, позволяющий S3 использовать ключ, например:
{ "Sid": "Allow access through S3 for all principals in the account that are authorized to use S3", "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*", "Condition": { "StringEquals": { "kms:CallerAccount": "<AWS ACCOUNT ID>", "kms:ViaService": "s3.<REGION>.amazonaws.com" } } },
Нажмите кнопку Сохранить изменения.
Шаг 2. Настройка доступа к S3 с помощью каталога Unity
Создайте учетные данные хранения для подключения к S3, используя инструкции в статье "Создание учетных данных хранилища для подключения к Azure Data Lake Storage".
Убедитесь, что вы создаете политику IAM в той же учетной записи, что и контейнер S3. Если вы используете SSE-KMS, включите в политику следующее:
{ "Action": [ "kms:Decrypt", "kms:Encrypt", "kms:GenerateDataKey*" ], "Resource": [ "arn:aws:kms:<KMS-KEY>" ], "Effect": "Allow" },
Создайте внешнее расположение для подключения к S3, используя инструкции из статьи "Создание внешнего расположения для подключения облачного хранилища к Azure Databricks".
Настройте шифрование на стороне сервера во внешнем расположении, используя инструкции, описанные в статье "Настройка алгоритма шифрования в внешнем расположении (только AWS S3)".