Cloud Resources
The Cloud Resource component is a cross-account role that facilitates access to the user's S3 buckets and Glue catalog for workspace and cluster-level components.
Create Cloud Resource
Enter a name for your cloud resource.
Click on the provided link to be redirected to your AWS CloudFormation page.
Review the inputs on the AWS CloudFormation page and proceed by executing the script. Here are the following inputs available in AWS CloudFormation:
BucketNames
VPCEndpointId
E6dataAccountId
ExternalId
CloudFormation creates certain permissions when the script is executed. The following permissions are included:
Lambda Permissions:
Creates AWS::Lambda::Permission (LambdaInvokePermission) to allow a Lambda function to execute.
IAM Role for Lambda:
Creates an IAM role (LambdaExecutionRole) that allows the Lambda function to create IAM policies, attach them to the cross-account role, and update bucket policies.
Manage Bucket Policies Lambda:
Deploys a Lambda function (ManageBucketPoliciesLambda) that creates bucket policies for the specified buckets (or for all buckets if * is provided). These policies allow clusters to access data via a VPC endpoint.
Additionally, the Lambda function creates a policy that allows the cross-account role to access the specified buckets.
Custom Resource:
Creates a custom resource (ManageBucketPoliciesCustomResource) that triggers the Lambda function, accepting inputs such as BucketNames, VPCEndpointId, CrossAccountGlueRole, and Random.
Cross-Account IAM Role:
Establishes a cross-account IAM role (CrossAccountGlueRole) with policies (GlueCrossAccountPolicy and e6data-cross-account-s3-policy) that grant Glue and S3 access. Roles in our account will assume this role.
After successful execution, the output panel of CloudFormation will display the Cross-Account IAM Role and any failed buckets. The customer needs to update the Cross-Account IAM Role in the e6data UI.
Last updated