You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@polaris.apache.org by yu...@apache.org on 2026/04/16 03:44:05 UTC
(polaris) 01/01: docs: simplify Spark configuration with credential vending
This is an automated email from the ASF dual-hosted git repository.
yufei pushed a commit to branch yufei
in repository https://gitbox.apache.org/repos/asf/polaris.git
commit 2245ec48b2ca0d5cb97733225d81be8835fc93fd
Author: Yufei Gu <yufei.apache.org>
AuthorDate: Wed Apr 15 20:43:46 2026 -0700
docs: simplify Spark configuration with credential vending
Remove redundant S3 credentials, endpoint, and region configuration from
quickstart, RustFS, and MinIO guides. When credential vending is enabled
via X-Iceberg-Access-Delegation header, Polaris automatically provides
all necessary storage configuration including temporary credentials,
endpoint, region, and path-style-access settings.
This makes the examples more secure, easier to understand, and properly
showcases Polaris's credential vending feature.
Co-Authored-By: Claude Sonnet 4.5 <no...@anthropic.com>
---
site/content/guides/minio/index.md | 8 ++++----
site/content/guides/quickstart/docker-compose.yml | 10 +++++-----
site/content/guides/rustfs/index.md | 9 ++++-----
3 files changed, 13 insertions(+), 14 deletions(-)
diff --git a/site/content/guides/minio/index.md b/site/content/guides/minio/index.md
index 096b311e31..2c5c73cd10 100644
--- a/site/content/guides/minio/index.md
+++ b/site/content/guides/minio/index.md
@@ -72,14 +72,14 @@ bin/spark-sql \
--conf spark.sql.catalog.polaris.warehouse=quickstart_catalog \
--conf spark.sql.catalog.polaris.scope=PRINCIPAL_ROLE:ALL \
--conf spark.sql.catalog.polaris.header.X-Iceberg-Access-Delegation=vended-credentials \
- --conf spark.sql.catalog.polaris.credential=root:s3cr3t \
- --conf spark.sql.catalog.polaris.client.region=irrelevant
+ --conf spark.sql.catalog.polaris.credential=root:s3cr3t
```
Note: `s3cr3t` is defined as the password for the `root` user in the `docker-compose.yml` file.
-Note: The `client.region` configuration is required for the AWS S3 client to work, but it is not used in this example
-since MinIO does not require a specific region.
+Note: With credential vending enabled (`X-Iceberg-Access-Delegation=vended-credentials`), Polaris automatically
+provides temporary S3 credentials, the S3 endpoint, client region, and other storage configuration based on the
+catalog's storage settings. No explicit storage credentials or endpoint configuration is needed on the client side.
## Running Queries
diff --git a/site/content/guides/quickstart/docker-compose.yml b/site/content/guides/quickstart/docker-compose.yml
index 5f5d7bbef3..bd679902f5 100644
--- a/site/content/guides/quickstart/docker-compose.yml
+++ b/site/content/guides/quickstart/docker-compose.yml
@@ -271,13 +271,13 @@ services:
echo " --conf spark.sql.catalog.polaris.uri=http://localhost:8181/api/catalog \\"
echo " --conf spark.sql.catalog.polaris.credential=$$USER_CLIENT_ID:$$USER_CLIENT_SECRET \\"
echo " --conf spark.sql.catalog.polaris.scope=PRINCIPAL_ROLE:ALL \\"
- echo " --conf spark.sql.catalog.polaris.s3.endpoint=http://localhost:9000 \\"
- echo " --conf spark.sql.catalog.polaris.s3.path-style-access=true \\"
- echo " --conf spark.sql.catalog.polaris.s3.access-key-id=polaris_root \\"
- echo " --conf spark.sql.catalog.polaris.s3.secret-access-key=polaris_pass \\"
- echo " --conf spark.sql.catalog.polaris.client.region=irrelevant \\"
+ echo " --conf spark.sql.catalog.polaris.header.X-Iceberg-Access-Delegation=vended-credentials \\"
echo " --conf spark.sql.defaultCatalog=polaris"
echo ""
+ echo "Note: With credential vending enabled (X-Iceberg-Access-Delegation=vended-credentials),"
+ echo " Polaris automatically provides temporary S3 credentials, endpoint, region, and"
+ echo " other storage configuration. No explicit storage settings are needed."
+ echo ""
echo "To get started with REST API:"
echo " # Get a token"
echo " export TOKEN=\$$(curl -s -X POST http://localhost:8181/api/catalog/v1/oauth/tokens \\"
diff --git a/site/content/guides/rustfs/index.md b/site/content/guides/rustfs/index.md
index 7158d2d462..c4530e5187 100644
--- a/site/content/guides/rustfs/index.md
+++ b/site/content/guides/rustfs/index.md
@@ -72,15 +72,14 @@ bin/spark-sql \
--conf spark.sql.catalog.polaris.warehouse=quickstart_catalog \
--conf spark.sql.catalog.polaris.scope=PRINCIPAL_ROLE:ALL \
--conf spark.sql.catalog.polaris.header.X-Iceberg-Access-Delegation=vended-credentials \
- --conf spark.sql.catalog.polaris.credential=root:s3cr3t \
- --conf spark.sql.catalog.polaris.client.region=us-west-2 \
- --conf spark.sql.catalog.polaris.s3.endpoint=http://rustfs:9000
+ --conf spark.sql.catalog.polaris.credential=root:s3cr3t
```
Note: `s3cr3t` is defined as the password for the `root` user in the `docker-compose.yml` file.
-Note: The `client.region` configuration is required for the AWS S3 client to work, but it is not used in this example
-since RustFS does not require a specific region.
+Note: With credential vending enabled (`X-Iceberg-Access-Delegation=vended-credentials`), Polaris automatically
+provides temporary S3 credentials, the S3 endpoint, client region, and other storage configuration based on the
+catalog's storage settings. No explicit storage credentials or endpoint configuration is needed on the client side.
## Running Queries