amazon-web-servicesamazon-s3aws-marketplace

How to put an app on the AWS Marketplace that requires S3 resources


I have an application on an EC2 Instance that I wish to put on the AWS Marketplace. The application uses AmazonS3 and on startup requires users to enter an Access Key, Secret Key, and a BucketName. It then uses the Accekey, and secretkey to create a bucket (specified by BucketName). However, this isn't allowed on the AWS Marketplace.

However, for AWS Marketplace,we require application authors to use AWS Identity and Access Management (IAM) roles and do not permit the use of access or secret keys.

Question

I am confused as to how to get around this and still put my AMI on the AWS Marketplace. My goal is for users to create their own S3 buckets in their own AWS Environments.


Solution

  • Your customers can create AWS IAM roles with access to the required resources (S3 buckets), and allow your account to use those roles.

    The reasoning behind this mechanism is that your customers can follow the principle of least privilege and limit access to very specific resources and actions on those resources (instead of providing unsecured / root access to their entire account)