- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
2 weeks ago
No, you don't need the Enterprise plan for this. Serverless reads Unity Catalog external locations fine on Premium; Enterprise only comes into play for optional serverless egress control features.
Your trace shows the request is signed and S3 itself returns the 403, so AWS is denying it, and the usual reason it denies serverless but not classic is the network path. Classic compute runs inside your VPC; serverless reaches S3 from Databricks-managed VPCs through a VPC endpoint. Any policy condition written for your VPC won't match serverless traffic.
Three things to check:
-
Bucket policy network conditions. Look for
aws:SourceVpc,aws:sourceVpce, or source-IP conditions in the bucket policy. If you want to keep the bucket locked down, add a condition usingaws:VpceOrgPathswith the Databricks organization path, per the serverless firewall doc. -
KMS key policy. If the bucket uses SSE-KMS, the key policy must allow your storage credential's IAM role (
kms:Decrypt,kms:GenerateDataKey*), per the S3 KMS doc. -
Confirm classic is really using the external location. If your classic cluster has an instance profile attached, it may be that role doing the reading. Test on classic with no instance profile so you know the UC storage credential role itself has the S3 permissions.