Step 1 - Create an IAM role for cross-account access
- In the AWS Console, go to IAM → Roles and select Create role.
- Choose Custom trust policy and enter the policy below. e6data provides the exact account ID and role name to use in place of the placeholders.
- Select Next, name the role (for example,
e6data-cross-account-role), and select Create role.
Step 2 - Attach an S3 read-access policy
- Open the role and select Add permissions → Create inline policy.
- In the JSON editor, enter the following, replacing
YOUR-DATA-BUCKETwith your bucket name(s):
- Select Create policy.
Step 3 - Attach a Glue access policy (if using AWS Glue)
If you will connect an AWS Glue catalog, add a second inline policy:Step 4 - Attach KMS Decrypt Policy (only if your S3 buckets are encrypted with KMS)
- Click Add permissions → Create inline policy.
- Enter, replacing the key ARN with your own KMS key(s) and click Create policy.
Step 5 - Retrieve the role ARN
Open the role and copy its Role ARN from the Overview page. You register this ARN in e6data in Register the role in e6data below.Alternative - AWS CLI
The same role can be created from the command line:All of these steps can also be performed with a CloudFormation template. Contact e6data for the template.
Register the role in e6data
With the role created, add it to your workspace:- In the Compute Plane, go to Settings → Storage Credentials.
- Select Add Cloud Resource.
- Enter the IAM Role ARN from Step 5.
- Select Save.
See also
- Connect S3 and Glue - create a catalog that uses this role.
- Troubleshooting - cross-account access errors.