What Is IAM
What Is IAM
1. When you first create an AWS account, you begin with only a single sign-
in principle that has complete access to all AWS Cloud services and
resources in the account.
2. This principal is called the root user. As long as you have an open
account with AWS, the root user for that relationship will persist.
3. The root user can be used for both console and programmatic access to
AWS resources.
IAM Users:
1. Users are persistent identities set up through the IAM service to
represent individual people or applications.
2. You may create separate IAM users for each member of your operations
team so they can interact with the console and use the CLI.
3. You might also create dev, test, and production users for applications
that need to access AWS Cloud services (although you will see later in
this chapter that IAM roles may be a better solution for that use case).
4. IAM users can be created by principals with IAM administrative
privileges at any time through the AWS Management Console, CLI, or
SDKs.
5. Users are persistent in that there is no expiration period; they are
permanent entities that exist until an IAM administrator takes an action
to delete them.
What is IAM?
1. AWS Identity and Access Management (IAM) is a web service that helps you
securely control access to AWS resources.
2. IAM, you can centrally manage permissions that control which AWS
resources users can access.
3. You use IAM to control who is authenticated (signed in) and authorized (has
permissions) to use resources.
4. When you create an AWS account, you begin with one sign-in identity that
has complete access to all AWS services and resources in the account.
5. This identity is called the AWS account root user and is accessed by signing
in with the email address and password that you used to create the
account.
6. We strongly recommend that you don't use the root user for your everyday
tasks.
7. Safeguard your root user credentials and use them to perform the tasks
that only the root user can perform.
IAM features:
IAM gives you the following features:
You can grant other people permission to administer and use resources in
your AWS account without having to share your password or access key.
2. Granular permissions:
2. For example, you might allow some users complete access to Amazon
Elastic Compute Cloud (Amazon EC2), Amazon Simple Storage Service
(Amazon S3), Amazon DynamoDB, Amazon Redshift, and other AWS
services.
3. For other users, you can allow read-only access to just some S3 buckets,
or permission to administer just some EC2 instances, or to access your
billing information but nothing else.
1. You can use IAM features to securely provide credentials for applications
that run on EC2 instances.
2. These credentials provide permissions for your application to access
other AWS resources. Examples include S3 buckets and DynamoDB
tables.
5 Identity federation
1. If you receive log records that include information about those who made
requests for resources in your account.
2. That information is based on IAM identities.
IAM supports the processing, storage, and transmission of credit card data
by a merchant or service provider, and has been validated as being
compliant with Payment Card Industry (PCI) Data Security Standard (DSS).
For more information about PCI DSS, including how to request a copy of the
AWS PCI Compliance Package.
8. Eventually Consistent:
3. However, the change must be replicated across IAM, which can take
some time.
5. We recommend that you do not include such IAM changes in the critical,
high-availability code paths of your application.
Accessing IAM:
How you use IAM differs, depending on the work that you do in AWS.
Service user
If you use an AWS service to do your job, then your administrator provides you with the
credentials and permissions that you need. As you use more advanced features to do your
work, you might need additional permissions. Understanding how access is managed can
help you request the right permissions from your administrator.
Service administrator
if an AWS resource at your company, you probably have full access to IAM.
It's your job to determine which IAM features and resources your service users should
access. You must then submit requests to your IAM administrator to change the
permissions of your service users. Review the information on this page to understand the
basic concepts of IAM.
IAM administrator
If you're an IAM administrator, you manage IAM identities and write
policies to manage access to IAM.
2. Roles are used to grant specific privileges to specific actors for a set
duration of time.
4. When one of these actors assumes a role, AWS provides the actor
with a temporary security token from the AWS Security Token
Service (STS) that the actor can use to access AWS Cloud services.
Authentication:
There are three ways that IAM authenticates a principal:
User Name/Password—
When a principal represents a human interacting with the
console, the human will provide a user name/password pair to
verify their identity. IAM allows you to create a password policy
enforcing password complexity and expiration.
Authorization