Ask AI

Configure the Amazon S3 connector

Connect with Amazon S3 to import videos and publish captions

📢
Requirements: Enterprise plan

In Amazon S3

You’ll need an Amazon S3 bucket to store your media and caption files.

Option 1 - Shared Credentials (simplest)

Step 1: Create a policy for bucket access

  1. Log in to your AWS account
  1. Go to IAM in the AWS console
  1. In the left navigation bar, click PoliciesCreate policy
  1. Select the JSON tab
  1. In the policy editor, paste the following, replacing your-bucket-name with the name of your S3 bucket:
    1. {
      	"Version": "2012-10-17",
      	"Statement": [
      		{
      			"Effect": "Allow",
      			"Action": "s3:ListBucket",
      			"Resource": "arn:aws:s3:::your-bucket-name"
      		},
      		{
      			"Effect": "Allow",
      			"Action": [
      				"s3:GetObject",
      				"s3:PutObject"
      			],
      			"Resource": "arn:aws:s3:::your-bucket-name/*"
      		}
      	]
      }
  1. Click Create to save the policy
 

Step 2: Create an IAM user

  1. In IAM, click Create user
  1. Give the user a name (e.g., captionhub-s3-user)
  1. Choose Attach policies directly
    1. Notion image
  1. Select the policy you just created
  1. Click Next, then Create user
 

Step 3: Get the user credentials

  1. Click the name of the user you just created
  1. Open the Security credentials tab
Notion image
  1. Scroll down and click Create access key
  1. Select Third-party service
    1. Notion image
      💡

      If you’re concerned about the warning, consider using Option 2 - Trust policy instead

  1. Confirm by selecting I understand the above recommendation and want to proceed to create an access key
  1. Click Next
  1. Skip the optional tags step
  1. Copy the Access key ID. Then click Show to view and copy the Secret access key. You will need both of these later in CaptionHub.
  1. Click Done

Option 2 - Trust policy (most secure)

💡

We recommend setting this up on a call with the CaptionHub technical team. Please contact customer support to arrange this.

Step 1: Create a policy for bucket access

  1. Log in to your AWS account
  1. Go to IAM in the AWS console
  1. In the left navigation bar, click PoliciesCreate policy
  1. Select the JSON tab
  1. In the policy editor, paste the following, replacing your-bucket-name with the name of your S3 bucket:
    1. {
      	"Version": "2012-10-17",
      	"Statement": [
      		{
      			"Effect": "Allow",
      			"Action": "s3:ListBucket",
      			"Resource": "arn:aws:s3:::your-bucket-name"
      		},
      		{
      			"Effect": "Allow",
      			"Action": [
      				"s3:GetObject",
      				"s3:PutObject"
      			],
      			"Resource": "arn:aws:s3:::your-bucket-name/*"
      		}
      	]
      }
  1. Click Create to save the policy

Step 2

  1. Navigate back to IAM
  1. Click “Roles” in the left menu
  1. Click “Create Role”
  1. Choose “Custom Trust Policy”
  1. Edit the text box for the policy and set it as follows, replacing CAPTIONHUB_ACCOUNT_ID with the value provided by our team and EXTERNAL_ID as a long, random string (we recommend a 36 character UUID)

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::CAPTIONHUB_ACCOUNT_ID:root"
            },
            "Action": "sts:AssumeRole",
            "Condition": {
                "StringEquals": {
                    "sts:ExternalId": "EXTERNAL_ID"
                }
            }
        }
    ]
  1. Attach the permissions policy you created in step 1
  1. Give the role a name, for example “captionhub-s3-access-role” and click “Save”
  1. Now in the policy list, find the policy and open it
  1. Copy the ARN and send it to the CaptionHub support team. It should look like:
arn:aws:iam::YOUR_ACCOUNT:role/captionhub-s3-access-role
  1. Wait for confirmation that this has been set up at our end

In CaptionHub (both options)

Notion image
  1. From the team dropdown menu (top right), open the Connectors page
  1. Find the Amazon S3 connector and click Edit
  1. Enable the connector and enter:
      • Access Key ID (if using option 1)
      • Secret Access Key (if using option 1)
      • Region
      • Bucket Name
      • Role ARN (if using option 2)
      • External ID (if using option 2)
  1. Click Save
 

Once the integration is set up

  1. On your Dashboard, choose New Project from… and select Amazon S3
  1. Your Amazon S3 media will be displayed. Select the files you want to import into CaptionHub for subtitling.
 
Did this answer your question?
😞
😐
🤩