AWS Solutions Architect · Pelajaran

Peranan dan Dasar IAM

Tulis dokumen dasar JSON, lampirkannya pada peranan dan fahami perbezaan antara dasar berasaskan identiti dengan dasar berasaskan sumber.

Pelajaran 2 daripada 413 langkah

Peranan dan Dasar IAM ialah pelajaran AWS Solutions Architect percuma di CoddyKit. Ini ialah pelajaran 2 daripada 4. Sebanyak 3 pelajaran dalam laluan pembelajaran ini boleh dibaca sepenuhnya secara percuma — selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan praktikal dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran AWS Solutions Architect, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus AWS Solutions Architect merangkumi sejumlah 4 pelajaran.

Policy IAM: Bahasa Kebenaran

Sebuah policy IAM ialah dokumen JSON yang menyatakan perkara yang dibenarkan. Setiap pernyataan mempunyai Effect (Allow atau Deny), Action dan Resource. Kod tersebut menunjukkan satu contoh.

{
  'Version': '2012-10-17',
  'Statement': [
    {
      'Effect': 'Allow',
      'Action': [
        's3:GetObject',
        's3:PutObject'
      ],
      'Resource': 'arn:aws:s3:::my-bucket/*'
    }
  ]
}

Policy Berasaskan Identiti berbanding Berasaskan Sumber

Policy berasaskan identiti dilampirkan pada pengguna atau peranan dan menyatakan perkara yang boleh dilakukannya. Policy berasaskan sumber dilampirkan pada sumber itu sendiri dan menyatakan siapa yang boleh mengaksesnya.

# Example S3 bucket policy (resource-based)
{
  'Version': '2012-10-17',
  'Statement': [{
    'Effect': 'Allow',
    'Principal': {
      'AWS': 'arn:aws:iam::123456789012:role/MyAppRole'
    },
    'Action': 's3:GetObject',
    'Resource': 'arn:aws:s3:::my-bucket/*'
  }]
}

Peranan IAM: Identiti Sementara

Peranan IAM ialah identiti yang anda andaikan buat seketika. Ia memberikan kelayakan sementara yang tamat tempoh — sesuai untuk EC2, Lambda dan perkhidmatan lain.

# Attach an IAM role to an EC2 instance (instance profile)
aws ec2 associate-iam-instance-profile \
  --instance-id i-0abcdef1234567890 \
  --iam-instance-profile Name=MyEC2Role

Policy Kepercayaan: Siapa Boleh Assume Peranan

Setiap peranan mempunyai policy kepercayaan yang menyatakan siapa dibenarkan untuk assume peranan itu, serta policy kebenaran yang menyatakan perkara yang boleh dilakukannya selepas diandaikan. Tiada policy kepercayaan, tiada akses.

# Trust policy for a Lambda execution role
{
  'Version': '2012-10-17',
  'Statement': [{
    'Effect': 'Allow',
    'Principal': {
      'Service': 'lambda.amazonaws.com'
    },
    'Action': 'sts:AssumeRole'
  }]
}

Peranan Perkhidmatan AWS: EC2 dan Lambda

Apabila EC2 perlu memanggil AWS, berikannya profil instance yang membungkus peranan. Kelayakan diputar secara automatik — tiada kunci yang dikodkan secara tetap. Lambda berfungsi dengan cara yang sama.

# Retrieve role credentials from EC2 metadata (IMDSv2)
TOKEN=$(curl -X PUT 'http://169.254.169.254/latest/api/token' \
  -H 'X-aws-ec2-metadata-token-ttl-seconds: 21600')
curl -H "X-aws-ec2-metadata-token: $TOKEN" \
  http://169.254.169.254/latest/meta-data/iam/security-credentials/MyEC2Role

Pengandaian Peranan Merentas Akaun

Peranan merentas akaun membolehkan pengguna dalam satu akaun assume peranan dalam akaun lain dan mengakses sumbernya. Beginilah persediaan berbilang akaun mengelakkan pengguna pendua di mana-mana sahaja.

# Assume a cross-account role from Account A
aws sts assume-role \
  --role-arn arn:aws:iam::999999999999:role/CrossAccountRole \
  --role-session-name my-session

