- The synced data lives in your S3 bucket.
- Humm still manages the Glue catalog and query path.
- Humm and Airbyte assume a role in your AWS account to write, validate, and query the synced data.
Before You Start
You will need:- Permission in your AWS account to create or update an S3 bucket, IAM policy, and IAM role
- Organization admin access in Humm
- Three values from Humm:
- The Airbyte principal ARN
- The external ID
- Humm’s AWS account ID
1. Create or Choose an S3 Bucket
Create a new bucket or choose an existing one for Humm sync data. Recommendations:- Use a dedicated bucket for Humm sync data
- Keep Block Public Access enabled
- Choose the AWS region you want Humm to use for sync storage
- Avoid pointing Humm at a bucket that contains unrelated production data
2. Create an IAM Permission Policy
Create an IAM policy that gives the Humm sync role access to the bucket. Replace<YOUR_BUCKET_NAME> with your bucket name:
s3:ListBucket*lets Humm discover objects and prefixess3:PutObjectlets Humm write synced data and run connection validations3:DeleteObjectlets Humm clean up connector-owned data and remove the validation files3:GetObject*lets Humm query synced data
3. Create an IAM Role for Humm
Create an IAM role in the same AWS account as the bucket and attach the policy from the previous step. When AWS asks who can assume the role, use a custom trust policy. Replace these placeholders with the values shown in Humm:<AIRBYTE_PRINCIPAL_ARN_FROM_HUMM><HUMM_AWS_ACCOUNT_ID_FROM_HUMM><EXTERNAL_ID_FROM_HUMM>
- Airbyte assumes the role to write sync data into your bucket
- Humm assumes the role to validate access, query the synced data, and clean up connector-owned objects when needed
4. Optional: If Your Bucket Uses SSE-KMS
If the bucket uses SSE-KMS with a customer-managed KMS key, the IAM role also needs permission to use that key. At a minimum, allow:kms:Decryptkms:Encryptkms:GenerateDataKeykms:DescribeKey
5. Enter the Settings in Humm
In Humm:- Go to Settings > Data Storage
- Select Customer-hosted
- Enter your S3 bucket name
- Select the bucket region
- Paste the IAM role ARN
- Click Test connection
- Click Save
- Reach the bucket
- Assume the role
- Write a temporary validation object
- Delete that validation object
.humm/validation.txt.
6. Start or Re-run Your Sync
Once the storage settings are saved, create a new Data Sync connector or re-run setup for an existing one. Humm will then:- Configure itself to write into your S3 bucket
- Keep the Glue catalog in Humm-managed AWS
- Query the synced data through Athena
Troubleshooting
If Test connection fails:- Confirm the bucket name and region are correct
- Confirm the IAM role ARN is correct
- Confirm the trust policy includes both principals
- Confirm the
sts:ExternalIdmatches the value shown in Humm - Confirm the role has the S3 permissions shown above
- If using SSE-KMS, confirm the role can use the KMS key
- Check for AWS Organizations SCPs, bucket policies, or VPC endpoint policies that may block access