AWS Solutions Architect · Ders

IAM Rolleri ve İlkeleri

JSON ilke belgeleri yazacak, bunları rollere bağlayacak ve kimlik tabanlı ilkeler ile kaynak tabanlı ilkeler arasındaki farkı anlayacaksınız.

2. ders / 413 adım

IAM Rolleri ve İlkeleri, CoddyKit'te ücretsiz bir AWS Solutions Architect dersidir. Bu, 4 dersinin 2. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, AWS Solutions Architect öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. AWS Solutions Architect kursu toplamda 4 dersten oluşur.

IAM Policy'leri: İzin Dili

Bir IAM policy, nelerin yapılmasına izin verildiğini belirten bir JSON belgesidir. Her bildirimde Effect (Allow veya Deny), bir Action ve bir Resource bulunur. Kodda bir örnek gösterilir.

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

Kimlik Tabanlı ve Kaynak Tabanlı Policy'ler

Kimlik tabanlı policy bir kullanıcıya veya role eklenir ve bunların neler yapabileceğini belirtir. Kaynak tabanlı policy doğrudan kaynağa eklenir ve kaynağa kimlerin erişebileceğini belirtir.

# 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/*'
  }]
}

IAM Rolleri: Geçici Kimlikler

Bir IAM rolü, kısa süreliğine üstlendiğiniz bir kimliktir. Süresi dolan geçici kimlik bilgileri sağlar; EC2, Lambda ve diğer hizmetler için idealdir.

# 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

Güven Policy'leri: Rolü Kimler Üstlenebilir

Her rolün, rolü kimlerin üstlenebileceğini belirten bir güven policy'si ve rol üstlenildikten sonra neler yapabileceğini belirten izin policy'leri vardır. Güven policy'si yoksa erişim de yoktur.

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

AWS Hizmet Rolleri: EC2 ve Lambda

EC2'nin AWS'yi çağırması gerektiğinde, role saran bir instance profile verin. Kimlik bilgileri otomatik olarak yenilenir; anahtarları koda sabitlemeniz gerekmez. Lambda da aynı şekilde çalışır.

# 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

Hesaplar Arası Rol Üstlenme

Hesaplar arası rol, bir hesaptaki kullanıcının başka bir hesaptaki rolü üstlenerek o hesabın kaynaklarına erişmesini sağlar. Çok hesaplı kurulumlarda her yerde yinelenen kullanıcılar oluşturmaktan böylece kaçınılır.

# 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

Policy Koşulları: Ayrıntılı Denetim

Bir Condition, policy'ye ek kurallar ekler; örneğin MFA zorunluluğu getirebilir veya erişimi belirli bir IP aralığı ya da bölgeyle sınırlayabilir. Böylece izinler çok daha sıkı hale gelir.

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

İzin Sınırları

Bir izin sınırı, bir policy daha fazlasına izin verse bile bir kimliğin sahip olabileceği en yüksek yetkiyi sınırlar. Geliştiricilerin kendi rollerini oluşturmasına izin verirken kullanılan güvenlik ağıdır.

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

Policy Değerlendirme Mantığı

AWS bir isteği denetlerken her şeyden üstün tek bir kural vardır: açık bir Deny isteği her zaman engeller. Bundan sonra policy'nin her katmanı erişime izin verilmesi konusunda hemfikir olmalıdır.

IAM Policy Simülatörü

IAM Policy Simülatörü, bir kimliğin bir işlemi yapıp yapamayacağını işlemi gerçekten çalıştırmadan test eder. Canlıya geçmeden önce izinlerdeki sorunları ayıklamak için çok kullanışlıdır.

# 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/*

Federasyon Erişimi için Roller

Okta, Google veya Active Directory dışındaki kullanıcılar federasyon (SAML veya OIDC) aracılığıyla rolleri üstlenebilir. IAM kullanıcısı oluşturmadan milyonlarca kişiye erişim verebilirsiniz.

Hızlı Kontrol

Bu dersteki AWS Solutions Architect (SAA-C03) kavramlarını anlayıp anlamadığınızı test edin.

Ders Özeti

Kısaca: policy'ler Allow ve Deny için kullanılan JSON kurallarıdır, roller geçici kimlik bilgileri sağlar ve koşullar ayrıntılı denetim ekler. Sıradaki konu: en az ayrıcalık.

Başlamak ücretsiz

Yapay zeka eğitmeniyle AWS Solutions Architect öğren — ücretsiz

Tarayıcında gerçek kod yaz ve çalıştır, 7/24 yapay zeka eğitmeninden anında yardım al; web'de ya da uygulamada kaldığın yerden devam et.

Kurslar
30
Dersler
120

Sıkça Sorulan Sorular

“IAM Rolleri ve İlkeleri” dersi ücretsiz mi?

Evet — “IAM Rolleri ve İlkeleri” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve AWS Solutions Architect kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. AWS Solutions Architect kursu toplamda 4 dersten oluşur.

“IAM Rolleri ve İlkeleri” dersinde ne öğreneceğim?

JSON ilke belgeleri yazacak, bunları rollere bağlayacak ve kimlik tabanlı ilkeler ile kaynak tabanlı ilkeler arasındaki farkı anlayacaksınız. AWS Solutions Architect ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

AWS Solutions Architect öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te AWS Solutions Architect, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 2. dersidir.

“IAM Rolleri ve İlkeleri” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu AWS Solutions Architect dersinde kod yazıp çalıştırabilir miyim?

Evet. Her AWS Solutions Architect dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. IAM Kullanıcıları ve Grupları
  2. IAM Rolleri ve İlkeleri
  3. En Az Ayrıcalık İlkesi
  4. IAM En İyi Uygulamaları ve MFA
← AWS Solutions Architect Sayfasına Dön