Syarat Policy: Kawalan Terperinci

Condition menambah peraturan tambahan pada policy — seperti mewajibkan MFA atau mengehadkan akses kepada julat IP atau rantau tertentu. Ini menjadikan kebenaran lebih ketat.

# Policy that requires MFA for sensitive actions
{
  'Effect': 'Deny',
  'Action': ['iam:*', 'cloudtrail:*'],
  'Resource': '*',
  'Condition': {
    'BoolIfExists': {
      'aws:MultiFactorAuthPresent': 'false'
    }
  }
}

Sempadan Kebenaran

Sempadan kebenaran mengehadkan jumlah maksimum kebenaran yang boleh dimiliki oleh identiti, walaupun policy memberikan lebih banyak. Ia ialah jaring keselamatan untuk membenarkan pembangun mencipta peranan sendiri.

# Attach a permissions boundary to a user
aws iam put-user-permissions-boundary \
  --user-name alice \
  --permissions-boundary arn:aws:iam::aws:policy/AmazonS3ReadOnlyAccess

Logik Penilaian Policy

Apabila AWS menyemak permintaan, satu peraturan mengatasi semua yang lain: Deny yang nyata sentiasa menyekatnya. Selepas itu, setiap lapisan policy mesti bersetuju untuk membenarkan akses.

Simulator Policy IAM

IAM Policy Simulator menguji sama ada identiti boleh melakukan sesuatu — tanpa benar-benar menjalankannya. Sangat sesuai untuk menyahpepijat kebenaran sebelum dilancarkan.

# Simulate an IAM policy evaluation via CLI
aws iam simulate-principal-policy \
  --policy-source-arn arn:aws:iam::123456789012:user/alice \
  --action-names s3:PutObject \
  --resource-arns arn:aws:s3:::my-bucket/*

Peranan untuk Akses Bersekutu

Pengguna luar daripada Okta, Google atau Active Directory boleh assume peranan melalui persekutuan (SAML atau OIDC). Anda boleh memberikan berjuta-juta orang akses tanpa pengguna IAM.

Semakan Pantas

Uji pemahaman anda tentang konsep AWS Solutions Architect (SAA-C03) daripada pelajaran ini.

Rumusan Pelajaran

Rumusan pantas: policy ialah peraturan JSON untuk Allow dan Deny, peranan memberikan kelayakan sementara, dan syarat menambah kawalan terperinci. Seterusnya: keistimewaan paling minimum.

Percuma untuk bermula

Pelajari AWS Solutions Architect dengan tutor kecerdasan buatan — percuma

Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.

Kursus
30
Pelajaran
120

Soalan Lazim

Adakah pelajaran “Peranan dan Dasar IAM” percuma?

Ya — sebanyak 3 pelajaran dalam laluan pembelajaran AWS Solutions Architect, termasuk “Peranan dan Dasar IAM”, boleh dibaca sepenuhnya secara percuma di web ini. Selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan interaktif dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Kursus AWS Solutions Architect merangkumi sejumlah 4 pelajaran.

Apakah yang akan saya pelajari dalam “Peranan dan Dasar IAM”?

Tulis dokumen dasar JSON, lampirkannya pada peranan dan fahami perbezaan antara dasar berasaskan identiti dengan dasar berasaskan sumber. Anda berlatih AWS Solutions Architect menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.

Adakah saya memerlukan pengalaman untuk memulakan AWS Solutions Architect?

Tiada pengalaman terdahulu diperlukan. Pembelajaran AWS Solutions Architect di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 2 daripada 4.

Berapa lamakah pelajaran “Peranan dan Dasar IAM” diambil?

Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.

Bolehkah saya menulis dan menjalankan kod dalam pelajaran AWS Solutions Architect ini?

Ya. Setiap pelajaran AWS Solutions Architect menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.

Semua pelajaran dalam kursus ini

  1. Pengguna dan Kumpulan IAM
  2. Peranan dan Dasar IAM
  3. Prinsip Keistimewaan Minimum
  4. Amalan Terbaik IAM dan MFA
← Kembali ke AWS Solutions Architect