HOWTO: ProGet as a UI for Amazon S3
  • 24 Jan 2022
  • 4 Minutes to read
  • Dark
    Light
  • PDF

HOWTO: ProGet as a UI for Amazon S3

  • Dark
    Light
  • PDF

How to Configure a ProGet Asset Directory to act as a UI for Amazon S3

Amazon’s S3 Bucket is a great storage option since it’s easy to create and make public or private to others.

While it’s easy to administrate, its accessibility is limited for non-regular users. Amazon’s UI tends to change frequently, so a link clicked today may change tomorrow. Granting user access is complicated for large enterprise-level groups; to the point that a Cloud Engineer is required to configure users and permissions on AWS.

ProGet can act as a neutral interface for cloud storage options like S3 and Azure Blobs. It simplifies using a cloud storage service since administrators can control when ProGet updates and what changes are applied. It also makes adding or removing files from cloud storage easy for any user, anywhere, so long as they can access ProGet.

Using ProGet as the front-end of an S3 bucket decreases security risks, as you only have to configure users and permissions in ProGet, not ProGet and Amazon AWS.

This tutorial will explain how to configure an Asset Directory to use S3 buckets as storage, therefore allowing ProGet to act as the user-interface for AWS’s S3.

Configure A ProGet Feed to Use Amazon S3

To use Amazon S3 in a ProGet Feed (not an Asset Directory) check out our tutorial for configuring a new Feed with an S3 Bucket.

Step 1: Login to your AWS Management Console

Sign up or login to your Amazon AWS account.

Step 2: Create an S3 bucket

From the top of the AWS Management Console, search for “S3” in the search bar.

Or find S3 in the "All Services" drop-down menu under "Storage"

For this tutorial, you must create a new S3 Bucket. There will be another tutorial describing how to bulk-import from an S3 Bucket (currently not available).

On the bucket page, click [Create bucket]

The AWS S3 Bucket top page

Step 3: Input the new bucket information

Name your bucket. For this demonstration we’ll use “progetconnected”

Choose your appropriate AWS Region. A region that is geographically closest to you will optimize latecy and minimize costs.

The AWS S3 page to configure the S3 options, displaying bucket name and bucket region.

Fill in the remaining S3 fields to your organization’s preferences.

When you’re ready, click [Create bucket] at the bottom of the page.

Step 4: Check your new bucket information

Once the bucket is created, you’ll need the AWS Region for Step 8 of the tutorial.

Confirm your AWS region on the main bucket page.

The AWS S3 Bucket page, with a bucket listed.

Step 5: Create an access key and secret access key

Navigate to the Identity and Access Management (IAM) in AWS to go the access keys drop-down menu.

The AWS Security Credentials page displaying access key options.

Click [Create New Access Key]

In the pop-up under Hide Access Key, copy the Access Key ID and Secret Access Key for Step 8.

The AWS access keys window displaying a blurred access key and secret access key.

Step 6: Create a new asset directory in ProGet

In ProGet, navigate to the Assets tab on the top ribbon and click [Create New Asset Directory]

The ProGet Asset Directory page displaying a "create new" button.

In the pop-up, name the new asset directory and, optionally, provide a description of it.

Click [Create New Feed]

The "Create New Asset Directory" window with options to type in a name and description.

Step 7: Navigate Manage Feed > Storage and Retention

Once the asset directory is made, navigate to its Storage and Retention page.

On the "Storage" line item, click "change" at the far right.

The "Manage Feed" page of an asset directory with an arrow pointing towards the "change" button of the storage line item.

Step 8: Configure a S3 Bucket

A pop-up with two pages will appear.

On the first page, select “Amazon S3”

A window displaying three storage options.

On the second page, input your S3 bucket information collected in steps 4 and 5.

Paste your access and secret access key IDs.

Select the Region endpoint.

Type the bucket name.

The "Configure Feed Package Store" window of a ProGet asset directory, populated, with blurred S3 keys.

Prefix

By default, ProGet will use the root folder of the bucket. The prefix field allows you to use a sub directory.

Prefix is ideal if you have multiple asset directories or feeds using the same S3 bucket for storage

Click [Save]

Your bucket is now configured to S3.

Step 9: (Optional) Test your S3 and ProGet connection

You can check you’ve successfully connected ProGet to your S3 bucket by uploading files via ProGet and seeing them appear in S3.

Navigate to the asset directory and add some files
Upload via your preferred method: upload via browser, via zip file, etc.

A window in ProGet displaying options for uploading files to an asset directory.

Depending on the file size and the server, it may take a few minutes.

Once uploaded in ProGet, go to your S3 Bucket and you’ll see the files have been populated.

A ProGet asset directory with uploaded files.

An Amazon S3 bucket displaying the same uploaded files as seen in ProGet.

Troubleshooting

Issue: Amazon S3 is not a storage option

If you cannot select Amazon S3 as a storage option during Step 7/8, most likely the Amazon AWS extension has not been installed.

To install the Amazon AWS extension:
Navigate Settings > Integrations & Extensibility > Extensions

Click the Amazon extension under Available Extensions

Click [Install]

Issue: “Unexpected Error” while adding or removing files in Asset Directory

You may come across an error that says “(500) Server Error” and “specified bucket does not exist,” “the AWS access key id you provided does not exist,” etc.

A ProGet page showing an unexpected error about the S3 bucket.

It’s possible there was an error when inputting the S3 bucket information during Steps 7/8.

For access keys, go to the Identity and Access Management (IAM) page in AWS and back to the Access Key drop down. You may need to make a new access key if you did not write down or save the previous key’s secret access key.

Return to ProGet and input the access key again, like in steps 7 and 8.

For the bucket error, go to the AWS bucket page and confirm the name of the bucket is the same as written in ProGet. Repeat steps 7 and 8 and change the bucket name if necessary.


Was this article helpful?