AWS Security Services

Submitted by sylvia.wong@up… on Mon, 06/27/2022 - 18:49

Before we start learning about developing and deploying applications, we will dive into the crucial aspect of securing your AWS (Amazon Web Services) environment and explore the various services and best practices available to protect your resources.

Security is of paramount importance when it comes to cloud computing, and AWS provides a robust set of security services to help you safeguard your data, applications, and infrastructure. In this section, we will focus on two important subtopics that play a significant role in securing your AWS account:

  1. generating and securing access keys
  2. understanding the AWS Identity and Access Management (IAM) service

First, we will lets look at access keys in your AWS account. Access keys are used to authenticate your identity and allow programmatic access to your AWS resources. Lets dive into generating access keys securely and the best practices to protect them from unauthorised access.

Sub Topics

Generating and securing access keys in your AWS (Amazon Web Services) account is an important step in managing and securing programmatic access to your AWS resources. Access keys consist of an access key ID and a secret access key and are used to authenticate your identity when making API requests to AWS services. Please attend the scheduled tutorial for a step-by-step explanation of how to generate and secure access keys.

Live Session Tutorial: Generate and Secure Access Keys

Your tutor will facilitate an online class to demonstrate this process in a live setting. Please check 'Live Sessions' in your navigation bar to register and attend this session.

Step by Step Guide

Log in to your AWS account and access the AWS Management Console.

In the AWS Management Console, search for and select "IAM" (Identity and Access Management) from the available services.

In the IAM dashboard, navigate to the "Users" section. Here, you can manage the users and their access in your AWS account.

Locate and select the user for whom you want to generate access keys.

In the user details page, click on the "Security credentials" tab. Here, you will find information related to the user's security credentials.

Under the "Access keys" section, click on the "Create access key" button. AWS will generate a new access key ID and secret access key for the user.

Once the access key is generated, click on the "Download .csv" button to download the access key details. Make sure to store this file securely, as it contains sensitive information.

If the user already has existing access keys, it is recommended to remove any old or unused access keys to maintain security and minimise potential vulnerabilities.

Store the downloaded access key file in a secure location, such as encrypted storage or a password-protected folder, accessible only to authorised personnel.

To use the access keys, you will need to configure them in the AWS service or application that requires programmatic access to your AWS resources. This could involve setting up the access key ID and secret access key in SDKs, CLI (Command Line Interface), or other AWS services.

As a security best practice, it is recommended to rotate your access keys periodically. This ensures that if access keys are compromised or accidentally exposed, their validity is limited, reducing the potential impact.

Now we understand how to generate and secure access keys, the next step is to understand how you handle Identity and Access Management.

AWS IAM (Identity and Access Management) is a web service provided by Amazon Web Services (AWS) that allows you to manage user access and permissions to AWS resources. IAM enables you to create and control users, groups, roles, and policies, granting fine-grained access control and ensuring the principle of least privilege.

Access keys, on the other hand, are credentials used for programmatic access to AWS resources. Access keys consist of an access key ID and a secret access key, which are generated within IAM and used to authenticate and authorise API requests to AWS services.

A diagram depicting AWS Account

AWS IAM service and access keys can be used to facilitate the following:

  1. User Management: With IAM, you can create individual IAM users for each person in your organisation who requires access to AWS resources. For example, you can create an IAM user named "John" with specific permissions to manage EC2 instances and S3 buckets. By using IAM, you can control what actions John can perform and which AWS resources he can access.
  2. Group-Based Access: IAM allows you to organise your IAM users into groups and assign permissions to the groups. For instance, you can create an "Administrators" group and assign it permissions to manage all AWS resources while creating a "Developers" group with permissions specific to application development tasks. This helps streamline access management and simplifies permission assignment.
  3. Role-Based Access: IAM roles are similar to users, but they are not associated with a specific person. Instead, roles are assigned to AWS resources, such as EC2 instances or Lambda functions, to grant them permission to access other resources or perform specific actions. For example, you can create an IAM role named "S3AccessRole" with permission to read and write objects in an S3 bucket and then assign that role to an EC2 instance.
  4. Policy Management: IAM policies define the permissions granted to users, groups, or roles. Policies are written in JSON format and can be attached to IAM entities. For example, you can create a policy that allows a user to list EC2 instances but restricts them from terminating instances. IAM policies provide granular control over what actions are allowed or denied.
  5. Access Keys: Access keys are used for programmatic access to AWS services. For instance, if you are developing a custom application that needs to interact with AWS services, you can generate an access key pair within IAM. The access key ID and secret access key are then used in your application's code or configuration to authenticate and authorise API requests to AWS services.

The AWS IAM service provides a robust framework for managing user access and permissions to AWS resources, allowing you to control and secure your cloud environment. Access keys, generated within IAM, enable programmatic access to AWS services, facilitating automation and integration with your applications.

Go through the AWS Academy Portal’s videos and the challenge questions of Module 4 (Cloud Foundations course).

Cloud Foundations Module 4 – AWS Cloud Security

This module includes the following sections:

  • AWS shared responsibility model
  • AWS Identity and Access Management (IAM)
  • Securing a new AWS account
  • Securing accounts
  • Securing data on AWS
  • Working to ensure compliance
https://awsacademy.instructure.com/courses/50473/modules#module_576082
Module Linking
Main Topic Image
A person using a laptop in a data center AWS
Is Study Guide?
Off
Is Assessment Consultation?
Off