S3-säilöjen ja IAM:n hallinta
Oppikaa ottamaan käyttöön ja määrittämään S3-tallennussäilöjä sekä hallitsemaan AWS Identity and Access Management (IAM) -resursseja Terraformilla.
S3-säilöjen ja IAM:n hallinta on ilmainen Terraform ja infrastruktuuri koodina-oppitunti CoddyKitissä. Tämä on oppitunti 3/4. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu Terraform ja infrastruktuuri koodina-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Terraform ja infrastruktuuri koodina-kurssilla on yhteensä 4 oppituntia.
S3 ja Terraform: pilvitallennus
Amazon S3 (Simple Storage Service) tarjoaa erittäin skaalautuvaa, kestävää ja hyvin saatavilla olevaa objektitallennusta. Se sopii erinomaisesti varmuuskopioihin, staattisiin verkkosivustoihin ja tietojen arkistointiin.
S3-säilöjen hallinta Terraformilla tarjoaa useita etuja:
- Automaatio: Luokaa ja määrittäkää säilöjä ohjelmallisesti.
- Versionhallinta: Seuratkaa säilöjen määritysten muutoksia.
- Yhdenmukaisuus: Varmistakaa, että kaikissa ympäristöissä on samanlaiset S3-määritykset.
Ensimmäinen S3-säilönne
Määritetään yksinkertainen S3-säilö. Tähän käytetään aws_s3_bucket-resurssia.
Säilöjen nimien on oltava yksilöllisiä kaikissa AWS-tileissä. Valitkaa yksilöllinen nimi!
Kokeilkaa tämän esimerkin suorittamista:
resource "aws_s3_bucket" "my_unique_bucket" {
bucket = "my-coddykit-unique-bucket-12345" # Replace with a globally unique name
}
output "bucket_id" {
value = aws_s3_bucket.my_unique_bucket.id
}Säilön nimeäminen ja alue
Kun luotte S3-säilöä, muistakaa seuraavat tärkeät asiat:
- Yksilöllisyys maailmanlaajuisesti: Säilöjen nimien on oltava yksilöllisiä maailmanlaajuisesti kaikissa AWS-tileissä.
- Alue: Vaikka nimet ovat maailmanlaajuisesti yksilöllisiä, itse säilö sijaitsee tietyllä AWS-alueella (joka määritetään AWS-palveluntarjoajan asetuksissa).
- Nimeämissäännöt: Nimien on koostuttava pienistä kirjaimista, oltava 3–63 merkkiä pitkiä ja ne voivat sisältää yhdysmerkkejä.
Hyvän nimeämiskäytännön valitseminen on tärkeää järjestyksen ja selkeyden kannalta.
S3:n suojaus ja ominaisuudet
S3 tarjoaa esimerkiksi versioinnin, jonka avulla objektista voidaan säilyttää useita versioita, sekä julkisen käytön estot suojauksen parantamiseksi. Useimpien säilöjen julkinen käyttö on tärkeää estää oletusarvoisesti.
Tässä esimerkissä otetaan käyttöön versiointi ja varmistetaan, että julkinen käyttö on estetty.
Kokeilkaa tämän esimerkin suorittamista:
resource "aws_s3_bucket" "my_versioned_bucket" {
bucket = "coddykit-versioned-bucket-98765" # Replace with a unique name
}
resource "aws_s3_bucket_versioning" "my_versioned_bucket_versioning" {
bucket = aws_s3_bucket.my_versioned_bucket.id
versioning_configuration {
status = "Enabled"
}
}
resource "aws_s3_bucket_public_access_block" "my_versioned_bucket_public_access_block" {
bucket = aws_s3_bucket.my_versioned_bucket.id
block_public_acls = true
block_public_and_cross_account_access = true
ignore_public_acls = true
restrict_public_buckets = true
}
output "bucket_name_versioned" {
value = aws_s3_bucket.my_versioned_bucket.bucket
}AWS IAM: identiteetti ja käyttöoikeudet
AWS IAM (Identity and Access Management) on verkkopalvelu, jonka avulla AWS-resurssien käyttöoikeuksia voidaan hallita turvallisesti. Se on olennainen osa suojausta.
IAM:n avulla voitte:
- Hallita käyttäjiä sekä heidän ohjelmallista ja konsolikäyttöään.
- Myöntää tarkasti rajattuja käyttöoikeuksia tiettyihin AWS-resursseihin.
- Hallita, kuka voi tehdä mitä AWS-tilillänne.
Terraformilla voitte määrittää ja hallita IAM-resursseja samalla tavalla kuin S3-säilöjä.
IAM-käyttäjän luominen
Luodaan uusi IAM-käyttäjä Terraformilla. IAM-käyttäjä edustaa henkilöä tai palvelua, joka käyttää AWS:ää.
Tällä käyttäjällä ei vielä ole käyttöoikeuksia. Lisäämme ne seuraavaksi.
Kokeilkaa tämän esimerkin suorittamista:
resource "aws_iam_user" "coddykit_user" {
name = "coddykit-app-user"
path = "/system/"
tags = {
Department = "DevOps"
}
}
output "iam_user_name" {
value = aws_iam_user.coddykit_user.name
}
output "iam_user_arn" {
value = aws_iam_user.coddykit_user.arn
}IAM-käytäntöjen ymmärtäminen
IAM-käytännöt ovat asiakirjoja, joissa määritetään käyttöoikeudet. Niissä ilmoitetaan, mitkä toiminnot sallitaan tai kielletään, mihin resursseihin ne kohdistuvat ja millä ehdoilla.
Käytännöt kirjoitetaan JSON-muodossa, ja ne voidaan liittää käyttäjiin, ryhmiin tai rooleihin.
- Identiteettiin perustuvat käytännöt: Liitetään IAM-identiteettiin (käyttäjään, ryhmään tai rooliin).
- Resurssiin perustuvat käytännöt: Liitetään resurssiin (kuten S3-säilöön tai SQS-jonoon).
S3-käyttöoikeuksien myöntäminen
Luodaan nyt käytäntö, joka myöntää IAM-käyttäjällemme vain lukuoikeuden tiettyyn S3-säilöön, ja liitetään se käyttäjään.
aws_iam_policy-resurssi määrittää käytännön, ja aws_iam_user_policy_attachment liittää sen käyttäjään.
Kokeilkaa tämän esimerkin suorittamista:
resource "aws_s3_bucket" "policy_target_bucket" {
bucket = "coddykit-policy-bucket-112233" # Unique name
}
resource "aws_iam_user" "s3_reader_user" {
name = "coddykit-s3-reader"
}
data "aws_iam_policy_document" "s3_read_only_policy" {
statement {
actions = [
"s3:GetObject",
"s3:ListBucket"
]
resources = [
aws_s3_bucket.policy_target_bucket.arn,
"${aws_s3_bucket.policy_target_bucket.arn}/*"
]
}
}
resource "aws_iam_policy" "s3_read_only" {
name = "CoddyKitS3ReadOnlyPolicy"
description = "Grants read-only access to a specific S3 bucket"
policy = data.aws_iam_policy_document.s3_read_only_policy.json
}
resource "aws_iam_user_policy_attachment" "attach_s3_read_only" {
user = aws_iam_user.s3_reader_user.name
policy_arn = aws_iam_policy.s3_read_only.arn
}
output "s3_reader_user_name" {
value = aws_iam_user.s3_reader_user.name
}
output "s3_read_only_policy_arn" {
value = aws_iam_policy.s3_read_only.arn
}Järjestäminen IAM-ryhmien avulla
IAM-ryhmiä voi käyttää hallinnan helpottamiseen erityisesti silloin, kun käyttäjiä on paljon. Ryhmä on kokoelma IAM-käyttäjiä.
Sen sijaan että käytännöt liitettäisiin yksittäisiin käyttäjiin, ne voidaan liittää ryhmään, jolloin kaikki ryhmän käyttäjät perivät kyseiset käyttöoikeudet.
Tämä yksinkertaistaa käyttöoikeuksien hallintaa ja helpottaa vähimpien oikeuksien periaatteen noudattamista.
Pikatarkistus: S3 ja IAM
Mitkä seuraavista AWS S3 -säilöjen ja IAM-käyttäjien tai -käytäntöjen hallintaa Terraformilla koskevista väitteistä ovat TOSIA?
Kertaus: S3 ja IAM
Hienoa työtä! Tässä oppitunnissa opitte hallitsemaan AWS S3 -säilöjä ja IAM-resursseja Terraformilla.
- Loimme S3-säilöjä, määritimme versionoinnin ja estimme julkisen käytön.
- Loimme IAM-käyttäjiä ja liitimme niihin mukautettuja käytäntöjä tiettyjen käyttöoikeuksien myöntämiseksi.
- Ymmärrätte nyt S3:n merkityksen tallennuksessa ja IAM:n merkityksen turvallisessa käyttöoikeuksien hallinnassa AWS:ssä – kaikki määritettynä koodina!
Seuraavaksi perehdymme edistyneisiin tilanhallintatekniikoihin.
Opi Terraform ja infrastruktuuri koodina tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 12
- Oppitunnit
- 48
Usein kysytyt kysymykset
Onko oppitunti ”S3-säilöjen ja IAM:n hallinta” ilmainen?
Kyllä – oppitunnin ”S3-säilöjen ja IAM:n hallinta” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko Terraform ja infrastruktuuri koodina-kurssin, päivitä CoddyKit PROhon. Terraform ja infrastruktuuri koodina-kurssilla on yhteensä 4 oppituntia.
Mitä opin oppitunnilla ”S3-säilöjen ja IAM:n hallinta”?
Oppikaa ottamaan käyttöön ja määrittämään S3-tallennussäilöjä sekä hallitsemaan AWS Identity and Access Management (IAM) -resursseja Terraformilla. Harjoittelet Terraform ja infrastruktuuri koodina-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni Terraform ja infrastruktuuri koodina-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin Terraform ja infrastruktuuri koodina-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 3/4.
Kuinka kauan ”S3-säilöjen ja IAM:n hallinta”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä Terraform ja infrastruktuuri koodina-oppitunnilla?
Kyllä. Jokainen Terraform ja infrastruktuuri koodina-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.
Kaikki tämän kurssin oppitunnit
- AWS-providerin määritys
- EC2-instanssien käyttöönotto
- S3-säilöjen ja IAM:n hallinta
- VPC:n ja verkotuksen määrittäminen