IAM-rollen en policies
Beheer veilig de toegang tot AWS-services en -resources met Identity and Access Management (IAM)-rollen en fijnmazige policies.
IAM-rollen en policies is een gratis AWS voor backendontwikkelaars (EC2, S3, RDS, Lambda)-les op CoddyKit. Dit is les 3 van 4. Je kunt 3 lessen uit dit leerpad gratis volledig lezen — daarna ontgrendelt CoddyKit PRO alle lessen, plus praktische oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject AWS voor backendontwikkelaars (EC2, S3, RDS, Lambda). Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus AWS voor backendontwikkelaars (EC2, S3, RDS, Lambda) bevat in totaal 4 lessen.
Veilige toegang ontsluiten met IAM Roles
Welkom bij de les over IAM Roles en Policies! In AWS staat beveiliging voorop. Toegang veilig beheren is essentieel voor elke backendapplicatie.
IAM Roles bieden een krachtige manier om machtigingen te delegeren zonder langetermininloggegevens te delen. Ze vormen een kernconcept voor het bouwen van veilige, schaalbare AWS-applicaties.
IAM-identiteiten: gebruikers, groepen en rollen
Voordat we dieper op de stof ingaan, vatten we de IAM-identiteiten kort samen:
- IAM Users: Vertegenwoordigen meestal een persoon of service met langetermininloggegevens.
- IAM Groups: Verzamelingen van IAM-users, waarmee je machtigingen voor meerdere gebruikers eenvoudiger beheert.
- IAM Roles: Identiteiten die je kunt aannemen om tijdelijke machtigingen te krijgen. Ze verschillen van gebruikers en groepen doordat er geen standaardlangetermininloggegevens aan zijn gekoppeld.
Vandaag richten we ons op deze krachtige IAM Roles.
De kracht van rollen begrijpen
Een IAM role is een AWS-identiteit met machtigingsbeleidsregels die bepalen wat de identiteit in AWS mag doen. De role is bedoeld om te worden aangenomen door:
- Een AWS-service (bijvoorbeeld een EC2-instantie of Lambda-functie).
- Een AWS-account (voor toegang tussen accounts).
- Een externe identiteitsprovider (zoals je bedrijfsdirectory).
Roles bieden tijdelijke, fijnmazige toegang en verbeteren de beveiliging doordat statische inloggegevens niet nodig zijn.
Wie kan een role aannemen? Vertrouwensbeleid
Elke IAM role heeft een Trust Policy (ook wel een 'assume role policy' genoemd). Dit beleid bepaalt wie of wat de role mag aannemen.
Als je bijvoorbeeld wilt dat een EC2-instantie een role aanneemt, geeft het vertrouwensbeleid de EC2-service op als vertrouwde entiteit. Dit is de eerste beveiligingslaag voor roles.
Wat kan een role doen? Machtigingsbeleid
Zodra een role is aangenomen, worden de acties ervan bepaald door Permissions Policies. Deze beleidsregels bepalen welke acties de role mag uitvoeren (of niet mag uitvoeren) op welke AWS-resources.
Dit zijn op identiteiten gebaseerde beleidsregels, geschreven in JSON-indeling en rechtstreeks aan de role gekoppeld.
In een IAM-beleidsdocument
IAM-beleidsregels zijn gestructureerde JSON-documenten. Dit is een veelgebruikte structuur:
- Version: De versie van de beleidstaal.
- Statement: Een array met afzonderlijke machtigingsverklaringen.
- Effect: Of de verklaring toegang met
Allowtoestaat of metDenyweigert. - Action: De specifieke AWS API-aanroepen die zijn toegestaan of geweigerd (bijvoorbeeld
s3:GetObject). - Resource: De AWS-resources waarop de actie van toepassing is (bijvoorbeeld
arn:aws:s3:::my-bucket/*).
{ "Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::my-bucket/*"
}
]
}Typen IAM-beleidsregels
Machtigingsbeleid kan als volgt worden ingedeeld:
- AWS Managed Policies: Gemaakt en beheerd door AWS (bijvoorbeeld
AmazonS3ReadOnlyAccess). Eenvoudig in gebruik, maar breed. - Customer Managed Policies: Door jou gemaakt en beheerd. Bieden fijnmazige controle en herbruikbaarheid.
- Inline Policies: Rechtstreeks ingebed in één IAM-identiteit (gebruiker, groep of role). Niet herbruikbaar en worden verwijderd met de identiteit.
Voor roles hebben customer managed policies vaak de voorkeur vanwege de balans tussen controle en herbruikbaarheid.
Praktijkvoorbeeld: EC2 krijgt toegang tot S3
Stel dat je een EC2-instantie hebt die bestanden uit een S3-bucket moet lezen.
In plaats van AWS-inloggegevens op de EC2-instantie op te slaan (een beveiligingsrisico!), maak je een IAM role met machtigingen om uit S3 te lezen. De EC2-service wordt dan vermeld in het vertrouwensbeleid van de role.
Wanneer de EC2-instantie wordt gestart, koppel je deze role eraan. De instantie kan de role vervolgens aannemen en tijdelijke inloggegevens krijgen om veilig toegang te krijgen tot S3.
Best practices voor IAM Roles
Zo maximaliseer je de beveiliging en efficiëntie van IAM Roles:
- Principe van minimale machtigingen: Geef een role alleen de machtigingen die absoluut noodzakelijk zijn om de taak uit te voeren.
- Regelmatige controle: Controleer je roles en de gekoppelde beleidsregels regelmatig om te garanderen dat ze nog steeds aan de huidige behoeften voldoen.
- Gebruik roles in plaats van statische inloggegevens: Geef voor AWS-services of toegang tussen accounts altijd de voorkeur aan roles boven het opnemen van toegangssleutels.
- Zinvolle naamgeving: Gebruik duidelijke, beschrijvende namen voor je roles en beleidsregels.
Een rollenspel: een korte controle
IAM roles zijn fundamenteel voor veilige en schaalbare AWS-architecturen. Laten we testen of je het goed hebt begrepen.
IAM Roles: samenvatting van veilige toegang
Goed gedaan! In deze les hebben we IAM Roles en Policies verkend. Je hebt geleerd:
- IAM roles maken veilige, tijdelijke toegang voor services en accounts mogelijk.
- Trust Policies bepalen wie een role kan aannemen.
- Permissions Policies bepalen welke acties een aangenomen role kan uitvoeren.
- Beleidsregels zijn JSON-documenten die effecten, acties en resources specificeren.
- Best practices zijn onder andere minimale machtigingen en controle.
IAM roles beheersen is een belangrijke stap bij het bouwen van robuuste en veilige applicaties op AWS. Blijf oefenen!
Leer AWS voor backendontwikkelaars (EC2, S3, RDS, Lambda) met een AI-tutor — gratis
Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.
- Cursussen
- 12
- Lessen
- 48
Veelgestelde vragen
Is de les “IAM-rollen en policies” gratis?
Ja — je kunt hier op het web alle 3 lessen van het leerpad AWS voor backendontwikkelaars (EC2, S3, RDS, Lambda), waaronder “IAM-rollen en policies”, gratis volledig lezen. Daarna ontgrendelt CoddyKit PRO alle lessen, plus interactieve oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. De cursus AWS voor backendontwikkelaars (EC2, S3, RDS, Lambda) bevat in totaal 4 lessen.
Wat leer ik in “IAM-rollen en policies”?
Beheer veilig de toegang tot AWS-services en -resources met Identity and Access Management (IAM)-rollen en fijnmazige policies. Je oefent met AWS voor backendontwikkelaars (EC2, S3, RDS, Lambda) door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.
Heb ik ervaring nodig om met AWS voor backendontwikkelaars (EC2, S3, RDS, Lambda) te beginnen?
Ervaring vooraf is niet nodig. AWS voor backendontwikkelaars (EC2, S3, RDS, Lambda) op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 3 van 4.
Hoe lang duurt de les “IAM-rollen en policies”?
De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.
Kan ik code schrijven en uitvoeren in deze les over AWS voor backendontwikkelaars (EC2, S3, RDS, Lambda)?
Ja. Elke les over AWS voor backendontwikkelaars (EC2, S3, RDS, Lambda) bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.
Alle lessen in deze cursus
- VPC's, subnetten en routetabellen
- Security groups en NACL's
- IAM-rollen en policies
- VPC-endpoints en private connectiviteit