Pratique du Shadowing: IAM 1 - Apprendre l'anglais à l'oral avec la vidéo

Création de la leçon...
1
Hi everyone.
2
Today I'd like to walk you through AWS Identity and Access Management, or IAM.
3
Rather than treating IAM as just a place where we create users and attach policies, I want to look at it as the authorization control plane for AWS.
4
As engineers, we interact with IAM almost every day.
5
We use roles for EC2 and Lambda, temporary credentials through STS, Federation for CICD, and policies whenever one AWS service needs access to another.
6
So we'll look at how IAM evaluates requests, how roles and trust policies work, some production security patterns, and then we'll finish with a short live demo.
7
One useful thing to remember from the beginning is that IAM itself is a global service.
8
IAM is the authorization control plane.
9
Engineers use IAM indirectly almost everywhere in AWS.
10
Before we get into policies and roles, let's start with the problem IAM is actually solving.
11
What problem does IAM solve?
12
Before IAM, the basic access model would be difficult to operate at AWS scale.
13
Imagine developers sharing credentials, applications using permanent access keys,
14
and administrators manually reviewing permissions. That creates several problems.
15
Credentials live too long, access becomes difficult to trace, and delegation doesn't scale.
16
IAM changes that model.
17
Instead of giving everybody shared credentials, we define identities, policies, trust relationships, and short -lived sessions.
18
A good example is GitHub Actions.
19
Instead of storing an AWS access key in GitHub, GitHub can present an OIDC token.
20
AWS validates that identity, the workflow assumes an IAM role through STS, and AWS returns temporary credentials.
21
The pipeline gets only the permissions it needs, for only the period it needs them.
22
Move from shared permanent credentials to policy -based temporary access.
23
IAM provides the enforcement model, but engineers still have to design permissions correctly.
24
So with that problem in mind, what exactly is IAM?
25
What is IAM?
26
At a high level, IAM controls WHO can do what in AWS and under which conditions.
27
There are really three concepts I want you to keep in mind.
28
First, we have principles.
29
These can be users, roles, federated identities, or AWS services.
30
Second, we have policies.
31
Policies describe what actions are allowed or denied.
32
And third, we have sessions.
33
This is where STS becomes important because it gives us temporary credentials.
34
From a production perspective, roles are usually much more important than IAM users.
35
For workforce access, we would normally combine AWS with Federation or IAM Identity Center, rather than creating large numbers of individual IAM users.
36
and almost everything here can be managed through terraform
37
or another infrastructure as principle plus policy plus session a role is an im identity
38
that has both a trust relationship and permissions now let's look at what actually happens
39
when that identity calls an aws api
40
how im works request evaluation
41
if we follow the request flow from left to right it starts with a principle making a signed AWS API request.
42
That request has context.
43
AWS knows the action being requested, the resource, tags, source IP, MFA state, organization information, and potentially other condition keys.
44
Then the authorization engine evaluates the policies that apply.
45
The simple mental model is explicit deny wins.
46
After that, AWS looks for an applicable allow.
47
And if there is no allow, we end up with an implicit deny.
48
This explains one of the most common IAM troubleshooting questions.
49
Why am I getting access denied when this role has administrator access?
50
Because administrator access isn't necessarily the final decision.
51
An SCP, permissions boundary, session policy, resource policy, KMS key policy, or explicit deny may still restrict the request.
52
Explicit deny allow, otherwise implicit deny.
53
Always consider all applicable policy layers.
54
And that brings us to the IAM components we actually work with day -to -day.
55
Core components.
56
The easiest way to think about these components is by responsibility.
57
IAM users represent individual identities, although we try to avoid them for modern application access.
58
Groups organize permissions for users.
59
But in most production environments, roles are where things get more interesting.
60
A role can be assumed by an EC2 instance, Lambda function, another AWS account, GitHub Actions, Kubernetes workload, or federated user.
61
Then we have policies.
62
A permissions policy answers, what can this role do?
63
A trust policy answers a different question, who is allowed to become this role?
64
That's an extremely important distinction.
65
Finally, STS creates the short -lived credentials used during the role session.
66
Access Analyzer then helps us detect external access, unused permissions, and policy problems.
67
Permissions policy, what the role can do.
68
Trust policy, who can assume the role.
69
That trust relationship becomes especially important when we start talking about security.
70
Security deep dive.
71
Now let's talk about security, because this is probably the most important part of using IAM correctly.
72
On the left, we have the kind of trust relationship we generally want to avoid.
73
A wildcard principle effectively says that the trust boundary is extremely broad.
74
The safer pattern is what we're showing on the right.
75
We identify a specific federated identity provider, and then we add conditions.
76
With GitHub OIDC, for example, we can validate the audience and also restrict which repository, organization, or branch is allowed to assume the role.
77
There are several security layers working together here.
78
We may have an identity policy, a resource policy, a trust policy, a permissions boundary, an SCP, and possibly a session policy.
79
For third -party cross -account access, an external ID is another important control.
80
And for human administrative access, MFA should normally be part of the design.
81
The key idea is simple.
82
Don't just protect what the role can do.
83
Protect who can get into the role in the first place.
84
A secure IAM design controls both permissions and trust.
85
Wildcard trust should be treated very carefully.
86
And IAM becomes even more important when we see how many AWS services depend on it.
87
Integration with AWS services.
88
One reason IAM matters so much is that it isn't really a standalone service.
89
It's the shared authorization layer across AWS.
90
An EC2 instance can receive permissions through an instance profile.
91
Lambda uses an execution role.
92
EKS workloads can use IRSA or EKS pod identity instead of inheriting broad node permissions.
93
S3 combines identity policies with bucket policies.
94
KMS adds key policies and grants.
95
Organizations gives us SEP guardrails.
96
And CloudTrail provides the audit trail showing which identity, called which API.
97
In practice, a lot of IAM problems happen at these integration points rather than inside IAM itself.

À propos de cette leçon

Vous vous entraînez en anglais avec "IAM 1" en utilisant la technique du Shadowing.

Qu'est-ce que la technique du Shadowing ?

Le Shadowing est une technique d'apprentissage des langues fondée sur la science, développée à l'origine pour la formation des interprètes professionnels. Le principe est simple mais puissant : vous écoutez de l'anglais natif et le répétez immédiatement à voix haute — comme une ombre suivant le locuteur avec un décalage de 1 à 2 secondes. Les recherches montrent une amélioration significative de la précision de la prononciation, de l'intonation, du rythme, des liaisons, de la compréhension orale et de la fluidité.

Technique du shadowing : lire le guide complet étape par étape →