{"id":30635,"date":"2025-09-30T03:01:30","date_gmt":"2025-09-30T00:01:30","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/aws-iam-bulutta-kimlik-ve-izin-yonetimine-kapsamli-bir-bakis\/"},"modified":"2025-09-30T03:01:30","modified_gmt":"2025-09-30T00:01:30","slug":"aws-iam-bulutta-kimlik-ve-izin-yonetimine-kapsamli-bir-bakis","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/aws-iam-bulutta-kimlik-ve-izin-yonetimine-kapsamli-bir-bakis\/","title":{"rendered":"AWS IAM: Bulutta Kimlik ve \u0130zin Y\u00f6netimine Kapsaml\u0131 Bir Bak\u0131\u015f"},"content":{"rendered":"<p>AWS IAM (Identity and Access Management) bulut g\u00fcvenli\u011finin temelini olu\u015fturur. Bu makale, AWS kaynaklar\u0131n\u0131za g\u00fcvenli eri\u015fimi nas\u0131l y\u00f6netece\u011finizi, kimlikleri nas\u0131l tan\u0131mlayaca\u011f\u0131n\u0131z\u0131 ve yetkilendirmeleri nas\u0131l uygulayaca\u011f\u0131n\u0131z\u0131 ad\u0131m ad\u0131m a\u00e7\u0131klayarak bulut ortam\u0131n\u0131zda sa\u011flam bir g\u00fcvenlik duru\u015fu olu\u015fturman\u0131za yard\u0131mc\u0131 olacakt\u0131r. Yeni ba\u015flayanlardan ileri seviye kullan\u0131c\u0131lara kadar herkes i\u00e7in kapsaml\u0131 bir rehber sunuyoruz.<\/p>\n<p>Modern i\u015f d\u00fcnyas\u0131nda dijitalle\u015fme h\u0131z kesmeden devam ederken, \u015firketler operasyonlar\u0131n\u0131n giderek daha b\u00fcy\u00fck bir k\u0131sm\u0131n\u0131 bulut ortamlar\u0131na ta\u015f\u0131yor. Bu d\u00f6n\u00fc\u015f\u00fcmle birlikte, geleneksel IT g\u00fcvenlik yakla\u015f\u0131mlar\u0131 da evrim ge\u00e7irmek zorunda kal\u0131yor. Fiziksel sunucu odalar\u0131ndaki eri\u015fim kontrol\u00fcnden, art\u0131k sanal ve dinamik bulut ortamlar\u0131ndaki kaynaklara kimlerin, neye, ne zaman ve nas\u0131l eri\u015fti\u011fini y\u00f6netme zorunlulu\u011funa ge\u00e7i\u015f yap\u0131yoruz. \u0130\u015fte tam bu noktada, AWS Identity and Access Management (IAM) devreye giriyor ve bulut g\u00fcvenli\u011finin adeta vazge\u00e7ilmez bir temel ta\u015f\u0131 haline geliyor.<\/p>\n<p>Peki, AWS IAM neden bu kadar kritik? Basit\u00e7e ifade etmek gerekirse, IAM, AWS kaynaklar\u0131n\u0131za eri\u015fimi g\u00fcvenli bir \u015fekilde y\u00f6netmenizi sa\u011flayan bir web servisidir. Bir AWS hesab\u0131n\u0131z oldu\u011funda, varsay\u0131lan olarak siz (root kullan\u0131c\u0131) t\u00fcm yetkilere sahip olursunuz. Ancak bu durum, tek ba\u015f\u0131n\u0131za \u00e7al\u0131\u015fm\u0131yorsan\u0131z veya farkl\u0131 uygulamalar\u0131n\u0131z varsa h\u0131zla bir g\u00fcvenlik riski haline gelebilir. Yanl\u0131\u015f yap\u0131land\u0131r\u0131lm\u0131\u015f bir izin, hassas verilere yetkisiz eri\u015fime, maliyetli kaynaklar\u0131n k\u00f6t\u00fcye kullan\u0131m\u0131na veya hatta t\u00fcm sistemlerinizin tehlikeye at\u0131lmas\u0131na yol a\u00e7abilir. Bu nedenle, eri\u015fimi do\u011fru bir \u015fekilde kontrol etmek, siber g\u00fcvenlik stratejinizin olmazsa olmaz\u0131d\u0131r.<\/p>\n<p>IAM, sadece g\u00fcvenlik a\u00e7\u0131s\u0131ndan de\u011fil, ayn\u0131 zamanda uyumluluk ve maliyet etkinli\u011fi a\u00e7\u0131s\u0131ndan da b\u00fcy\u00fck \u00f6nem ta\u015f\u0131r. \u00c7o\u011fu d\u00fczenleyici \u00e7er\u00e7eve (\u00f6rne\u011fin GDPR, HIPAA, PCI DSS), veri eri\u015fiminin s\u0131k\u0131 bir \u015fekilde kontrol edilmesini ve denetlenmesini gerektirir. IAM, bu gereklilikleri kar\u015f\u0131laman\u0131z i\u00e7in gerekli ara\u00e7lar\u0131 sunar. Ayn\u0131 zamanda, gereksiz veya a\u015f\u0131r\u0131 izinlerin \u00f6n\u00fcne ge\u00e7erek, yetkisiz kullan\u0131c\u0131lar\u0131n kaynaklar\u0131 yanl\u0131\u015fl\u0131kla veya kas\u0131tl\u0131 olarak kullanmas\u0131n\u0131 engelleyerek potansiyel maliyet art\u0131\u015flar\u0131n\u0131n da \u00f6n\u00fcne ge\u00e7ebilir. \u00d6rne\u011fin, bir geli\u015ftiricinin yanl\u0131\u015fl\u0131kla pahal\u0131 bir veritaban\u0131 \u00f6rne\u011fi ba\u015flatmas\u0131n\u0131 engelleyerek b\u00fct\u00e7enizi koruyabilirsiniz.<\/p>\n<p>\u00d6zetle, AWS IAM; kimlik do\u011frulama (authentication) ve yetkilendirme (authorization) s\u00fcre\u00e7lerini merkezi bir \u015fekilde y\u00f6neterek, AWS ortam\u0131n\u0131z\u0131n g\u00fcvenli\u011fini sa\u011flamak, uyumluluk standartlar\u0131n\u0131 kar\u015f\u0131lamak ve operasyonel verimlili\u011fi art\u0131rmak i\u00e7in tasarlanm\u0131\u015f kapsaml\u0131 bir \u00e7\u00f6z\u00fcmd\u00fcr. Bulut mimarinizi olu\u015ftururken veya mevcut bir ortam\u0131 y\u00f6netirken, IAM&#8217;i derinlemesine anlamak ve do\u011fru bir \u015fekilde uygulamak, uzun vadeli ba\u015far\u0131n\u0131z i\u00e7in hayati \u00f6nem ta\u015f\u0131r. Bu makale boyunca, IAM&#8217;in temel kavramlar\u0131ndan ba\u015flayarak ileri d\u00fczey kullan\u0131m senaryolar\u0131na kadar her y\u00f6n\u00fcn\u00fc ke\u015ffedece\u011fiz. B\u00f6ylece, AWS ortam\u0131n\u0131zda g\u00fc\u00e7l\u00fc ve esnek bir eri\u015fim kontrol mekanizmas\u0131 kurmak i\u00e7in gerekli bilgi ve becerileri edineceksiniz.<\/p>\n<h2>AWS IAM Temel Kavramlar: Kimler, Neler ve Nas\u0131l Yetkilendirilir?<\/h2>\n<p>AWS IAM&#8217;i etkin bir \u015fekilde kullanabilmek i\u00e7in, \u00f6ncelikle onun temel yap\u0131 ta\u015flar\u0131n\u0131 ve bu yap\u0131 ta\u015flar\u0131n\u0131n birbiriyle nas\u0131l etkile\u015fimde bulundu\u011funu anlamak gerekir. IAM, temelde &#8220;kimlikler&#8221; ve &#8220;politikalar&#8221; etraf\u0131nda d\u00f6ner. Kimlikler, AWS kaynaklar\u0131n\u0131za eri\u015fmeye \u00e7al\u0131\u015fan varl\u0131klard\u0131r (insanlar, uygulamalar, AWS servisleri vb.). Politikalar ise bu kimliklere hangi eylemleri hangi kaynaklar \u00fczerinde ger\u00e7ekle\u015ftirebileceklerini belirten kurallard\u0131r. \u015eimdi bu temel kavramlar\u0131 daha yak\u0131ndan inceleyelim:<\/p>\n<h3>IAM Kullan\u0131c\u0131lar\u0131 (IAM Users): Bireysel Kimlikler<\/h3>\n<p>IAM Kullan\u0131c\u0131lar\u0131, AWS hesab\u0131n\u0131zda belirli bir ki\u015fiyi veya uygulamay\u0131 temsil eden kal\u0131c\u0131 kimliklerdir. Her IAM kullan\u0131c\u0131s\u0131n\u0131n kendi ad\u0131, \u015fifresi (konsol eri\u015fimi i\u00e7in) ve\/veya eri\u015fim anahtarlar\u0131 (programatik eri\u015fim i\u00e7in) bulunur. Kullan\u0131c\u0131lar, do\u011frudan yetkilendirilebilece\u011fi gibi, genellikle daha iyi y\u00f6netim i\u00e7in gruplara atan\u0131r ve izinleri bu gruplar arac\u0131l\u0131\u011f\u0131yla al\u0131r. Bir kullan\u0131c\u0131 olu\u015fturdu\u011funuzda, varsay\u0131lan olarak hi\u00e7bir izne sahip de\u011fildir. G\u00fcvenlik prensibi gere\u011fi, her kullan\u0131c\u0131n\u0131n sadece g\u00f6revini yerine getirmesi i\u00e7in gerekli minimum izinlere sahip olmas\u0131 sa\u011flanmal\u0131d\u0131r.<\/p>\n<h3>IAM Gruplar\u0131 (IAM Groups): \u0130zinleri Gruplama<\/h3>\n<p>IAM Gruplar\u0131, birden fazla IAM kullan\u0131c\u0131s\u0131n\u0131 bir araya getiren koleksiyonlard\u0131r. Gruplar, y\u00f6netimi kolayla\u015ft\u0131rmak i\u00e7in kullan\u0131l\u0131r. \u00d6rne\u011fin, &#8220;Geli\u015ftiriciler&#8221;, &#8220;Operasyonlar&#8221; veya &#8220;Analistler&#8221; gibi gruplar olu\u015fturabilirsiniz. Gruplara bir politika atad\u0131\u011f\u0131n\u0131zda, o grubun t\u00fcm \u00fcyeleri otomatik olarak o politikan\u0131n belirledi\u011fi izinlere sahip olur. Bu, her kullan\u0131c\u0131ya ayr\u0131 ayr\u0131 izin atamak yerine, grup baz\u0131nda y\u00f6netim yaparak zaman kazand\u0131r\u0131r ve tutarl\u0131l\u0131\u011f\u0131 art\u0131r\u0131r. Bir kullan\u0131c\u0131n\u0131n birden fazla gruba \u00fcye olabilece\u011fini de unutmamak gerekir.<\/p>\n<h3>IAM Rolleri (IAM Roles): Ge\u00e7ici Kimlikler ve G\u00fcven \u0130li\u015fkileri<\/h3>\n<p>IAM Rolleri, kullan\u0131c\u0131lar ve gruplardan biraz daha farkl\u0131 \u00e7al\u0131\u015f\u0131r ve genellikle AWS servisleri (\u00f6rne\u011fin EC2, Lambda), di\u011fer AWS hesaplar\u0131 veya harici kimlik sa\u011flay\u0131c\u0131lar\u0131 (federasyon arac\u0131l\u0131\u011f\u0131yla) taraf\u0131ndan \u00fcstlenilen ge\u00e7ici kimliklerdir. Bir rol, kal\u0131c\u0131 kimlik bilgileri yerine, \u00fcstlenildi\u011finde ge\u00e7ici g\u00fcvenlik kimlik bilgileri (ge\u00e7ici eri\u015fim anahtar\u0131, gizli eri\u015fim anahtar\u0131 ve oturum belirteci) sa\u011flar. Bu ge\u00e7ici kimlik bilgileri belirli bir s\u00fcre sonra otomatik olarak sona erer ve bu da g\u00fcvenlik riskini \u00f6nemli \u00f6l\u00e7\u00fcde azalt\u0131r. Roller, &#8220;g\u00fcven ili\u015fkisi&#8221; ad\u0131 verilen bir mekanizma arac\u0131l\u0131\u011f\u0131yla hangi varl\u0131klar\u0131n bu rol\u00fc \u00fcstlenebilece\u011fini tan\u0131mlar. \u00d6rne\u011fin, bir EC2 \u00f6rne\u011fi S3&#8217;e dosya yazmak i\u00e7in bir IAM rol\u00fcn\u00fc \u00fcstlenebilir. Bu, eri\u015fim anahtarlar\u0131n\u0131 EC2 \u00f6rne\u011fine manuel olarak yerle\u015ftirmekten \u00e7ok daha g\u00fcvenli ve y\u00f6netilebilir bir yakla\u015f\u0131md\u0131r.<\/p>\n<h3>IAM Politikalar\u0131 (IAM Policies): \u0130zinleri Kodlamak<\/h3>\n<p>IAM Politikalar\u0131, AWS ortam\u0131n\u0131zdaki eri\u015fim kontrol\u00fcn\u00fcn beynidir. Bunlar, JSON format\u0131nda yaz\u0131lm\u0131\u015f belgelerdir ve hangi &#8220;eylemlerin&#8221; (actions) hangi &#8220;kaynaklar&#8221; (resources) \u00fczerinde &#8220;izin verildi\u011fini&#8221; (Allow) veya &#8220;reddedildi\u011fini&#8221; (Deny) tan\u0131mlar. Politikalar, kullan\u0131c\u0131lara, gruplara veya rollere eklenebilir. Politikalar\u0131n temel yap\u0131s\u0131 \u015fu elementleri i\u00e7erir:<\/p>\n<ul>\n<li><code>Version<\/code>: Politika dilinin versiyonunu belirtir (genellikle &#8220;2012-10-17&#8221;).<\/li>\n<li><code>Statement<\/code>: \u0130zinlerin veya reddetmelerin ana blo\u011fu. Her statement, ayr\u0131 bir izin kural\u0131n\u0131 tan\u0131mlar.<\/li>\n<li><code>Sid<\/code> (Statement ID): \u0130ste\u011fe ba\u011fl\u0131 bir tan\u0131mlay\u0131c\u0131. Politikay\u0131 daha okunabilir hale getirir.<\/li>\n<li><code>Effect<\/code>: \u0130znin sonucu; <code>Allow<\/code> (izin ver) veya <code>Deny<\/code> (reddet).<\/li>\n<li><code>Action<\/code>: \u0130zin verilen veya reddedilen AWS API eylemleri (\u00f6rne\u011fin, <code>s3:GetObject<\/code>, <code>ec2:RunInstances<\/code>).<\/li>\n<li><code>Resource<\/code>: Eylemin uygulanabilece\u011fi AWS kaynaklar\u0131 (ARN format\u0131nda belirtilir).<\/li>\n<li><code>Condition<\/code>: \u0130ste\u011fe ba\u011fl\u0131 olarak, iznin ge\u00e7erli olmas\u0131 i\u00e7in belirli ko\u015fullar\u0131 tan\u0131mlar (\u00f6rne\u011fin, belirli bir IP adresinden eri\u015fim, MFA kullan\u0131m\u0131).<\/li>\n<\/ul>\n<p>Politikalar d\u00f6rt ana t\u00fcrde olabilir:<\/p>\n<ol>\n<li><strong>AWS Y\u00f6netilen Politikalar (AWS Managed Policies)<\/strong>: AWS taraf\u0131ndan olu\u015fturulan ve y\u00f6netilen, yayg\u0131n kullan\u0131m senaryolar\u0131 i\u00e7in tasarlanm\u0131\u015f politikalar (\u00f6rn. <code>AmazonS3ReadOnlyAccess<\/code>).<\/li>\n<li><strong>M\u00fc\u015fteri Y\u00f6netilen Politikalar (Customer Managed Policies)<\/strong>: Kendi \u00f6zel ihtiya\u00e7lar\u0131n\u0131za g\u00f6re sizin olu\u015fturdu\u011funuz ve y\u00f6netti\u011finiz politikalar. En esnek ve \u00f6nerilen y\u00f6ntemdir.<\/li>\n<li><strong>Sat\u0131r \u0130\u00e7i Politikalar (Inline Policies)<\/strong>: Tek bir kullan\u0131c\u0131ya, gruba veya role do\u011frudan eklenen politikalar. Genellikle kaynak belirli izinler i\u00e7in kullan\u0131l\u0131r.<\/li>\n<li><strong>S\u0131n\u0131r Politikalar\u0131 (Permissions Boundaries)<\/strong>: IAM kimlikleri i\u00e7in maksimum izinleri belirleyen ileri d\u00fczey politikalar.<\/li>\n<\/ol>\n<p>AWS ortam\u0131n\u0131zda g\u00fcvenli\u011fi sa\u011flaman\u0131n anahtar\u0131, bu temel IAM kavramlar\u0131n\u0131 do\u011fru bir \u015fekilde anlamak ve &#8220;En Az Ayr\u0131cal\u0131k Prensibi&#8221;ni (Principle of Least Privilege) uygulamakt\u0131r. Bu prensip, her varl\u0131\u011fa (kullan\u0131c\u0131, rol, servis) yaln\u0131zca g\u00f6revini yerine getirmek i\u00e7in kesinlikle gerekli olan minimum izinleri vermeniz gerekti\u011fini savunur. Bu yakla\u015f\u0131m, olas\u0131 bir g\u00fcvenlik ihlalinin etkisini minimize eder ve sistemlerinizin genel g\u00fcvenlik duru\u015funu g\u00fc\u00e7lendirir.<\/p>\n<table>\n<thead>\n<tr>\n<th>\u00d6zellik<\/th>\n<th>IAM Kullan\u0131c\u0131s\u0131<\/th>\n<th>IAM Rol\u00fc<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Kimlik Tipi<\/td>\n<td>Kal\u0131c\u0131 Kimlik (\u0130nsan veya uygulama)<\/td>\n<td>Ge\u00e7ici Kimlik (Servisler, d\u0131\u015f kullan\u0131c\u0131lar, di\u011fer hesaplar)<\/td>\n<\/tr>\n<tr>\n<td>Kimlik Bilgileri<\/td>\n<td>Kal\u0131c\u0131 kullan\u0131c\u0131 ad\u0131\/\u015fifre, eri\u015fim anahtarlar\u0131<\/td>\n<td>Ge\u00e7ici g\u00fcvenlik kimlik bilgileri (oturum s\u00fcreli)<\/td>\n<\/tr>\n<tr>\n<td>Kullan\u0131m Alan\u0131<\/td>\n<td>Bireysel geli\u015ftiriciler, y\u00f6neticiler, kal\u0131c\u0131 otomasyon<\/td>\n<td>EC2 \u00f6rnekleri, Lambda fonksiyonlar\u0131, \u00e7apraz hesap eri\u015fimi, federasyon<\/td>\n<\/tr>\n<tr>\n<td>G\u00fcvenlik<\/td>\n<td>Kimlik bilgilerinin korunmas\u0131 sorumlulu\u011fu kullan\u0131c\u0131da<\/td>\n<td>AWS taraf\u0131ndan y\u00f6netilen ge\u00e7ici kimlik bilgileri, otomatik rotasyon<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2>AWS IAM Politikalar\u0131n\u0131 Anlamak ve Olu\u015fturmak: \u0130zinleri Kodlamak<\/h2>\n<p>AWS IAM&#8217;in kalbi, izinlerinizi tan\u0131mlad\u0131\u011f\u0131n\u0131z ve uygulad\u0131\u011f\u0131n\u0131z politikalard\u0131r. Bu politikalar, AWS ortam\u0131n\u0131zdaki her t\u00fcrl\u00fc eri\u015fim karar\u0131n\u0131n temelini olu\u015fturur. Etkili bir g\u00fcvenlik stratejisi i\u00e7in, politikalar\u0131n nas\u0131l \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131, nas\u0131l olu\u015fturuldu\u011funu ve en \u00f6nemlisi, &#8220;en az ayr\u0131cal\u0131k&#8221; ilkesiyle nas\u0131l uyumlu hale getirilece\u011fini derinlemesine anlamak gerekir. Politikalar, JSON (JavaScript Object Notation) format\u0131nda yaz\u0131l\u0131r ve AWS Konsolu&#8217;ndaki g\u00f6rsel d\u00fczenleyiciyi veya do\u011frudan JSON kodunu kullanarak olu\u015fturulabilir.<\/p>\n<h3>Temel Politika Yap\u0131s\u0131 ve Elementleri<\/h3>\n<p>Daha \u00f6nce de belirtti\u011fimiz gibi, bir IAM politikas\u0131 bir veya daha fazla &#8220;Statement&#8221; (ifade) i\u00e7erir. Her statement, ayr\u0131 bir izin kural\u0131n\u0131 temsil eder ve <code>Effect<\/code>, <code>Action<\/code>, <code>Resource<\/code> ve iste\u011fe ba\u011fl\u0131 olarak <code>Condition<\/code> elementlerinden olu\u015fur.<\/p>\n<p><strong>\u00d6rnek 1: S3 Kovas\u0131na Sadece Okuma Eri\u015fimi Veren Bir Politika<\/strong><\/p>\n<p>Bu politika, bir kullan\u0131c\u0131n\u0131n veya rol\u00fcn belirli bir S3 kovas\u0131ndan nesneleri okumas\u0131na ve kovadaki nesneleri listelemesine izin verir:<\/p>\n<pre><code>\n{\n  \"Version\": \"2012-10-17\",\n  \"Statement\": [\n    {\n      \"Sid\": \"S3KovaOkumaErisimi\",\n      \"Effect\": \"Allow\",\n      \"Action\": [\n        \"s3:GetObject\",\n        \"s3:ListBucket\"\n      ],\n      \"Resource\": [\n        \"arn:aws:s3:::benim-guvenli-kovam\",\n        \"arn:aws:s3:::benim-guvenli-kovam\/*\"\n      ]\n    }\n  ]\n}\n<\/pre>\n<p><\/code><\/p>\n<p>Bu \u00f6rnekte:<\/p>\n<ul>\n<li><code>\"Version\"<\/code>: Politika dilinin versiyonudur.<\/li>\n<li><code>\"Sid\"<\/code>: Bu statement i\u00e7in benzersiz bir kimlik (iste\u011fe ba\u011fl\u0131 ama iyi bir pratiktir).<\/li>\n<li><code>\"Effect\": \"Allow\"<\/code>: Belirtilen eylemlere izin verilece\u011fini g\u00f6sterir.<\/li>\n<li><code>\"Action\"<\/code>: \u0130zin verilen S3 eylemlerini listeler (<code>GetObject<\/code> ve <code>ListBucket<\/code>).<\/li>\n<li><code>\"Resource\"<\/code>: Eylemlerin uygulanabilece\u011fi kaynaklar\u0131 Amazon Kaynak Ad\u0131 (ARN) format\u0131nda belirtir. \u0130lk ARN kovan\u0131n kendisi, ikincisi ise kovan\u0131n i\u00e7indeki t\u00fcm nesneler i\u00e7indir.<\/li>\n<\/ul>\n<p><strong>\u00d6rnek 2: Belirli Bir EC2 \u00d6rne\u011fi T\u00fcr\u00fcn\u00fc Ba\u015flatma \u0130zni Veren Bir Politika<\/strong><\/p>\n<p>Bu politika, bir kullan\u0131c\u0131n\u0131n sadece <code>t2.micro<\/code> tipindeki EC2 \u00f6rneklerini belirli bir b\u00f6lgede ba\u015flatmas\u0131na izin verir:<\/p>\n<pre><code>\n{\n  \"Version\": \"2012-10-17\",\n  \"Statement\": [\n    {\n      \"Effect\": \"Allow\",\n      \"Action\": \"ec2:RunInstances\",\n      \"Resource\": \"arn:aws:ec2:eu-central-1::instance\/*\",\n      \"Condition\": {\n        \"StringEquals\": {\n          \"ec2:InstanceType\": \"t2.micro\"\n        }\n      }\n    }\n  ]\n}\n<\/pre>\n<p><\/code><\/p>\n<p>Burada ek olarak <code>\"Condition\"<\/code> blo\u011funu g\u00f6r\u00fcyoruz. Bu ko\u015ful, sadece <code>t2.micro<\/code> \u00f6rnek tipi i\u00e7in <code>ec2:RunInstances<\/code> eylemine izin verilece\u011fini belirtir. Bu, \"en az ayr\u0131cal\u0131k\" prensibini uygulaman\u0131n harika bir yoludur.<\/p>\n<h3>En Az Ayr\u0131cal\u0131k Prensibi (Principle of Least Privilege): Neden Bu Kadar Kritik?<\/h3>\n<p>En az ayr\u0131cal\u0131k, bir kullan\u0131c\u0131n\u0131n, grubun veya rol\u00fcn g\u00f6revlerini yerine getirmek i\u00e7in kesinlikle gerekli olan minimum izinlere sahip olmas\u0131 gerekti\u011fi temel g\u00fcvenlik ilkesidir. Bu ilke, AWS ortam\u0131n\u0131zda g\u00fcvenlik riskini \u00f6nemli \u00f6l\u00e7\u00fcde azalt\u0131r. \u00d6rne\u011fin, bir geli\u015ftiricinin sadece kendi \u00e7al\u0131\u015ft\u0131\u011f\u0131 projeye ait S3 kovas\u0131na tam eri\u015fimi olmas\u0131, di\u011fer projelere ait kovalara ise sadece listeleme izni olmas\u0131, bu prensibin g\u00fczel bir uygulamas\u0131d\u0131r.<\/p>\n<p><strong>Vaka Analizi: Geli\u015ftirici Eri\u015fimi<\/strong><\/p>\n<p>Bir yaz\u0131l\u0131m \u015firketinde \u00e7al\u0131\u015fan Ay\u015fe, \"Proje A\" \u00fczerinde \u00e7al\u0131\u015fan bir geli\u015ftiricidir. Ay\u015fe'nin g\u00f6revi, Proje A'n\u0131n verilerini depolayan <code>proje-a-data<\/code> adl\u0131 S3 kovas\u0131na dosya y\u00fckleyip indirmek ve kod geli\u015ftirmeleri i\u00e7in belirli EC2 \u00f6rneklerini y\u00f6netmektir. Ancak \u015firketin <code>raporlar-finans<\/code> adl\u0131 ba\u015fka bir S3 kovas\u0131 ve <code>proje-b-server<\/code> adl\u0131 ba\u015fka bir EC2 kayna\u011f\u0131 da bulunmaktad\u0131r.<\/p>\n<p>Ay\u015fe'ye en az ayr\u0131cal\u0131k ilkesiyle bir politika olu\u015fturuldu\u011funda:<\/p>\n<ul>\n<li><code>proje-a-data<\/code> S3 kovas\u0131na <code>s3:PutObject<\/code>, <code>s3:GetObject<\/code>, <code>s3:ListBucket<\/code> gibi tam eri\u015fim izinleri verilir.<\/li>\n<li>\u015eirketin t\u00fcm S3 kovalar\u0131na genel olarak sadece <code>s3:ListAllMyBuckets<\/code> izni verilir, b\u00f6ylece di\u011fer kovalar\u0131 g\u00f6rebilir ama i\u00e7eriklerine eri\u015femez.<\/li>\n<li><code>proje-a-geli\u015ftirme-sunucular\u0131<\/code> etiketli EC2 \u00f6rnekleri \u00fczerinde <code>ec2:StartInstances<\/code>, <code>ec2:StopInstances<\/code> gibi y\u00f6netim eylemlerine izin verilir.<\/li>\n<li><code>proje-b-server<\/code> gibi di\u011fer kritik EC2 kaynaklar\u0131na eri\u015fimi tamamen reddedilir.<\/li>\n<\/ul>\n<p>Bu yakla\u015f\u0131m sayesinde, Ay\u015fe'nin kimlik bilgileri ele ge\u00e7irilse bile, sald\u0131rgan\u0131n yapabilece\u011fi zarar Ay\u015fe'nin g\u00f6rev kapsam\u0131 ile s\u0131n\u0131rl\u0131 kal\u0131r. Bu, potansiyel g\u00fcvenlik ihlallerinin etkisini minimize etmek i\u00e7in hayati bir ad\u0131md\u0131r.<\/p>\n<div class=\"uzman-ipucu\">Uzman \u0130pucu: IAM Politikalar\u0131n\u0131z\u0131 olu\u015ftururken \"Deny\" (Reddet) efektinin \"Allow\" (\u0130zin Ver) efektinden \u00f6ncelikli oldu\u011funu unutmay\u0131n. Yani, bir kaynak i\u00e7in hem \"Allow\" hem de \"Deny\" politikan\u0131z varsa, \"Deny\" her zaman kazan\u0131r ve eri\u015fim reddedilir. Bu durum, geni\u015f kapsaml\u0131 izinler verdikten sonra belirli istisnalar\u0131 d\u0131\u015flamak i\u00e7in kullan\u0131labilir.<\/div>\n<p>Politikalar\u0131 do\u011fru bir \u015fekilde tasarlamak ve uygulamak, AWS ortam\u0131n\u0131z\u0131n g\u00fcvenlik duru\u015funu g\u00fc\u00e7lendirmek i\u00e7in atabilece\u011finiz en \u00f6nemli ad\u0131mlardan biridir. Ba\u015flang\u0131\u00e7ta daha k\u0131s\u0131tlay\u0131c\u0131 politikalarla ba\u015flamak ve ihtiya\u00e7 duyulduk\u00e7a izinleri geni\u015fletmek, genel olarak daha g\u00fcvenli bir yakla\u015f\u0131md\u0131r.<\/p>\n<h2>Uygulamal\u0131 Ad\u0131mlar: Kullan\u0131c\u0131, Grup ve Rol Olu\u015fturma<\/h2>\n<p>AWS IAM'in temel kavramlar\u0131n\u0131 anlad\u0131ktan sonra, \u015fimdi bu kavramlar\u0131 AWS Y\u00f6netim Konsolu ve AWS CLI arac\u0131l\u0131\u011f\u0131yla nas\u0131l uygulayaca\u011f\u0131m\u0131za bakal\u0131m. Bu b\u00f6l\u00fcmde, ad\u0131m ad\u0131m kullan\u0131c\u0131, grup ve rol olu\u015fturma s\u00fcre\u00e7lerini ele alaca\u011f\u0131z ve ger\u00e7ek d\u00fcnya senaryolar\u0131nda nas\u0131l kullan\u0131ld\u0131klar\u0131n\u0131 g\u00f6sterece\u011fiz.<\/p>\n<h3>Ad\u0131m Ad\u0131m Kullan\u0131c\u0131 Olu\u015fturma ve Y\u00f6netme<\/h3>\n<ol>\n<li><strong>AWS Y\u00f6netim Konsolu'na Giri\u015f<\/strong>: Root kullan\u0131c\u0131n\u0131zla veya mevcut bir y\u00f6netici IAM kullan\u0131c\u0131n\u0131zla konsola giri\u015f yap\u0131n.<\/li>\n<li><strong>IAM Servisine Git<\/strong>: Ana arama \u00e7ubu\u011funa \"IAM\" yaz\u0131n veya \"Services\" men\u00fcs\u00fcnden \"IAM\"\u0131 se\u00e7in.<\/li>\n<li><strong>Kullan\u0131c\u0131 Olu\u015fturma<\/strong>: Sol men\u00fcden \"Users\" (Kullan\u0131c\u0131lar) se\u00e7ene\u011fine t\u0131klay\u0131n, ard\u0131ndan \"Add users\" (Kullan\u0131c\u0131 ekle) d\u00fc\u011fmesine bas\u0131n.<\/li>\n<li><strong>Kullan\u0131c\u0131 Detaylar\u0131<\/strong>:\n<ul>\n<li><code>User name<\/code> (Kullan\u0131c\u0131 ad\u0131): Kullan\u0131c\u0131n\u0131z i\u00e7in benzersiz bir ad girin (\u00f6rn. <code>gelistirici-ali<\/code>).<\/li>\n<li><code>AWS access type<\/code> (AWS eri\u015fim tipi):\n<ul>\n<li><code>Programmatic access<\/code> (Programatik eri\u015fim): AWS CLI, SDK veya API'ler arac\u0131l\u0131\u011f\u0131yla eri\u015fim i\u00e7in eri\u015fim anahtarlar\u0131 olu\u015fturur.<\/li>\n<li><code>AWS Management Console access<\/code> (AWS Y\u00f6netim Konsolu eri\u015fimi): Kullan\u0131c\u0131n\u0131n web konsoluna \u015fifre ile giri\u015f yapmas\u0131n\u0131 sa\u011flar. Otomatik olu\u015fturulmu\u015f bir \u015fifre veya \u00f6zel bir \u015fifre ayarlayabilirsiniz. Genellikle her ikisi de i\u015faretlenir.<\/li>\n<\/ul>\n<\/li>\n<li><code>Require password reset<\/code> (\u015eifre s\u0131f\u0131rlama gerektir): Yeni kullan\u0131c\u0131n\u0131n ilk giri\u015fte \u015fifresini de\u011fi\u015ftirmesini isteyip istemedi\u011finizi se\u00e7in.<\/li>\n<\/ul>\n<\/li>\n<li><strong>\u0130zinleri Ayarlama<\/strong>: Bu ad\u0131mda, kullan\u0131c\u0131ya do\u011frudan izin verebilir, bir gruba ekleyebilir veya mevcut bir kullan\u0131c\u0131dan izinleri kopyalayabilirsiniz. Genellikle kullan\u0131c\u0131lar\u0131 gruplara eklemek en iyi uygulamad\u0131r. \"Attach existing policies directly\" (Mevcut politikalar\u0131 do\u011frudan ekle) se\u00e7ene\u011fini ge\u00e7ici bir \u00e7\u00f6z\u00fcm olarak veya belirli, istisnai durumlar i\u00e7in kullan\u0131n.<\/li>\n<li><strong>Etiket Ekleme (Tags)<\/strong>: \u0130ste\u011fe ba\u011fl\u0131 olarak kullan\u0131c\u0131ya etiketler ekleyebilirsiniz (\u00f6rn. <code>Department: Development<\/code>).<\/li>\n<li><strong>G\u00f6zden Ge\u00e7ir ve Olu\u015ftur<\/strong>: T\u00fcm bilgileri kontrol ettikten sonra \"Create user\" (Kullan\u0131c\u0131 olu\u015ftur) d\u00fc\u011fmesine t\u0131klay\u0131n.<\/li>\n<\/ol>\n<p>Kullan\u0131c\u0131 olu\u015fturulduktan sonra, programatik eri\u015fim i\u00e7in bir <code>Access Key ID<\/code> ve <code>Secret Access Key<\/code> verilecektir. Bu anahtarlar\u0131 sadece bir kez g\u00f6rebilirsiniz, bu y\u00fczden g\u00fcvenli bir yere kaydetmeniz \u00e7ok \u00f6nemlidir.<\/p>\n<h3>Ad\u0131m Ad\u0131m Grup Olu\u015fturma ve Kullan\u0131c\u0131 Ekleme<\/h3>\n<ol>\n<li><strong>IAM Konsolu > Gruplar<\/strong>: Sol men\u00fcden \"User groups\" (Kullan\u0131c\u0131 gruplar\u0131) se\u00e7ene\u011fine t\u0131klay\u0131n, ard\u0131ndan \"Create group\" (Grup olu\u015ftur) d\u00fc\u011fmesine bas\u0131n.<\/li>\n<li><strong>Grup Ad\u0131<\/strong>: Grubunuza bir ad verin (\u00f6rn. <code>Gelistiriciler<\/code>).<\/li>\n<li><strong>Politika Ekleme<\/strong>: Bu grubun \u00fcyelerinin sahip olmas\u0131n\u0131 istedi\u011finiz AWS y\u00f6netilen veya m\u00fc\u015fteri y\u00f6netilen politikalar\u0131n\u0131 se\u00e7in (\u00f6rn. <code>AmazonS3ReadOnlyAccess<\/code> veya kendi olu\u015fturdu\u011funuz <code>ProjeADevPolicy<\/code>).<\/li>\n<li><strong>Grup Olu\u015ftur<\/strong>: \"Create group\" d\u00fc\u011fmesine t\u0131klay\u0131n.<\/li>\n<li><strong>Kullan\u0131c\u0131lar\u0131 Gruba Ekleme<\/strong>: Olu\u015fturdu\u011funuz gruba t\u0131klay\u0131n, \"Users\" sekmesine gidin ve \"Add users to group\" (Kullan\u0131c\u0131lar\u0131 gruba ekle) d\u00fc\u011fmesine t\u0131klayarak ilgili kullan\u0131c\u0131lar\u0131 se\u00e7in.<\/li>\n<\/ol>\n<h3>Ad\u0131m Ad\u0131m Rol Olu\u015fturma<\/h3>\n<p>Roller, bir AWS servisinin veya harici bir kimli\u011fin AWS kaynaklar\u0131n\u0131za eri\u015fmesi gerekti\u011finde kullan\u0131l\u0131r.<\/p>\n<ol>\n<li><strong>IAM Konsolu > Roller<\/strong>: Sol men\u00fcden \"Roles\" (Roller) se\u00e7ene\u011fine t\u0131klay\u0131n, ard\u0131ndan \"Create role\" (Rol olu\u015ftur) d\u00fc\u011fmesine bas\u0131n.<\/li>\n<li><strong>G\u00fcvenilir Varl\u0131k Tipi Se\u00e7in<\/strong>: Rol\u00fc kimin veya neyin \u00fcstlenece\u011fini belirtmeniz gerekir. Yayg\u0131n se\u00e7enekler:\n<ul>\n<li><code>AWS service<\/code> (AWS servisi): EC2, Lambda, S3 vb. servislerin rol\u00fc \u00fcstlenmesi i\u00e7in.<\/li>\n<li><code>Another AWS account<\/code> (Ba\u015fka bir AWS hesab\u0131): \u00c7apraz hesap eri\u015fimi i\u00e7in.<\/li>\n<li><code>Web identity<\/code> (Web kimli\u011fi): Google, Facebook gibi kimlik sa\u011flay\u0131c\u0131lar\u0131 i\u00e7in.<\/li>\n<li><code>SAML 2.0 federation<\/code> (SAML 2.0 federasyonu): Kurumsal kimlik sa\u011flay\u0131c\u0131lar\u0131 i\u00e7in.<\/li>\n<\/ul>\n<p>Senaryomuzda, bir EC2 \u00f6rne\u011finin S3'e yazma iznine sahip olmas\u0131n\u0131 isteyelim, bu y\u00fczden \"AWS service\" ve ard\u0131ndan \"EC2\"yi se\u00e7eriz.<\/p>\n<\/li>\n<li><strong>\u0130zin Politikalar\u0131 Ekle<\/strong>: Rol\u00fcn \u00fcstlenildi\u011finde sahip olaca\u011f\u0131 izinleri belirten politikalar\u0131 se\u00e7in (\u00f6rn. <code>AmazonS3FullAccess<\/code> veya \u00f6zel bir politika).<\/li>\n<li><strong>Etiket Ekleme (Tags)<\/strong>: \u0130ste\u011fe ba\u011fl\u0131 olarak etiketler ekleyin.<\/li>\n<li><strong>Rol Ad\u0131 ve A\u00e7\u0131klamas\u0131<\/strong>: Rol\u00fcn\u00fcz i\u00e7in a\u00e7\u0131klay\u0131c\u0131 bir ad (\u00f6rn. <code>EC2S3WriterRole<\/code>) ve k\u0131sa bir a\u00e7\u0131klama girin.<\/li>\n<li><strong>G\u00f6zden Ge\u00e7ir ve Olu\u015ftur<\/strong>: \"Create role\" d\u00fc\u011fmesine t\u0131klay\u0131n.<\/li>\n<\/ol>\n<p>Olu\u015fturdu\u011funuz bu rol\u00fc, bir EC2 \u00f6rne\u011fi ba\u015flat\u0131rken \"IAM role\" b\u00f6l\u00fcm\u00fcnden se\u00e7erek atayabilirsiniz. Bu sayede, EC2 \u00f6rne\u011finiz S3'e eri\u015fmek i\u00e7in kal\u0131c\u0131 eri\u015fim anahtarlar\u0131na ihtiya\u00e7 duymadan, rol\u00fcn ge\u00e7ici kimlik bilgilerini kullanarak g\u00fcvenli bir \u015fekilde etkile\u015fim kurabilir.<\/p>\n<p><strong>AWS CLI ile Kullan\u0131c\u0131 Olu\u015fturma ve Politika Ekleme \u00d6rne\u011fi:<\/strong><\/p>\n<p>AWS CLI, komut sat\u0131r\u0131ndan IAM kaynaklar\u0131n\u0131 y\u00f6netmenin h\u0131zl\u0131 ve g\u00fc\u00e7l\u00fc bir yoludur. \u0130lk olarak CLI'\u0131 yap\u0131land\u0131rman\u0131z gerekir (<code>aws configure<\/code>).<\/p>\n<pre><code>\n# Yeni bir IAM kullan\u0131c\u0131s\u0131 olu\u015ftur\naws iam create-user --user-name gelistirici-ayse\n\n# Olu\u015fturulan kullan\u0131c\u0131ya AWS y\u00f6netilen bir politika (S3'e sadece okuma) ekle\naws iam attach-user-policy --user-name gelistirici-ayse --policy-arn arn:aws:iam::aws:policy\/AmazonS3ReadOnlyAccess\n\n# Kullan\u0131c\u0131n\u0131n konsol eri\u015fimi i\u00e7in \u015fifre olu\u015ftur\naws iam create-login-profile --user-name gelistirici-ayse --password \"GucluSifre123!\" --no-password-reset-required\n\n# Kullan\u0131c\u0131n\u0131n programatik eri\u015fimi i\u00e7in eri\u015fim anahtarlar\u0131 olu\u015ftur\naws iam create-access-key --user-name gelistirici-ayse\n<\/pre>\n<p><\/code><\/p>\n<p>Yukar\u0131daki komutlar, <code>gelistirici-ayse<\/code> ad\u0131nda bir kullan\u0131c\u0131 olu\u015fturur, ona S3'e sadece okuma izni veren bir politika ekler, konsol eri\u015fimi i\u00e7in bir \u015fifre belirler ve son olarak programatik eri\u015fim i\u00e7in eri\u015fim anahtarlar\u0131 olu\u015fturur. Bu, AWS CLI'\u0131n IAM y\u00f6netimi i\u00e7in ne kadar esnek oldu\u011funu g\u00f6sterir.<\/p>\n<p>Bu ad\u0131mlar\u0131 takip ederek, AWS ortam\u0131n\u0131zda kullan\u0131c\u0131lar\u0131, gruplar\u0131 ve rolleri g\u00fcvenli bir \u015fekilde olu\u015fturabilir ve y\u00f6netebilirsiniz. Unutmay\u0131n ki her zaman en az ayr\u0131cal\u0131k ilkesini g\u00f6z \u00f6n\u00fcnde bulundurarak sadece gerekli izinleri vermeye \u00f6zen g\u00f6sterin.<\/p>\n<h2>\u0130leri D\u00fczey IAM Kullan\u0131mlar\u0131 ve G\u00fcvenlik Best Practices<\/h2>\n<p>Temel IAM yap\u0131 ta\u015flar\u0131n\u0131 ve uygulamal\u0131 ad\u0131mlar\u0131 anlad\u0131ktan sonra, AWS IAM'in daha geli\u015fmi\u015f \u00f6zelliklerine ve en iyi g\u00fcvenlik uygulamalar\u0131na g\u00f6z atal\u0131m. Bu b\u00f6l\u00fcm, AWS ortam\u0131n\u0131zda g\u00fcvenlik duru\u015funuzu daha da g\u00fc\u00e7lendirmek i\u00e7in kritik bilgiler sunacakt\u0131r.<\/p>\n<h3>Ko\u015fullu Politikalar (Conditional Policies) ile Eri\u015fimi Daha da K\u0131s\u0131tlamak<\/h3>\n<p>IAM politikalar\u0131, <code>Condition<\/code> blo\u011fu sayesinde inan\u0131lmaz derecede esnek hale gelir. Bu blok ile izinleri belirli ko\u015fullara ba\u011flayabilirsiniz. En yayg\u0131n kullan\u0131lan ko\u015fullardan baz\u0131lar\u0131 \u015funlard\u0131r:<\/p>\n<ul>\n<li><strong>IP Adresi K\u0131s\u0131tlamalar\u0131<\/strong>: Belirli bir IP aral\u0131\u011f\u0131ndan veya tek bir IP adresinden gelen isteklere izin verme veya reddetme. Bu, \u015firket i\u00e7i a\u011f\u0131n\u0131zdan gelen eri\u015fimi k\u0131s\u0131tlamak i\u00e7in idealdir.<\/li>\n<li><strong>Multi-Factor Authentication (MFA) Zorunlulu\u011fu<\/strong>: Belirli eylemler i\u00e7in kullan\u0131c\u0131n\u0131n MFA ile do\u011frulanm\u0131\u015f olmas\u0131n\u0131 \u015fart ko\u015fma. Bu, hassas operasyonlar i\u00e7in ek bir g\u00fcvenlik katman\u0131 sa\u011flar.<\/li>\n<li><strong>Zaman Bazl\u0131 Ko\u015fullar<\/strong>: Belirli saatler veya tarihler aras\u0131nda eri\u015fime izin verme.<\/li>\n<li><strong>Etiket Bazl\u0131 Ko\u015fullar<\/strong>: Kaynaklar\u0131n veya isteklerin belirli etiketlere sahip olmas\u0131n\u0131 \u015fart ko\u015fma. \u00d6rne\u011fin, sadece <code>Environment: Production<\/code> etiketli kaynaklara eri\u015fim izni verme.<\/li>\n<\/ul>\n<p><strong>\u00d6rnek Ko\u015fullu Politika (MFA ile Eri\u015fim Zorunlulu\u011fu):<\/strong><\/p>\n<pre><code>\n{\n  \"Version\": \"2012-10-17\",\n  \"Statement\": [\n    {\n      \"Effect\": \"Allow\",\n      \"Action\": \"s3:*\",\n      \"Resource\": \"*\",\n      \"Condition\": {\n        \"Bool\": {\n          \"aws:MultiFactorAuthPresent\": \"true\"\n        }\n      }\n    },\n    {\n      \"Effect\": \"Deny\",\n      \"Action\": \"s3:DeleteObject\",\n      \"Resource\": \"arn:aws:s3:::kritik-data-kovam\/*\",\n      \"Condition\": {\n        \"NumericLessThanEquals\": {\n          \"aws:CurrentTime\": \"2024-12-31T23:59:59Z\"\n        }\n      }\n    }\n  ]\n}\n<\/pre>\n<p><\/code><\/p>\n<p>Bu politika, kullan\u0131c\u0131n\u0131n t\u00fcm S3 eylemlerini ger\u00e7ekle\u015ftirmesi i\u00e7in MFA'n\u0131n aktif olmas\u0131n\u0131 \u015fart ko\u015far. \u0130kinci Statement ise belirli bir tarihten sonra <code>kritik-data-kovam<\/code> i\u00e7inden nesne silme eylemini reddeder.<\/p>\n<h3>SAML ve Federasyon: Kurumsal Kimlik Y\u00f6netimi<\/h3>\n<p>B\u00fcy\u00fck kurulu\u015flar genellikle kendi \u015firket i\u00e7i kimlik sa\u011flay\u0131c\u0131lar\u0131n\u0131 (\u00f6rne\u011fin Active Directory, Okta, Azure AD) kullan\u0131r. AWS IAM, SAML (Security Assertion Markup Language) 2.0 standard\u0131n\u0131 kullanarak bu harici kimlik sa\u011flay\u0131c\u0131lar\u0131 ile entegrasyonu destekler. Bu s\u00fcrece \"federasyon\" denir. Federasyon sayesinde, kullan\u0131c\u0131lar mevcut kurumsal kimlik bilgileriyle AWS'ye giri\u015f yapabilir ve \u00f6nceden tan\u0131mlanm\u0131\u015f IAM rollerini \u00fcstlenerek AWS kaynaklar\u0131na eri\u015febilir. Bu, AWS'de ayr\u0131 kullan\u0131c\u0131 kimlik bilgileri y\u00f6netme y\u00fck\u00fcn\u00fc ortadan kald\u0131r\u0131r ve tek oturum a\u00e7ma (Single Sign-On - SSO) deneyimi sunar.<\/p>\n<h3>AWS Organizations ve SCP'ler (Service Control Policies)<\/h3>\n<p>\u00c7oklu AWS hesab\u0131 stratejileri benimseyen kurulu\u015flar i\u00e7in AWS Organizations, hesaplar\u0131n\u0131z\u0131 merkezi olarak y\u00f6netmenizi sa\u011flar. Service Control Policies (SCP'ler), AWS Organizations'\u0131n g\u00fc\u00e7l\u00fc bir \u00f6zelli\u011fidir. SCP'ler, bir kurulu\u015f birimi (Organizational Unit - OU) veya t\u00fcm kurulu\u015f d\u00fczeyinde AWS servislerine yap\u0131labilecek maksimum izinleri belirleyen politikalar tan\u0131mlaman\u0131za olanak tan\u0131r. SCP'ler birer izin verme politikas\u0131 de\u011fildir; daha ziyade izinleri k\u0131s\u0131tlama mekanizmas\u0131d\u0131r. \u00d6rne\u011fin, t\u00fcm geli\u015ftirme hesaplar\u0131n\u0131zda belirli bir b\u00f6lgede (Region) kaynak olu\u015fturmay\u0131 engelleyen bir SCP tan\u0131mlayabilirsiniz. Bu, en \u00fcst d\u00fczeyde g\u00fcvenlik ve uyumluluk sa\u011flamak i\u00e7in harika bir yoldur.<\/p>\n<h3>Eri\u015fim Analizleri (Access Analyzer) ve CloudTrail \u0130zleme<\/h3>\n<ul>\n<li><strong>IAM Access Analyzer<\/strong>: D\u0131\u015far\u0131dan eri\u015filebilir IAM rollerini, S3 kovalar\u0131n\u0131, KMS anahtarlar\u0131n\u0131 ve di\u011fer kaynaklar\u0131 tespit etmek i\u00e7in kullan\u0131l\u0131r. Yanl\u0131\u015fl\u0131kla herkese a\u00e7\u0131k b\u0131rak\u0131lm\u0131\u015f kaynaklar\u0131 bulman\u0131za ve g\u00fcvenlik a\u00e7\u0131klar\u0131n\u0131 kapatman\u0131za yard\u0131mc\u0131 olur.<\/li>\n<li><strong>AWS CloudTrail<\/strong>: AWS hesab\u0131n\u0131zdaki t\u00fcm API \u00e7a\u011fr\u0131lar\u0131n\u0131 (IAM eylemleri dahil) kaydeder. Kimin, ne zaman, hangi eylemi ger\u00e7ekle\u015ftirdi\u011fini detayl\u0131 bir \u015fekilde denetlemenizi sa\u011flar. G\u00fcvenlik olaylar\u0131n\u0131 incelemek ve uyumluluk gereksinimlerini kar\u015f\u0131lamak i\u00e7in vazge\u00e7ilmezdir.<\/li>\n<\/ul>\n<h3>G\u00fcvenlik Best Practices (En \u0130yi Uygulamalar):<\/h3>\n<ul>\n<li><strong>MFA Her Yerde<\/strong>: Root kullan\u0131c\u0131n\u0131z dahil, t\u00fcm IAM kullan\u0131c\u0131lar\u0131n\u0131z ve \u00f6zellikle y\u00f6netici ayr\u0131cal\u0131klar\u0131na sahip kullan\u0131c\u0131lar i\u00e7in Multi-Factor Authentication (MFA) etkinle\u015ftirin. Bu, kimlik bilgilerinin \u00e7al\u0131nmas\u0131 durumunda bile ek bir g\u00fcvenlik katman\u0131 sa\u011flar.<\/li>\n<li><strong>Root Kullan\u0131c\u0131s\u0131n\u0131 Kilitleyin<\/strong>: Root hesab\u0131, AWS hesab\u0131n\u0131zdaki en g\u00fc\u00e7l\u00fc hesapt\u0131r ve silinemez. Sadece hesap kurulumu, faturaland\u0131rma ve kritik kurtarma i\u015flemleri gibi nadir durumlar i\u00e7in kullan\u0131lmal\u0131d\u0131r. G\u00fcnl\u00fck i\u015flemler i\u00e7in her zaman IAM kullan\u0131c\u0131lar\u0131 veya rolleri kullan\u0131n ve Root kullan\u0131c\u0131s\u0131 i\u00e7in uzun s\u00fcreli eri\u015fim anahtarlar\u0131 olu\u015fturmaktan ka\u00e7\u0131n\u0131n. Root hesab\u0131n\u0131z\u0131n eri\u015fim anahtarlar\u0131n\u0131 silin.<\/li>\n<li><strong>Eri\u015fim Anahtarlar\u0131n\u0131 D\u00fczenli De\u011fi\u015ftirin (Rotate Access Keys)<\/strong>: Programatik eri\u015fim i\u00e7in kullan\u0131lan eri\u015fim anahtarlar\u0131n\u0131 (Access Keys) d\u00fczenli olarak de\u011fi\u015ftirin. Bu, anahtarlar\u0131n ele ge\u00e7irilme riskini azalt\u0131r. AWS KMS (Key Management Service) ile anahtar rotasyonu otomatikle\u015ftirebilirsiniz.<\/li>\n<li><strong>En Az Ayr\u0131cal\u0131k \u0130lkesi<\/strong>: Tekrar vurgulayal\u0131m: Her zaman sadece gerekli olan minimum izinleri verin. \"Wildcard\" (*) kullanmaktan ka\u00e7\u0131n\u0131n veya sadece \u00e7ok k\u0131s\u0131tl\u0131 senaryolarda kullan\u0131n.<\/li>\n<li><strong>Politika Sim\u00fclat\u00f6r\u00fc Kullan\u0131n<\/strong>: Yeni bir IAM politikas\u0131 olu\u015fturdu\u011funuzda veya mevcut bir politikay\u0131 de\u011fi\u015ftirdi\u011finizde, AWS IAM Policy Simulator'\u0131 kullanarak politikan\u0131z\u0131n beklenen etkiyi yarat\u0131p yaratmad\u0131\u011f\u0131n\u0131 test edin. Bu, potansiyel eri\u015fim sorunlar\u0131n\u0131 veya g\u00fcvenlik a\u00e7\u0131klar\u0131n\u0131 canl\u0131ya almadan \u00f6nce tespit etmenizi sa\u011flar.<\/li>\n<li><strong>CloudTrail \u0130zlemeyi Aktif Tutun<\/strong>: T\u00fcm IAM aktivitelerinin CloudTrail taraf\u0131ndan kaydedildi\u011finden ve loglar\u0131n g\u00fcvenli bir S3 kovas\u0131nda depoland\u0131\u011f\u0131ndan emin olun. Bu loglar, g\u00fcvenlik denetimi ve olay m\u00fcdahalesi i\u00e7in hayati \u00f6nem ta\u015f\u0131r.<\/li>\n<li><strong>IAM Access Analyzer'\u0131 Kullan\u0131n<\/strong>: D\u00fczenli olarak Access Analyzer'\u0131 \u00e7al\u0131\u015ft\u0131rarak, d\u0131\u015far\u0131dan eri\u015filebilir kaynaklar\u0131n\u0131z\u0131 (\u00f6zellikle S3 kovalar\u0131 ve IAM rolleri) tespit edin ve olas\u0131 g\u00fcvenlik zafiyetlerini proaktif olarak giderin.<\/li>\n<\/ul>\n<div class=\"uzman-ipucu\">Uzman \u0130pucu: \u00c7oklu AWS hesaplar\u0131 kullan\u0131yorsan\u0131z, AWS Single Sign-On (SSO) veya AWS Organizations ile entegre bir kimlik sa\u011flay\u0131c\u0131s\u0131 kullanarak merkezi kimlik y\u00f6netimi uygulay\u0131n. Bu, y\u00f6netim y\u00fck\u00fcn\u00fc azalt\u0131r ve g\u00fcvenlik politikas\u0131n\u0131n tutarl\u0131l\u0131\u011f\u0131n\u0131 art\u0131r\u0131r.<\/div>\n<p>Bu ileri d\u00fczey IAM kullan\u0131mlar\u0131 ve en iyi uygulamalar, AWS ortam\u0131n\u0131z\u0131n g\u00fcvenlik mimarisini sa\u011flamla\u015ft\u0131rman\u0131za yard\u0131mc\u0131 olacakt\u0131r. Unutmay\u0131n ki g\u00fcvenlik s\u00fcrekli bir s\u00fcre\u00e7tir ve bu uygulamalar\u0131 d\u00fczenli olarak g\u00f6zden ge\u00e7irmek ve g\u00fcncellemek \u00f6nemlidir.<\/p>\n<h2>Vaka Analizi: B\u00fcy\u00fck Bir Kurulu\u015fta IAM Entegrasyonu<\/h2>\n<h3>Senaryo: \"TechGlobal\" \u015eirketi ve AWS Ortam\u0131<\/h3>\n<p>TechGlobal, d\u00fcnya \u00e7ap\u0131nda faaliyet g\u00f6steren, farkl\u0131 departmanlara (Geli\u015ftirme, Operasyonlar, Finans, Pazarlama, \u0130nsan Kaynaklar\u0131) sahip b\u00fcy\u00fck bir teknoloji \u015firketidir. \u015eirket, altyap\u0131s\u0131n\u0131n b\u00fcy\u00fck bir k\u0131sm\u0131n\u0131 AWS'de bar\u0131nd\u0131rmaktad\u0131r ve her departman, kendi operasyonel ihtiya\u00e7lar\u0131 i\u00e7in ayr\u0131 AWS hesaplar\u0131na sahiptir. T\u00fcm bu hesaplar, AWS Organizations alt\u0131nda merkezi olarak y\u00f6netilmektedir. \u015eirketin mevcut bir Active Directory (AD) yap\u0131s\u0131 ve bu yap\u0131ya entegre \u00e7al\u0131\u015fan bir kimlik sa\u011flay\u0131c\u0131s\u0131 (IdP), Okta bulunmaktad\u0131r.<\/p>\n<h3>Kar\u015f\u0131la\u015f\u0131lan Problemler<\/h3>\n<ul>\n<li>Her departman\u0131n kendi AWS hesaplar\u0131ndaki kaynaklara yetkilendirilmi\u015f eri\u015fimi olmal\u0131, ancak departmanlar aras\u0131 yetkisiz eri\u015fim kesinlikle engellenmelidir.<\/li>\n<li>Mevcut Okta sistemi \u00fczerinden t\u00fcm AWS eri\u015fimleri y\u00f6netilmeli, kullan\u0131c\u0131lar\u0131n AWS'ye ayr\u0131 kimlik bilgileriyle giri\u015f yapmalar\u0131 engellenmelidir (Tek Oturum A\u00e7ma - SSO).<\/li>\n<li>Finans departman\u0131n\u0131n hassas verileriyle ilgili kaynaklar\u0131n\u0131n belirli co\u011frafi b\u00f6lgeler d\u0131\u015f\u0131nda olu\u015fturulmas\u0131 veya depolanmas\u0131 engellenmelidir.<\/li>\n<li>DevOps ekipleri, s\u00fcrekli entegrasyon\/s\u00fcrekli da\u011f\u0131t\u0131m (CI\/CD) s\u00fcre\u00e7leri i\u00e7in kod depolar\u0131na (CodeCommit) ve da\u011f\u0131t\u0131m ara\u00e7lar\u0131na (CodePipeline) eri\u015febilmeli, ancak kritik \u00fcretim veritabanlar\u0131na do\u011frudan eri\u015fimleri olmamal\u0131d\u0131r.<\/li>\n<li>Uygulama servisleri (\u00f6rne\u011fin, Lambda fonksiyonlar\u0131), di\u011fer AWS servisleriyle (DynamoDB, SQS) g\u00fcvenli bir \u015fekilde ileti\u015fim kurabilmelidir.<\/li>\n<\/ul>\n<h3>\u00c7\u00f6z\u00fcm: AWS IAM ve AWS Organizations ile Kapsaml\u0131 Entegrasyon<\/h3>\n<p>TechGlobal, bu karma\u015f\u0131k ihtiya\u00e7lar\u0131 kar\u015f\u0131lamak i\u00e7in a\u015fa\u011f\u0131daki AWS IAM ve AWS Organizations stratejilerini benimsemi\u015ftir:<\/p>\n<h4>1. AWS Organizations ve Servis Kontrol Politikalar\u0131 (SCP'ler)<\/h4>\n<p>T\u00fcm departman hesaplar\u0131, AWS Organizations alt\u0131nda yap\u0131land\u0131r\u0131lm\u0131\u015f ve her departman i\u00e7in ayr\u0131 bir Organizasyonel Birim (OU) olu\u015fturulmu\u015ftur. Bu OU'lara SCP'ler uygulanm\u0131\u015ft\u0131r:<\/p>\n<ul>\n<li><strong>B\u00f6lge K\u0131s\u0131tlamalar\u0131 SCP'si<\/strong>: T\u00fcm kurulu\u015f genelinde, sadece izin verilen AWS b\u00f6lgelerinde (\u00f6rn. <code>eu-central-1<\/code>, <code>us-east-1<\/code>) kaynak olu\u015fturulmas\u0131na izin veren bir SCP uygulanm\u0131\u015ft\u0131r. Bu, Finans departman\u0131n\u0131n hassas verilerini uygun olmayan b\u00f6lgelerde depolamas\u0131n\u0131 proaktif olarak engeller.<\/li>\n<li><strong>Kritik Servis K\u0131s\u0131tlamalar\u0131 SCP'si<\/strong>: Finans ve \u0130K departmanlar\u0131n\u0131n OU'lar\u0131na, belirli hassas servislere (\u00f6rn. <code>rekognition<\/code>, <code>comprehend<\/code> gibi AI\/ML servisleri) eri\u015fimi k\u0131s\u0131tlayan SCP'ler uygulanm\u0131\u015ft\u0131r.<\/li>\n<\/ul>\n<h4>2. SAML Federasyonu ile Merkezi Kimlik Y\u00f6netimi<\/h4>\n<p>TechGlobal, Okta'y\u0131 bir kimlik sa\u011flay\u0131c\u0131s\u0131 (IdP) olarak kullanarak AWS'ye SAML 2.0 federasyonunu kurmu\u015ftur. Bu kurulum:<\/p>\n<ul>\n<li>Okta'daki gruplar\u0131 (\u00f6rn. <code>TechGlobal-Devs<\/code>, <code>TechGlobal-Ops<\/code>) AWS'deki IAM rollerine (\u00f6rn. <code>DeveloperRole<\/code>, <code>OperationsRole<\/code>) haritalam\u0131\u015ft\u0131r.<\/li>\n<li>Kullan\u0131c\u0131lar Okta'ya giri\u015f yapt\u0131\u011f\u0131nda, otomatik olarak uygun AWS hesab\u0131na ve role y\u00f6nlendirilirler. Bu, AWS'de ayr\u0131 kullan\u0131c\u0131 ad\u0131\/\u015fifre y\u00f6netimi ihtiyac\u0131n\u0131 ortadan kald\u0131r\u0131r ve SSO deneyimi sunar.<\/li>\n<\/ul>\n<h4>3. IAM Rolleri ve Politikalar\u0131 ile Detayl\u0131 Yetkilendirme<\/h4>\n<ul>\n<li><strong>Departman Rolleri<\/strong>: Her departman\u0131n belirli bir AWS hesab\u0131nda kendi g\u00f6revlerini yerine getirmeleri i\u00e7in \u00f6zel IAM rolleri olu\u015fturulmu\u015ftur. \u00d6rne\u011fin:\n<ul>\n<li><code>DeveloperRole<\/code>: Geli\u015ftirme hesaplar\u0131nda EC2, S3, RDS, CodeCommit ve CodePipeline kaynaklar\u0131na eri\u015fim sa\u011flar. Ancak \u00fcretim veritabanlar\u0131na yazma veya silme yetkisi yoktur.<\/li>\n<li><code>OperationsRole<\/code>: Operasyon hesaplar\u0131nda EC2, VPC, CloudWatch, Systems Manager eri\u015fimi sa\u011flar. \u00dcretim ortamlar\u0131n\u0131 izleme ve sorun giderme yetkisine sahiptir.<\/li>\n<li><code>FinanceAnalystRole<\/code>: Finans hesaplar\u0131ndaki S3'teki raporlama verilerine ve Athena gibi analiz ara\u00e7lar\u0131na salt okunur eri\u015fim sa\u011flar.<\/li>\n<\/ul>\n<\/li>\n<li><strong>Servis Rolleri<\/strong>: Lambda fonksiyonlar\u0131, EC2 \u00f6rnekleri ve di\u011fer AWS servisleri i\u00e7in belirli g\u00f6revleri yerine getirmeleri i\u00e7in IAM rolleri tan\u0131mlanm\u0131\u015ft\u0131r. \u00d6rne\u011fin, bir Lambda fonksiyonu DynamoDB'ye yazma izni olan bir rol \u00fcstlenir. Bu, ge\u00e7ici kimlik bilgileri kullanarak g\u00fcvenli bir servisler aras\u0131 ileti\u015fim sa\u011flar.<\/li>\n<li><strong>En Az Ayr\u0131cal\u0131k Uygulamas\u0131<\/strong>: T\u00fcm roller ve politikalar, en az ayr\u0131cal\u0131k ilkesiyle tasarlanm\u0131\u015ft\u0131r. \u00d6rne\u011fin, bir geli\u015ftirici sadece \u00fczerinde \u00e7al\u0131\u015ft\u0131\u011f\u0131 projenin kod deposuna eri\u015febilir, di\u011fer projelere eri\u015fimi yoktur.<\/li>\n<\/ul>\n<h4>4. G\u00fcvenlik Denetimi ve \u0130zleme<\/h4>\n<ul>\n<li><strong>AWS CloudTrail<\/strong>: T\u00fcm AWS hesaplar\u0131nda CloudTrail etkinle\u015ftirilmi\u015f ve loglar merkezi bir S3 kovas\u0131na g\u00f6nderilerek g\u00fcvenlik ve uyumluluk denetimi i\u00e7in saklanm\u0131\u015ft\u0131r.<\/li>\n<li><strong>IAM Access Analyzer<\/strong>: D\u00fczenli olarak \u00e7al\u0131\u015ft\u0131r\u0131larak d\u0131\u015far\u0131ya a\u00e7\u0131k b\u0131rak\u0131lm\u0131\u015f IAM rollerini veya S3 kovalar\u0131n\u0131 proaktif olarak tespit etmi\u015f ve gerekli d\u00fczeltmeleri yapm\u0131\u015ft\u0131r.<\/li>\n<li><strong>AWS Config<\/strong>: IAM politikalar\u0131ndaki veya kaynaklardaki g\u00fcvenlik best practice'lerinin ihlallerini izlemek i\u00e7in kurallar tan\u0131mlanm\u0131\u015ft\u0131r.<\/li>\n<\/ul>\n<h3>Sonu\u00e7 ve Kazan\u0131mlar<\/h3>\n<p>Bu kapsaml\u0131 IAM entegrasyonu sayesinde TechGlobal:<\/p>\n<ul>\n<li><strong>Merkezi Y\u00f6netim<\/strong>: Okta \u00fczerinden t\u00fcm AWS eri\u015fimini merkezi olarak y\u00f6netebildi.<\/li>\n<li><strong>Geli\u015fmi\u015f G\u00fcvenlik<\/strong>: En az ayr\u0131cal\u0131k ilkesi ve ko\u015fullu eri\u015fim politikalar\u0131 ile g\u00fcvenlik duru\u015funu \u00f6nemli \u00f6l\u00e7\u00fcde g\u00fc\u00e7lendirdi.<\/li>\n<li><strong>Uyumluluk<\/strong>: B\u00f6lgesel veri depolama k\u0131s\u0131tlamalar\u0131 ve detayl\u0131 eri\u015fim loglar\u0131 ile d\u00fczenleyici uyumluluk gereksinimlerini kar\u015f\u0131lad\u0131.<\/li>\n<li><strong>Operasyonel Verimlilik<\/strong>: Kullan\u0131c\u0131lar i\u00e7in tek oturum a\u00e7ma (SSO) sa\u011flayarak ve y\u00f6netim y\u00fck\u00fcn\u00fc azaltarak operasyonel verimlili\u011fi art\u0131rd\u0131.<\/li>\n<li><strong>\u00d6l\u00e7eklenebilirlik<\/strong>: Yeni departmanlar veya projeler eklendi\u011finde, mevcut IAM yap\u0131s\u0131n\u0131 kolayca geni\u015fletebildi.<\/li>\n<\/ul>\n<p>Bu vaka analizi, AWS IAM'in sadece temel eri\u015fim kontrol\u00fcnden \u00e7ok daha fazlas\u0131n\u0131 sunan, b\u00fcy\u00fck ve karma\u015f\u0131k kurumsal ortamlar\u0131n g\u00fcvenlik ihtiya\u00e7lar\u0131n\u0131 kar\u015f\u0131layabilen g\u00fc\u00e7l\u00fc bir servis oldu\u011funu a\u00e7\u0131k\u00e7a g\u00f6stermektedir.<\/p>\n<h2>Sonu\u00e7 ve S\u0131k\u00e7a Sorulan Sorular<\/h2>\n<p>Bu makale boyunca, AWS Identity and Access Management (IAM) servisinin bulut g\u00fcvenli\u011finin temel bir bile\u015feni oldu\u011funu detayl\u0131 bir \u015fekilde inceledik. IAM'in, AWS kaynaklar\u0131n\u0131za kimlerin, neye, ne zaman ve nas\u0131l eri\u015fece\u011fini y\u00f6netmek i\u00e7in vazge\u00e7ilmez bir ara\u00e7 oldu\u011funu g\u00f6rd\u00fck. Temel kavramlardan (kullan\u0131c\u0131lar, gruplar, roller, politikalar) ba\u015flayarak, ad\u0131m ad\u0131m kaynak olu\u015fturma s\u00fcre\u00e7lerini \u00f6\u011frendik ve ileri d\u00fczey kullan\u0131m senaryolar\u0131 ile g\u00fcvenlik best practices'lerini ke\u015ffettik. \u00d6zellikle \"en az ayr\u0131cal\u0131k\" ilkesinin ve s\u00fcrekli izlemenin, sa\u011flam bir g\u00fcvenlik duru\u015fu i\u00e7in ne kadar hayati oldu\u011funu vurgulad\u0131k.<\/p>\n<p>Bulut teknolojileri h\u0131zla geli\u015fmeye devam ederken, IAM de s\u00fcrekli olarak yeni \u00f6zellikler ve iyile\u015ftirmelerle g\u00fcncellenmektedir. Bu dinamik ortamda, AWS ortam\u0131n\u0131z\u0131n g\u00fcvenli\u011fini sa\u011flamak i\u00e7in IAM bilgilerini g\u00fcncel tutmak ve en iyi uygulamalar\u0131 s\u00fcrekli olarak uygulamak b\u00fcy\u00fck \u00f6nem ta\u015f\u0131r. Kendi AWS ortam\u0131n\u0131zda bu prensipleri uygulamak, hem veri g\u00fcvenli\u011finizi sa\u011flamla\u015ft\u0131racak hem de potansiyel maliyetli hatalar\u0131n \u00f6n\u00fcne ge\u00e7ecektir. Unutmay\u0131n, bulutta g\u00fcvenlik payla\u015f\u0131lan bir sorumluluktur ve AWS, altyap\u0131n\u0131n g\u00fcvenli\u011fini sa\u011flarken, sizin de verilerinizin ve yap\u0131land\u0131rmalar\u0131n\u0131z\u0131n g\u00fcvenli\u011fini sa\u011flamak sizin sorumlulu\u011funuzdadur. IAM, bu sorumlulu\u011fu yerine getirmeniz i\u00e7in elinizdeki en g\u00fc\u00e7l\u00fc ara\u00e7lardan biridir.<\/p>\n<h3>S\u0131k\u00e7a Sorulan Sorular (SSS)<\/h3>\n<ol>\n<li>\n        <strong>Soru 1: IAM Root kullan\u0131c\u0131s\u0131 ile g\u00fcnl\u00fck operasyonlar\u0131m\u0131 yapabilir miyim?<\/strong><\/p>\n<p><strong>Cevap 1:<\/strong> Kesinlikle hay\u0131r. Root kullan\u0131c\u0131s\u0131 en y\u00fcksek yetkiye sahiptir ve sadece hesap kurulumu, faturaland\u0131rma ve kritik kurtarma i\u015flemleri i\u00e7in kullan\u0131lmal\u0131d\u0131r. G\u00fcnl\u00fck operasyonlar i\u00e7in her zaman en az ayr\u0131cal\u0131k prensibiyle olu\u015fturulmu\u015f IAM kullan\u0131c\u0131lar\u0131 veya rolleri kullan\u0131lmal\u0131d\u0131r. Root hesab\u0131n\u0131z\u0131n eri\u015fim anahtarlar\u0131n\u0131 silmeli ve MFA ile korumal\u0131s\u0131n\u0131z.<\/p>\n<\/li>\n<li>\n        <strong>Soru 2: IAM rollerini kullanmak m\u0131 yoksa IAM kullan\u0131c\u0131lar\u0131 i\u00e7in eri\u015fim anahtarlar\u0131 olu\u015fturmak m\u0131 daha g\u00fcvenli?<\/strong><\/p>\n<p><strong>Cevap 2:<\/strong> M\u00fcmk\u00fcn oldu\u011funda IAM rollerini kullanmak genellikle daha g\u00fcvenlidir. Roller ge\u00e7ici kimlik bilgileri (ge\u00e7ici eri\u015fim anahtar\u0131, gizli eri\u015fim anahtar\u0131 ve oturum belirteci) sa\u011flar ve kimlik bilgilerinin s\u0131zd\u0131r\u0131lmas\u0131 riskini azalt\u0131r. Eri\u015fim anahtarlar\u0131 (Access Keys) kal\u0131c\u0131d\u0131r ve dikkatli bir \u015fekilde y\u00f6netilmez, d\u00fczenli olarak rotasyon yap\u0131lmazsa g\u00fcvenlik zafiyeti olu\u015fturabilir.<\/p>\n<\/li>\n<li>\n        <strong>Soru 3: Bir IAM politikas\u0131 uygulad\u0131ktan sonra eri\u015fim sorunlar\u0131 ya\u015f\u0131yorum, ne yapmal\u0131y\u0131m?<\/strong><\/p>\n<p><strong>Cevap 3:<\/strong> \u0130lk olarak, AWS IAM Policy Simulator (Politika Sim\u00fclat\u00f6r\u00fc) arac\u0131n\u0131 kullanarak politikan\u0131z\u0131n beklenen etkiyi yarat\u0131p yaratmad\u0131\u011f\u0131n\u0131 test edin. Bu ara\u00e7, politikan\u0131z\u0131n belirli eylemlere ve kaynaklara nas\u0131l izin verdi\u011fini veya reddetti\u011fini g\u00f6sterir. Ayr\u0131ca, AWS CloudTrail \u00fczerinden eri\u015fim reddedilen API \u00e7a\u011fr\u0131lar\u0131n\u0131 kontrol ederek hangi iznin eksik oldu\u011funu veya hatal\u0131 oldu\u011funu tespit edebilirsiniz. IAM Access Analyzer da d\u0131\u015far\u0131ya a\u00e7\u0131k eri\u015fimleri kontrol etmenize yard\u0131mc\u0131 olur.<\/p>\n<\/li>\n<li>\n        <strong>Soru 4: En az ayr\u0131cal\u0131k (Least Privilege) ilkesi neden bu kadar \u00f6nemli?<\/strong><\/p>\n<p><strong>Cevap 4:<\/strong> En az ayr\u0131cal\u0131k ilkesi, bir kullan\u0131c\u0131n\u0131n, grubun veya rol\u00fcn yaln\u0131zca g\u00f6revlerini yerine getirmek i\u00e7in kesinlikle gerekli olan minimum izinlere sahip olmas\u0131 gerekti\u011fini belirtir. Bu, olas\u0131 bir g\u00fcvenlik ihlali durumunda yetkisiz eri\u015fimin ve zarar\u0131n kapsam\u0131n\u0131 s\u0131n\u0131rlayarak g\u00fcvenlik riskini minimize eder. B\u00f6ylece, bir sald\u0131rgan sistemi ele ge\u00e7irse bile, eri\u015fim k\u0131s\u0131tl\u0131 olaca\u011f\u0131ndan verebilece\u011fi zarar da s\u0131n\u0131rl\u0131 kal\u0131r.<\/p>\n<\/li>\n<li>\n        <strong>Soru 5: Hangi durumlarda IAM federasyonunu d\u00fc\u015f\u00fcnmeliyim?<\/strong><\/p>\n<p><strong>Cevap 5:<\/strong> B\u00fcy\u00fck kurulu\u015flarda, mevcut bir \u015firket dizini (Active Directory, Okta vb.) arac\u0131l\u0131\u011f\u0131yla kullan\u0131c\u0131 kimliklerini zaten y\u00f6netiyorsan\u0131z IAM federasyonunu d\u00fc\u015f\u00fcnmelisiniz. Bu, kullan\u0131c\u0131lar\u0131n\u0131z\u0131n mevcut kimlik bilgileriyle AWS kaynaklar\u0131na eri\u015fmesini sa\u011flayarak y\u00f6netim y\u00fck\u00fcn\u00fc azalt\u0131r, tek oturum a\u00e7ma (SSO) deneyimi sunar ve tutarl\u0131 bir kurumsal g\u00fcvenlik politikas\u0131 olu\u015fturman\u0131za olanak tan\u0131r.<\/p>\n<\/li>\n<\/ol>\n<p><\/body><\/p>\n","protected":false},"excerpt":{"rendered":"AWS IAM (Identity and Access Management) bulut g\u00fcvenli\u011finin temelini olu\u015fturur. Bu makale, AWS kaynaklar\u0131n\u0131za g\u00fcvenli eri\u015fimi nas\u0131l y\u00f6netece\u011finizi,&hellip;","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[1406],"tags":[],"class_list":{"0":"post-30635","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-aws","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>AWS IAM: Bulutta Kimlik ve \u0130zin Y\u00f6netimine Kapsaml\u0131 Bir Bak\u0131\u015f<\/title>\n<meta name=\"description\" content=\"AWS IAM (Identity and Access Management) bulut g\u00fcvenli\u011finin temelini olu\u015fturur. Bu makale, AWS kaynaklar\u0131n\u0131za g\u00fcvenli eri\u015fimi nas\u0131l y\u00f6netece\u011finizi, kimlikleri nas\u0131l tan\u0131mlayaca\u011f\u0131n\u0131z\u0131 ve yetkilendirmeleri nas\u0131l uygulayaca\u011f\u0131n\u0131z\u0131 ad\u0131m ad\u0131m a\u00e7\u0131klayarak bulut ortam\u0131n\u0131zda sa\u011flam bir g\u00fcvenlik duru\u015fu olu\u015fturman\u0131za yard\u0131mc\u0131 olacakt\u0131r. Yeni ba\u015flayanlardan ileri seviye kullan\u0131c\u0131lara kadar herkes i\u00e7in kapsaml\u0131 bir rehber sunuyoruz.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/aws-iam-bulutta-kimlik-ve-izin-yonetimine-kapsamli-bir-bakis\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"AWS IAM: Bulutta Kimlik ve \u0130zin Y\u00f6netimine Kapsaml\u0131 Bir Bak\u0131\u015f\" \/>\n<meta property=\"og:description\" content=\"AWS IAM (Identity and Access Management) bulut g\u00fcvenli\u011finin temelini olu\u015fturur. Bu makale, AWS kaynaklar\u0131n\u0131za g\u00fcvenli eri\u015fimi nas\u0131l y\u00f6netece\u011finizi, kimlikleri nas\u0131l tan\u0131mlayaca\u011f\u0131n\u0131z\u0131 ve yetkilendirmeleri nas\u0131l uygulayaca\u011f\u0131n\u0131z\u0131 ad\u0131m ad\u0131m a\u00e7\u0131klayarak bulut ortam\u0131n\u0131zda sa\u011flam bir g\u00fcvenlik duru\u015fu olu\u015fturman\u0131za yard\u0131mc\u0131 olacakt\u0131r. Yeni ba\u015flayanlardan ileri seviye kullan\u0131c\u0131lara kadar herkes i\u00e7in kapsaml\u0131 bir rehber sunuyoruz.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/aws-iam-bulutta-kimlik-ve-izin-yonetimine-kapsamli-bir-bakis\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-09-30T00:01:30+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"30 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/aws-iam-bulutta-kimlik-ve-izin-yonetimine-kapsamli-bir-bakis\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/aws-iam-bulutta-kimlik-ve-izin-yonetimine-kapsamli-bir-bakis\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"AWS IAM: Bulutta Kimlik ve \u0130zin Y\u00f6netimine Kapsaml\u0131 Bir Bak\u0131\u015f\",\"datePublished\":\"2025-09-30T00:01:30+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/aws-iam-bulutta-kimlik-ve-izin-yonetimine-kapsamli-bir-bakis\/\"},\"wordCount\":5739,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"articleSection\":[\"AWS\"],\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/aws-iam-bulutta-kimlik-ve-izin-yonetimine-kapsamli-bir-bakis\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/aws-iam-bulutta-kimlik-ve-izin-yonetimine-kapsamli-bir-bakis\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/aws-iam-bulutta-kimlik-ve-izin-yonetimine-kapsamli-bir-bakis\/\",\"name\":\"AWS IAM: Bulutta Kimlik ve \u0130zin Y\u00f6netimine Kapsaml\u0131 Bir Bak\u0131\u015f\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-09-30T00:01:30+00:00\",\"description\":\"AWS IAM (Identity and Access Management) bulut g\u00fcvenli\u011finin temelini olu\u015fturur. Bu makale, AWS kaynaklar\u0131n\u0131za g\u00fcvenli eri\u015fimi nas\u0131l y\u00f6netece\u011finizi, kimlikleri nas\u0131l tan\u0131mlayaca\u011f\u0131n\u0131z\u0131 ve yetkilendirmeleri nas\u0131l uygulayaca\u011f\u0131n\u0131z\u0131 ad\u0131m ad\u0131m a\u00e7\u0131klayarak bulut ortam\u0131n\u0131zda sa\u011flam bir g\u00fcvenlik duru\u015fu olu\u015fturman\u0131za yard\u0131mc\u0131 olacakt\u0131r. Yeni ba\u015flayanlardan ileri seviye kullan\u0131c\u0131lara kadar herkes i\u00e7in kapsaml\u0131 bir rehber sunuyoruz.\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/aws-iam-bulutta-kimlik-ve-izin-yonetimine-kapsamli-bir-bakis\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/aws-iam-bulutta-kimlik-ve-izin-yonetimine-kapsamli-bir-bakis\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/aws-iam-bulutta-kimlik-ve-izin-yonetimine-kapsamli-bir-bakis\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"AWS IAM: Bulutta Kimlik ve \u0130zin Y\u00f6netimine Kapsaml\u0131 Bir Bak\u0131\u015f\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"AWS IAM: Bulutta Kimlik ve \u0130zin Y\u00f6netimine Kapsaml\u0131 Bir Bak\u0131\u015f","description":"AWS IAM (Identity and Access Management) bulut g\u00fcvenli\u011finin temelini olu\u015fturur. Bu makale, AWS kaynaklar\u0131n\u0131za g\u00fcvenli eri\u015fimi nas\u0131l y\u00f6netece\u011finizi, kimlikleri nas\u0131l tan\u0131mlayaca\u011f\u0131n\u0131z\u0131 ve yetkilendirmeleri nas\u0131l uygulayaca\u011f\u0131n\u0131z\u0131 ad\u0131m ad\u0131m a\u00e7\u0131klayarak bulut ortam\u0131n\u0131zda sa\u011flam bir g\u00fcvenlik duru\u015fu olu\u015fturman\u0131za yard\u0131mc\u0131 olacakt\u0131r. Yeni ba\u015flayanlardan ileri seviye kullan\u0131c\u0131lara kadar herkes i\u00e7in kapsaml\u0131 bir rehber sunuyoruz.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fatihsoysal.com\/blog\/aws-iam-bulutta-kimlik-ve-izin-yonetimine-kapsamli-bir-bakis\/","og_locale":"tr_TR","og_type":"article","og_title":"AWS IAM: Bulutta Kimlik ve \u0130zin Y\u00f6netimine Kapsaml\u0131 Bir Bak\u0131\u015f","og_description":"AWS IAM (Identity and Access Management) bulut g\u00fcvenli\u011finin temelini olu\u015fturur. Bu makale, AWS kaynaklar\u0131n\u0131za g\u00fcvenli eri\u015fimi nas\u0131l y\u00f6netece\u011finizi, kimlikleri nas\u0131l tan\u0131mlayaca\u011f\u0131n\u0131z\u0131 ve yetkilendirmeleri nas\u0131l uygulayaca\u011f\u0131n\u0131z\u0131 ad\u0131m ad\u0131m a\u00e7\u0131klayarak bulut ortam\u0131n\u0131zda sa\u011flam bir g\u00fcvenlik duru\u015fu olu\u015fturman\u0131za yard\u0131mc\u0131 olacakt\u0131r. Yeni ba\u015flayanlardan ileri seviye kullan\u0131c\u0131lara kadar herkes i\u00e7in kapsaml\u0131 bir rehber sunuyoruz.","og_url":"https:\/\/fatihsoysal.com\/blog\/aws-iam-bulutta-kimlik-ve-izin-yonetimine-kapsamli-bir-bakis\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-09-30T00:01:30+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"30 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/aws-iam-bulutta-kimlik-ve-izin-yonetimine-kapsamli-bir-bakis\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/aws-iam-bulutta-kimlik-ve-izin-yonetimine-kapsamli-bir-bakis\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"AWS IAM: Bulutta Kimlik ve \u0130zin Y\u00f6netimine Kapsaml\u0131 Bir Bak\u0131\u015f","datePublished":"2025-09-30T00:01:30+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/aws-iam-bulutta-kimlik-ve-izin-yonetimine-kapsamli-bir-bakis\/"},"wordCount":5739,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"articleSection":["AWS"],"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/aws-iam-bulutta-kimlik-ve-izin-yonetimine-kapsamli-bir-bakis\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/aws-iam-bulutta-kimlik-ve-izin-yonetimine-kapsamli-bir-bakis\/","url":"https:\/\/fatihsoysal.com\/blog\/aws-iam-bulutta-kimlik-ve-izin-yonetimine-kapsamli-bir-bakis\/","name":"AWS IAM: Bulutta Kimlik ve \u0130zin Y\u00f6netimine Kapsaml\u0131 Bir Bak\u0131\u015f","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-09-30T00:01:30+00:00","description":"AWS IAM (Identity and Access Management) bulut g\u00fcvenli\u011finin temelini olu\u015fturur. Bu makale, AWS kaynaklar\u0131n\u0131za g\u00fcvenli eri\u015fimi nas\u0131l y\u00f6netece\u011finizi, kimlikleri nas\u0131l tan\u0131mlayaca\u011f\u0131n\u0131z\u0131 ve yetkilendirmeleri nas\u0131l uygulayaca\u011f\u0131n\u0131z\u0131 ad\u0131m ad\u0131m a\u00e7\u0131klayarak bulut ortam\u0131n\u0131zda sa\u011flam bir g\u00fcvenlik duru\u015fu olu\u015fturman\u0131za yard\u0131mc\u0131 olacakt\u0131r. Yeni ba\u015flayanlardan ileri seviye kullan\u0131c\u0131lara kadar herkes i\u00e7in kapsaml\u0131 bir rehber sunuyoruz.","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/aws-iam-bulutta-kimlik-ve-izin-yonetimine-kapsamli-bir-bakis\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/aws-iam-bulutta-kimlik-ve-izin-yonetimine-kapsamli-bir-bakis\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/aws-iam-bulutta-kimlik-ve-izin-yonetimine-kapsamli-bir-bakis\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"AWS IAM: Bulutta Kimlik ve \u0130zin Y\u00f6netimine Kapsaml\u0131 Bir Bak\u0131\u015f"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/30635","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=30635"}],"version-history":[{"count":0,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/30635\/revisions"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=30635"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=30635"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=30635"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}