AWS has been running Microsoft Workloads on AWS for over 12 years, longer than any other cloud provider. Visual Studio is an excellent tool to develop and test your application code. In this article, we assume you have nothing regarding your current configuration. We will go over all the required steps so that you can get productive with AWS, Visual Studio and AWS Toolkit. Follow the 8 steps below and you will go from zero tooling to being fully able to start deploying Microsoft Workloads with your own AWS Account and a configured Visual Studio IDE. At Xerris, we help enable organizations and individuals to get up and running with AWS and Visual Studio following similar steps including AWS bootcamps educating people on best practices of AWS.
Objective: Get a developer set up with an AWS Account, Visual Studio and AWS Toolkit set up and ready for AWS Development for Microsoft Workloads
- Setting up your AWS Account
You will need an AWS Account to deploy code and take advantage of the many AWS Services. To create and activate a new AWS Account https://aws.amazon.com/ and choose “Create an AWS Account” . You will then be required to enter your email address, password, and your AWS Account Name. Proceed with the other required information. This will include the required Payment Information where you will enter credit/debit card information. You must also enter in your phone number to confirm your identity. If you are starting out, it is advisable to just select the Basic Plan or Free Tier. Part of the process will include activating your AWS account via a confirmation email. You now have access to 12 months Free Tier Access and opening the door to the AWS Platform.
2. Logging into the AWS Account and setting up MFA
With the AWS Account set up, you should be able to log into the AWS Console where you can view and configure your root account to be protected with Multi Factor Authentication(MFA) to prevent unauthorized access to your account.
a) You will need to install a Virtual MFA application on your phone such as Google Authenticator or Microsoft Authenticator.
b) Essentially, once you are in the console, you can configure the MFA access by clicking on your account name in the top right corner and select “My Security Credentials”, then you open up the Multi-factor authentication(MFA) section to set this up.
c) Once configured, you will be required to enter your MFA code as part of the login process. Which helps secure your AWS Account against unauthorized access.
Detailed instructions can be found at https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_enable_virtual.html#enable-virt-mfa-for-root
3) AWS Command Line Interface installation
The AWS Command Line is a unified tool to help manage your AWS services from the command line.
a) Install AWS CLI
b) Verify that you have installed it correctly by verifying the version that you have
Detailed instructions: https://aws.amazon.com/cli/
4) Create an IAM User
To run AWS configuration from your machine, you will need to have an IAM(Identity and Access Management) user configured.
a)Create an AWS IAM Group
Log into your AWS Console and go to the IAM Service (Select from the Services dropdown at the top left).
Click on Groups and then “Create New Group”, set the Group Name to “admin”, find and select the “AdministratorAccess” policy so that users of this group(Your AWS CLI user) can use the AWS CLI to create and configure AWS Resources. When creating groups it is advised to consider the “least privilege” model for users by giving the least amount of privileges for a user to complete their duties.
Verify that you can see this new Group with administrator access when you press on the Groups link on the left hand side
b)Create a User to use the newly created group.
Click on the users link, press “Add User”, enter the user name (let’s say cliuser), select Programmatic access, press “Next: Permissions”, check the group that you created in (a), press “Next: Tags”, press “Next: Review”, press “Create User”
You will then see a success message and an option to download a .csv file which contains the Access key ID and the Secret access key. Download the csv file to a secure location on your machine and you can note the access key id and secret access key. These will be required to configure your AWS CLI
5) Configure AWS CLI
Open up a new command shell(cmd on Windows) now that you have installed AWS CLI and that you have an AWS User configured(along with the access key id and secret access key.
Type in the command “aws configure”
Enter the AWS Access Key ID
Enter the AWS Secret Access Key
Enter in the Default region name (For my case I have selected us-west-2)
Enter the Default output format : (Just hit return)
There are many AWS Regions to select from, generally you want a region to be a region close to you geographically.
Note that your AWS config is stored at ~/.aws/config or on your windows machine in the file located at C:\Users\”username”\config
Test out your AWS configuration with the following command(see screenshot):
aws iam list-groups-for-user --user-name cliuser
Note that it is a double hyphen before “user-name”. This will validate that your CLI is configured properly to your AWS Account.
6) Install Visual Studio
Now that we have have AWS CLI installed and configured we will now install Visual Studio. For the purposes of this article, we will use the Free download of the Community version of Visual Studio which can be found at https://visualstudio.microsoft.com/downloads/
This should be quite a straightforward process and then verify that you can launch Visual Studio on your machine. Ensure you can launch Visual Studio and you should see it launch as shown here.
7) Install the AWS Toolkit for Visual Studio
Another useful tool that can help you creating/managing AWS resources is the AWS Toolkit for Visual Studio
a) Download and install the AWS Toolkit
8)A brief look at the AWS Toolkit within Visual Studio
Once installed you should be able to launch the AWS Explorer within Visual Studio. Select the “AWS Explorer” option under the View Menu option.
The AWS Explorer should default to the AWS account that you configured above when you did your “aws configure”.
This provides a convenient way of looking at the same AWS infrastructure that you would in the AWS Console but within Visual Studio itself. You can create, view and update resources within the AWS Explorer.
One quick test is to create an S3 bucket in the AWS Explorer and then confirm its existence in the AWS Console.
Now you have set up your AWS Account, Visual Studio with AWS Toolkit and configured them to work together. This is the basis to start some real software development for Microsoft Workloads.
You can then continue onto https://xerris.com/insights/creating-an-aws-serverless-c-dotnet-application-s3-dynamodb-api-gateway-lambdas-c-sharp-and-cdk/ to develop a serverless aws application with this setup.