Setting up AWS

We establish the necessary AWS credentials

You're going to need AWS account access to get rolling on this course. We are going to use reasonable defaults for a simple approach to getting AWS set up. There are many ways of accomplishing this, and we are trying to keep it as straightforward as possible.

Some of you may work in a company where a separate team manages AWS. In that case, you'll have to work with that team to obtain the necessary credentials for this course.


The Zappa utility attempts to make your deployments as easy as possible. It will do many tasks on your behalf in AWS to get your project up and running. Some of the tasks may include:

  • An S3 bucket must be created to hold the finished package of code

  • Lambda execution environments must be created

  • API Gateways need to be created and wired up

  • and other services, based on the features you may be using.

In order for Zappa to accomplish these tasks, it will use API keys to make the modifications to your AWS account. We recommend creating an AWS IAM user just for the Zappa utility. AWS Identity and Access Management (IAM) is the method by which users and programs gain access to the AWS services. By creating a dedicated IAM user for Zappa, we isolate the permissions needed for the utility and have the ability to disable the user as needed.

Browse to the IAM console & create user#

Log into your AWS console and navigate to the IAM Service Console. Once there, click on Users from the left menu. At the top of the main screen, click on Add User

For the user name, let's use zappa-user. And then select Programmatic Access for Access type. The Zappa user will not be logging into the console, so there is for access to that.

Set permissions#

After you click Next you will now choose the permissions for this user. This is easiest to do by clicking on Attach existing policies directly.

Now add the following policies:

  • PowerUserAccess

  • IAMFullAccess

Save credentials#

Once complete, the AWS console shows you the ACCESS_KEY_ID and the SECRET_ACCESS_KEY. These are API credentials that Zappa will use. In the next steps, we will save them to your local system.

Create a credentials file on the local system#

The examples given in this course use the MacOS terminal. Windows users should use Windows Powershell to execute the commands. All differences between operating systems are noted.

Create a file on your local system. Based on your operating system it will be located at:

  • ~/.aws/credentials on Linux, macOS, or Unix

  • C:\Users\<Your Username>\.aws\credentials on Windows

And update the contents like the following. Of course, insert the credentials you generated above.

Note the format here. The AWS credentials file may have multiple credentials contained therein so we're making a special section for Zappa to ensure it doesn't interfere with any other AWS use cases you may have locally. Also, we are leaving the [default] section blank to prevent accidental usage.

Start a new discussion. All notification go to the author.