Budowa dokumentu zasad IAM
Odczytają Państwo efekt, akcję, zasób i warunek zasady.
Budowa dokumentu zasad IAM to bezpłatna lekcja AWS Security Academy na CoddyKit. To lekcja 1 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej AWS Security Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs AWS Security Academy zawiera 4 lekcji w sumie.
Zasady definiują uprawnienia
W AWS uprawnienia są wyrażane za pomocą zasad: dokumentów JSON, które przyznają lub odmawiają dostępu do działań na zasobach. Biegłe czytanie zasad jest podstawową umiejętnością SCS-C02, ponieważ niemal każde pytanie dotyczące dostępu sprowadza się do tego, na co zasada zezwala, czego zabrania lub czego nie obejmuje. W tej lekcji omówiono jej strukturę krok po kroku.
Tablica Statement
Zasada zawiera pole Version (należy używać wartości "2012-10-17") oraz element Statement, który może zawierać jedną instrukcję lub ich tablicę. Każda instrukcja jest niezależną regułą. AWS ocenia każdą instrukcję, dlatego jeden dokument może zezwalać na niektóre działania i jednocześnie jawnie odmawiać innych.
Effect: Allow lub Deny
Każda instrukcja ma wartość Effect: Allow albo Deny. AWS domyślnie odmawia dostępu: jeśli nie ma pasującego Allow, żądanie zostaje odrzucone. Pasujący Deny zawsze ma pierwszeństwo przed Allow. Rozpoznanie wartości Effect każdej instrukcji to pierwsza rzecz, którą należy sprawdzić podczas analizowania dostępu.
Action i NotAction
Element Action zawiera operacje API, do których odnosi się instrukcja, zapisane w formacie service:operation, na przykład s3:GetObject. Dozwolone są symbole wieloznaczne, takie jak s3:* lub s3:Get*. Odwrotny element, NotAction, dopasowuje każdą akcję z wyjątkiem wymienionych i łatwo użyć go nieprawidłowo, dlatego na egzaminie jest dokładnie sprawdzany.
Resource i NotResource
Element Resource określa zasoby, do których odnoszą się działania, za pomocą ARN (Amazon Resource Names). Może to być na przykład konkretny bucket i jego obiekty. Wartość "*" oznacza wszystkie zasoby. NotResource dopasowuje wszystko poza wymienionymi ARN-ami. Ścisłe ograniczanie zakresu zasobów ma kluczowe znaczenie dla zasady najmniejszych uprawnień.
Przykładowa zasada
Ta zasada tożsamości zezwala wyłącznie na odczyt obiektów z jednego bucketa. Należy zwrócić uwagę na działanie, konkretny ARN na poziomie obiektu oraz jawnie określony efekt Allow.
{
"Version": "2012-10-17",
"Statement": [{
"Effect": "Allow",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::reports/*"
}]
}Blok Condition
Opcjonalny blok Condition ogranicza sytuacje, w których instrukcja ma zastosowanie, za pomocą kluczy kontekstowych i operatorów. Można na przykład zezwolić na dostęp tylko wtedy, gdy żądanie korzysta z TLS (aws:SecureTransport) lub pochodzi ze znanego adresu IP. Warunki umożliwiają precyzyjną kontrolę uwzględniającą kontekst, wykraczającą poza samo określenie działania i zasobu.
Principal w zasadach opartych na zasobach
Zasady oparte na tożsamości nie zawierają elementu Principal, ponieważ są już dołączone do podmiotu. Zasady oparte na zasobach (takie jak zasada bucketa S3) zawierają Principal, aby określić, kogo dotyczy reguła. Sprawdzenie, czy zasada zawiera Principal, pozwala ustalić, jaki jej typ jest analizowany.
Symbole wieloznaczne są ryzykowne
Symbole wieloznaczne, takie jak "Action": "*" i "Resource": "*" użyte razem, przyznają pełny dostęp administracyjny. Na egzaminie często pojawia się nadmiernie liberalna zasada, którą należy zaostrzyć. Naprawa polega na zastąpieniu symboli wieloznacznych konkretnymi działaniami i ARN-ami oraz zastosowaniu zasady najmniejszych uprawnień.
Odczytywanie ARN-ów
ARN ma postać arn:partition:service:region:account:resource. W niektórych usługach pomija się region lub konto (S3 pomija oba w części dotyczącej bucketa). Precyzyjne odczytywanie ARN-ów pozwala ustalić, czy zasada dotyczy jednego zasobu, jednego konta czy wszystkiego, co bezpośrednio wpływa na zakres przyznanego dostępu.
Szybkie czytanie zasad
Aby przeanalizować dowolną zasadę: należy sprawdzić Effect, odczytać Action (zwracając uwagę na NotAction i symbole wieloznaczne), określić zakres Resource (zwracając uwagę na "*") oraz sprawdzić ewentualny Condition. Należy pamiętać, że jawna odmowa ma pierwszeństwo przed zezwoleniem, a domyślnym zachowaniem jest odmowa. Dzięki praktyce można w kilka sekund ocenić rzeczywisty zasięg zasady — dokładnie tego wymaga egzamin.
Szybki test
Sprawdź umiejętność czytania zasad.
Podsumowanie
Zasada IAM to dokument JSON zawierający Version i tablicę Statement. Każda instrukcja ma Effect (Allow/Deny), Action (lub NotAction), Resource określający zasoby za pomocą ARN-ów (lub NotResource) oraz opcjonalny Condition. Zasady oparte na zasobach dodają element Principal. Odmowa jest domyślna, jawna odmowa zawsze ma pierwszeństwo, a symbole wieloznaczne wskazują na nadmierne uprawnienia, które należy ograniczyć.
Często zadawane pytania
Czy lekcja „Budowa dokumentu zasad IAM” jest bezpłatna?
Tak — pełny tekst „Budowa dokumentu zasad IAM” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu AWS Security Academy, przejdź na CoddyKit PRO. Kurs AWS Security Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Budowa dokumentu zasad IAM”?
Odczytają Państwo efekt, akcję, zasób i warunek zasady. Ćwiczysz AWS Security Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć AWS Security Academy?
Nie wymagamy żadnego doświadczenia. AWS Security Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 1 z 4.
Ile czasu zajmuje lekcja „Budowa dokumentu zasad IAM”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji AWS Security Academy?
Tak. Każda lekcja AWS Security Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Budowa dokumentu zasad IAM
- Zasady oparte na tożsamości a zasady oparte na zasobie
- Przebieg oceny zasad
- Warunki, symbole wieloznaczne i zmienne zasad