Skip to main content
How-to guideApplies to: Unified engine deployments
Read two S3 prefixes in one SQL session, using a different named AWS role for each view. A query does not have to switch a global AWS credential.

Prepare separate permissions

Use an existing EKS Pod Identity as described in Assume an AWS role. Provide two target roles that this source can assume. Role A needs read access to s3://recipe-data-a/tpcds-sf1/item/; role B needs read access to the matching prefix in recipe-data-b. Use existing SF1 item Parquet data in each bucket. Replace the bucket names, role ARNs, and Regions with your values. Give each role its intended S3 and KMS permissions. For a clear isolation check, use roles that do not also have access to the other bucket.

Create both role credentials

Bind the identity to each source

The final result has one count per source. Each view keeps its own credential reference. With the restricted fixture roles above, a read using the other role should fail with an access error; successful row counts alone do not establish permission isolation. When finished:
Last modified on November 4, 2026