Передача статических ключей доступа к S3#

CedrusData Catalog позволяет движкам передавать ключи доступа к S3, которые будут использованы каталогом при выполнении операций над объектами Iceberg. Это может быть полезно, когда вы хотите, чтобы пользователи движков выполняли запросы с использованием своих ключей доступа.

Для использования данного функционала сначала необходимо задать свойство файловой системы S3 allow-override=true. Например:

catalog file-system update \
  --file-system-name my_file_system \
  -p allow-override=true

После этого вы можете передавать собственные статические ключи S3, используя следующие HTTP заголовки:

  • X-CedrusData-S3-Access-Key-Override — access key для S3

  • X-CedrusData-S3-Secret-Key-Override — secret key для S3

Способ передачи заголовков зависит от движка.

Apache Spark#

Если вы работаете с Apache Spark, заголовки можно передать через конфигурацию каталога. Например, если в Apache Spark ваш каталог называется my_catalog, то добавьте следующую конфигурацию:

spark.sql.catalog.my_catalog.header.X-CedrusData-S3-Access-Key-Override=<ваш_access_key>
spark.sql.catalog.my_catalog.header.X-CedrusData-S3-Secret-Key-Override=<ваш_secret_key>

CedrusData#

Если вы работаете с CedrusData, ключи можно передать через механизм extra credentials.