Sources: Streaming
AWS S3 (Streaming)
Amazon S3 (Simple Storage Service) is a scalable, high-speed, web-based cloud storage service designed for storing and retrieving any amount of data at any time.
Connecting S3 (IAM Role Setup - General Setup)
To integrate S3 into your ProxyHook you first need to create an IAM role for ProxyHook within your AWS account. If you've already done this, you can skip to the next section
- Log into your AWS account and head to 'Identity and Access Management (IAM)'
- Click 'Create Role'
- Select 'AWS account' and select 'Another AWS Account' with the value
121269227306
- Skip the permissions policy page by clicking 'Next'
- Provide a name for the role (e.g. ProxyHook) and click Create Role
- Note the ARN Role for your S3 Settings in the ProxyHook Settings page
Connecting S3 (IAM Role Setup - Bucket Access)
In order to grab files from your S3 bucket, you will need to ensure your ProxyHook IAM account has permissions to read from the desired bucket. To do so, follow these steps:
- Log into your AWS account and head to 'Identity and Access Management (IAM)' > 'Roles'
- Select your role made from above and under Permissions, Select Add permissions > Create Inline Police
- Click JSON and paste the following, editing the code where it says bucket name
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::YOUR_S3_BUCKET_HERE/*"
}
]
}
- Click next, create a policy name and hit save. If done correctly, the IAM role will now be able to read files from your S3 Bucket.
Enabling Event Notifications
The final step to start receiving the data from new S3 files is to add an Event Notification for your bucket.
- Log into your AWS Account and head to your S3 Bucket
- Click 'Properties', scroll down to 'Event Notifications' and select 'Create event notification'
- In the event name, set it to 'proxyhook-WEBHOOKID'. Replace WEBHOOK id with the unique ID from your endpoint created in ProxyHook source. For example, if you endpoint is https://go.proxyhook.com/2me3mnbmljni, you'd use '2me3mnbmljni'. That means your event name in AWS should be 'proxyhook-2me3mnbmljni' (without quotes)
- Select any event notification types
- Under destination, select 'SNS Topic', and Manually enter the SNS topic of 'arn:aws:sns:us-east-1:121269227306:s3' (without quotes).
- Save
At this point, any new files dropped into your S3 Bucket (based on optional criteria you set during notification setup) will feed into your ProxyHook event.