mirror of
https://github.com/seaweedfs/seaweedfs.git
synced 2026-10-26 23:10:44 +01:00
Zero Config for catalog
1 parent
ff2c131a32
commit
a25f3457af
3 files changed
+32
No files matched your search
@@ -264,5 +264,6 @@ See [[Amazon IAM API]] for detailed IAM usage.
|
||||
- [[Amazon S3 API]] - S3 API compatibility reference
|
||||
- [[Amazon IAM API]] - IAM API support (embedded in S3)
|
||||
- [[AWS IAM CLI]] - AWS CLI examples for IAM
|
||||
- [[SeaweedFS-Iceberg-Catalog]] - Iceberg REST Catalog documentation
|
||||
- [[Admin UI]] - Web-based credential management
|
||||
|
||||
@@ -6,6 +6,12 @@ SeaweedFS S3 Tables implementation supports fine-grained access control using IA
|
||||
|
||||
Permissions are defined using JSON policy documents similar to AWS IAM. Policies are attached to the **Table Bucket** using the `PutTableBucketPolicy` API.
|
||||
|
||||
### Default Permission Behavior
|
||||
|
||||
If no policy is attached to a Table Bucket:
|
||||
- **Zero Configuration**: Access is **Allowed** by default (simplifies development).
|
||||
- **IAM Configured**: Access is **Denied** by default (security best practice).
|
||||
|
||||
### Policy Structure
|
||||
|
||||
A policy document consists of a list of statements:
|
||||
|
||||
@@ -147,3 +147,28 @@ When configuring the catalog, the `warehouse` location typically points to a spe
|
||||
- **Trino**: `iceberg.rest-catalog.prefix=my-table-bucket` (optional, can also be part of warehouse path)
|
||||
|
||||
SeaweedFS treats the Table Bucket as the root for that catalog instance. You can have multiple catalogs pointing to different table buckets.
|
||||
|
||||
---
|
||||
|
||||
## Anonymous Access (Zero Config)
|
||||
|
||||
If SeaweedFS is running in **Zero Configuration** mode (no `-s3.config` or `-iam.config` provided), the Iceberg Catalog allows anonymous access by default. This is useful for local development and testing.
|
||||
|
||||
### Spark Configuration for Anonymous Access
|
||||
|
||||
To connect without credentials, disable SigV4 signing in the Spark configuration:
|
||||
|
||||
```bash
|
||||
spark-sql \
|
||||
--packages "org.apache.iceberg:iceberg-spark-runtime-3.5_2.12:1.7.2,org.apache.iceberg:iceberg-aws-bundle:1.7.2" \
|
||||
--conf "spark.sql.extensions=org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions" \
|
||||
--conf "spark.sql.defaultCatalog=iceberg" \
|
||||
--conf "spark.sql.catalog.iceberg=org.apache.iceberg.spark.SparkCatalog" \
|
||||
--conf "spark.sql.catalog.iceberg.type=rest" \
|
||||
--conf "spark.sql.catalog.iceberg.uri=http://localhost:8333" \
|
||||
--conf "spark.sql.catalog.iceberg.warehouse=s3tablescatalog/my-table-bucket" \
|
||||
--conf "spark.sql.catalog.iceberg.io-impl=org.apache.iceberg.aws.s3.S3FileIO" \
|
||||
--conf "spark.sql.catalog.iceberg.s3.endpoint=http://localhost:8333" \
|
||||
--conf "spark.sql.catalog.iceberg.s3.path-style-access=true" \
|
||||
--conf "spark.sql.catalog.iceberg.rest.sigv4-enabled=false"
|
||||
```
|
||||
Reference in new issue
Block a user