AWS ortamlarında güvenlik denetimi veya sistem yönetimi yaparken, IAM (Identity and Access Management) yapısını tüm detaylarıyla anlamak hayati önem taşır. Bu yazıda, paylaşılan teknik notlar doğrultusunda, kimlik doğrulama süreçlerinden politika detaylarına kadar AWS IAM operasyonlarını ele alacağız.
1. Erişim Yapılandırması ve Kimlik Doğrulama
AWS kaynaklarına erişim süreci, doğru kimlik bilgilerinin sisteme tanıtılmasıyla başlar.
Erişim için Access Key ID ve Secret Access Key kullanılır. Eğer spesifik bir profil oluşturmak istiyorsanız şu komutu kullanmalısınız:
aws configure --profile [profil-adı]
Geçici erişimlerde kullanılan Session Token‘ı tanımlamak için ise şu yöntem izlenir:
aws configure set aws_session_token TOKEN --profile check
Kimliğin Doğrulanması ve Dosya Yolları
Mevcut oturumun hangi kullanıcı veya ARN üzerinden çalıştığını teyit etmek için get-caller-identity komutu kritik bir role sahiptir:
aws sts get-caller-identity --profile
AWS, bu yapılandırma bilgilerini yerel işletim sistemlerinde şu dizinlerde saklar:
- Windows:
C:\Users\UserName\.aws - Linux:
/home/UserName/.aws
——————————————————————————–
2. Kullanıcıların (Users) Derinlemesine İncelenmesi
Bir hesap üzerindeki kullanıcı trafiğini ve yetkilerini anlamak için şu adımları takip ederiz:
- Kullanıcı Listesi: Hesaptaki tüm IAM kullanıcılarını listelemek için:
aws iam list-users --profile. - Grup Üyelikleri: Belirli bir kullanıcının hangi IAM gruplarına dahil olduğunu görmek için:
aws iam list-groups-for-user --user-name [user-name] --profile. - Politika Analizi:
- Kullanıcıya bağlı olan managed politikalar için:
aws iam list-attached-user-policies --user-name [user-name] --profile. - Kullanıcıya özel olarak tanımlanmış inline politikalar için:
aws iam list-user-policies --user-name [user-name] --profile.
- Kullanıcıya bağlı olan managed politikalar için:
——————————————————————————–
3. Gruplar ve Roller: Toplu Yetki Yönetimi
Kullanıcılar genellikle gruplar veya roller aracılığıyla yetkilendirilir.
Grupların Denetimi
- Hesaptaki tüm grupları görmek için
aws iam list-groupskomutu kullanılır. - Bir grubun içindeki tüm kullanıcıları listelemek için:
aws iam get-group --group-name [group-name]. - Gruba atanmış politikaları listelemek için:
aws iam list-attached-group-policies(yönetilen) veaws iam list-group-policies(inline) komutları kullanılır.
Rollerin Analizi
Sistemler veya kullanıcılar tarafından üstlenilen rolleri incelemek için şu komutlar kullanılır:
- Tüm IAM rollerini listeleme:
aws iam list-roles. - Role bağlı yönetilen politikalar:
aws iam list-attached-role-policies --role-name [role-name]. - Role bağlı satır içi politikalar:
aws iam list-role-policies --role-name [role-name].
——————————————————————————–
4. Politikalar (Policies) Hakkında Teknik Detaylar
Güvenlik açıklarını bulmanın yolu, politikaların içeriğini ve versiyonlarını okumaktan geçer.
- Genel Listeleme: Hesaptaki tüm politikaları görmek için:
aws iam list-policies. - Politika Detayları: Spesifik bir yönetilen politika hakkında bilgi almak için ARN (Amazon Resource Name) kullanılır:
aws iam get-policy --policy-arn [policy-arn]. - Versiyon Kontrolü: Politikaların geçmiş versiyonlarını listelemek için:
aws iam list-policy-versions --policy-arn [policy-arn]. Belirli bir versiyonun içeriğini okumak için iseget-policy-versionkomutu kullanılır:
Inline Politika Belgelerini Okuma
Yönetilen politikaların aksine, doğrudan bir kullanıcıya, gruba veya role gömülü olan belgeleri okumak için şu özel komutlar kullanılır:
- Kullanıcı için:
aws iam get-user-policy --user-name user-name --policy-name [policy-name] - Grup için:
aws iam get-group-policy --group-name group-name --policy-name [policy-name] - Rol için:
aws iam get-role-policy --role-name role-name --policy-name [policy-name]
