{"id":41884,"date":"2026-05-18T21:06:21","date_gmt":"2026-05-18T18:06:21","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/aws-izin-test-altyapisini-ci-cd-ile-otomatiklestirme\/"},"modified":"2026-05-18T21:06:51","modified_gmt":"2026-05-18T18:06:51","slug":"aws-izin-test-altyapisini-ci-cd-ile-otomatiklestirme","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/aws-izin-test-altyapisini-ci-cd-ile-otomatiklestirme\/","title":{"rendered":"AWS \u0130zin Test Altyap\u0131s\u0131n\u0131 CI\/CD ile Otomatikle\u015ftirme"},"content":{"rendered":"<h2>AWS \u0130zin Test Altyap\u0131s\u0131n\u0131 CI\/CD ile Otomatikle\u015ftirme<\/h2>\n<p>Amazon Web Services (AWS) \u00fczerinde geli\u015ftirdi\u011finiz uygulamalar\u0131n g\u00fcvenli\u011fini sa\u011flamak, en az i\u015flevselli\u011fi kadar \u00f6nemlidir. Peki ya bu g\u00fcvenlik katmanlar\u0131ndan biri olan izinlerinizi s\u00fcrekli ve otomatik olarak test edebilseydiniz? Bu makale, CI\/CD (S\u00fcrekli Entegrasyon\/S\u00fcrekli Teslimat) s\u00fcre\u00e7lerinize entegre edilebilecek g\u00fc\u00e7l\u00fc bir AWS izin test altyap\u0131s\u0131 kurman\u0131n yollar\u0131n\u0131 ad\u0131m ad\u0131m anlatacakt\u0131r. G\u00fcvenli\u011finizi \u015fansa b\u0131rakmay\u0131n, gelin bu s\u00fcreci otomatikle\u015ftirelim.<\/p>\n<h2>Neden AWS \u0130zinlerini Otomatik Olarak Test Etmeliyiz?<\/h2>\n<p>G\u00fcn\u00fcm\u00fcz\u00fcn h\u0131zla de\u011fi\u015fen yaz\u0131l\u0131m geli\u015ftirme d\u00fcnyas\u0131nda, uygulamalar\u0131m\u0131z s\u00fcrekli olarak g\u00fcncellenir ve yeni \u00f6zellikler eklenir. Bu dinamizm, g\u00fcvenlik yap\u0131land\u0131rmalar\u0131m\u0131z\u0131 da dinamik hale getirir. AWS gibi bulut platformlar\u0131nda, kaynaklara eri\u015fimi kontrol eden izinler (Identity and Access Management &#8211; IAM) kritik bir rol oynar. Yanl\u0131\u015f yap\u0131land\u0131r\u0131lm\u0131\u015f bir izin, hassas verilere yetkisiz eri\u015fime, hizmet kesintilerine veya hatta veri ihlallerine yol a\u00e7abilir. Geli\u015ftirme s\u00fcrecinin erken a\u015famalar\u0131nda bu t\u00fcr hatalar\u0131 yakalamak, hem maliyetleri d\u00fc\u015f\u00fcr\u00fcr hem de g\u00fcvenlik risklerini minimize eder. Geleneksel manuel test y\u00f6ntemleri, bu karma\u015f\u0131k ve s\u00fcrekli de\u011fi\u015fen izin yap\u0131s\u0131n\u0131 takip etmekte yetersiz kal\u0131r. \u0130\u015fte tam bu noktada, CI\/CD pipeline&#8217;lar\u0131na entegre edilebilen otomatik test altyap\u0131lar\u0131 devreye girer. Bu altyap\u0131, her kod de\u011fi\u015fikli\u011fiyle birlikte izinlerinizi otomatik olarak do\u011frular, b\u00f6ylece g\u00fcvenlik a\u00e7\u0131klar\u0131n\u0131n \u00fcretim ortam\u0131na ula\u015fmas\u0131n\u0131 engeller. Bu, bir binan\u0131n her kat\u0131n\u0131 in\u015fa ederken g\u00fcvenlik denetimlerinden ge\u00e7irmek gibidir; her ad\u0131mda sa\u011flaml\u0131k garantisi sunar.<\/p>\n<h3>AWS IAM Temellerini Anlamak<\/h3>\n<p>Otomatik izin test altyap\u0131s\u0131 kurmadan \u00f6nce, AWS IAM&#8217;in temel bile\u015fenlerini anlamak \u015fartt\u0131r. IAM, AWS kaynaklar\u0131na kimin ne t\u00fcr eri\u015fim hakk\u0131na sahip olaca\u011f\u0131n\u0131 y\u00f6netti\u011fimiz bir hizmettir. Temel olarak \u00fc\u00e7 ana unsurdan olu\u015fur: Kullan\u0131c\u0131lar (Users), Gruplar (Groups) ve Roller (Roles). Kullan\u0131c\u0131lar, uygulamalar\u0131n\u0131zla veya ki\u015filerle etkile\u015fim kuran bireyler veya servislerdir. Gruplar, benzer izinlere sahip kullan\u0131c\u0131lar\u0131 bir araya toplamak i\u00e7in kullan\u0131l\u0131r. Roller ise, ge\u00e7ici kimlik bilgileriyle AWS hizmetlerine veya ba\u015fka AWS hesaplar\u0131na g\u00fcvenli bir \u015fekilde eri\u015fim sa\u011flamak i\u00e7in kullan\u0131l\u0131r. Bu unsurlara atanan politikalar (Policies) ise, hangi eylemlerin hangi kaynaklar \u00fczerinde ger\u00e7ekle\u015ftirilebilece\u011fini tan\u0131mlayan JSON belgeleridir. Politikalar, izinlerin temelini olu\u015fturur ve <code>Allow<\/code> (izin ver) veya <code>Deny<\/code> (reddet) ifadeleriyle kaynaklara eri\u015fimi belirler. Bir kullan\u0131c\u0131n\u0131n veya rol\u00fcn belirli bir AWS hizmetini kullanabilmesi i\u00e7in, ona atanm\u0131\u015f bir politikada ilgili eyleme izin verilmi\u015f olmas\u0131 gerekir. \u00d6rne\u011fin, bir S3 bucket&#8217;\u0131na dosya y\u00fckleme izni, <code>s3:PutObject<\/code> eylemini belirli bir bucket \u00fczerinde <code>Allow<\/code> eden bir politika ile sa\u011flan\u0131r. Bu politikalar, kullan\u0131c\u0131ya do\u011frudan atanabilece\u011fi gibi, gruplara veya rollere de atanabilir. Karma\u015f\u0131k ortamlarda, izinler genellikle birden \u00e7ok politikadan t\u00fcreyen birle\u015fik bir etkiye sahip olabilir. Bu nedenle, bir kullan\u0131c\u0131n\u0131n veya rol\u00fcn nihai eri\u015fim d\u00fczeyini anlamak, t\u00fcm atanan politikalar\u0131n birle\u015fimini analiz etmeyi gerektirir.<\/p>\n<h3>CI\/CD Pipeline&#8217;lar\u0131nda Otomatik \u0130zin Testinin \u00d6nemi<\/h3>\n<p>Yaz\u0131l\u0131m geli\u015ftirme ya\u015fam d\u00f6ng\u00fcs\u00fcnde CI\/CD&#8217;nin rol\u00fc giderek artmaktad\u0131r. Continuous Integration (S\u00fcrekli Entegrasyon), geli\u015ftiricilerin kodlar\u0131n\u0131 s\u0131k s\u0131k ana branch&#8217;e birle\u015ftirmesini ve otomatikle\u015ftirilmi\u015f testlerle bu entegrasyonun do\u011frulu\u011funu sa\u011flamas\u0131n\u0131 ifade eder. Continuous Delivery\/Deployment (S\u00fcrekli Teslimat\/Da\u011f\u0131t\u0131m) ise, bu entegre edilmi\u015f kodun \u00fcretim ortam\u0131na veya test ortamlar\u0131na otomatik olarak da\u011f\u0131t\u0131labilmesini sa\u011flar. Bu s\u00fcre\u00e7lerin temelinde yatan prensip, de\u011fi\u015fiklikleri h\u0131zl\u0131 ve g\u00fcvenilir bir \u015fekilde canl\u0131ya almakt\u0131r. Ancak, bu h\u0131z ve otomasyon, g\u00fcvenlik yap\u0131land\u0131rmalar\u0131n\u0131n g\u00f6zden ka\u00e7mas\u0131na neden olabilir. \u0130\u015fte burada otomatik izin testleri devreye girer. Bir CI\/CD pipeline&#8217;\u0131na entegre edilen bir izin testi, her yeni kod de\u011fi\u015fikli\u011fiyle birlikte otomatik olarak \u00e7al\u0131\u015ft\u0131r\u0131l\u0131r. E\u011fer testler, tan\u0131mlanan g\u00fcvenlik politikalar\u0131na ayk\u0131r\u0131 bir durum tespit ederse, pipeline durdurulur ve geli\u015ftiriciye geri bildirim sa\u011flan\u0131r. Bu, hatal\u0131 izinlerin \u00fcretim ortam\u0131na ula\u015fmadan \u00f6nce yakalanmas\u0131n\u0131 sa\u011flar. \u00d6rne\u011fin, bir geli\u015ftirici yanl\u0131\u015fl\u0131kla bir veritaban\u0131 tablosuna gere\u011finden fazla okuma izni verdi\u011finde, CI\/CD pipeline&#8217;\u0131ndaki izin testi bu durumu hemen tespit edebilir. Bu, &#8220;g\u00fcvenli\u011fi sondan ekleme&#8221; yerine &#8220;g\u00fcvenli\u011fi ba\u015ftan sona entegre etme&#8221; yakla\u015f\u0131m\u0131n\u0131n bir par\u00e7as\u0131d\u0131r. Bu yakla\u015f\u0131m, \u00f6zellikle mikroservis mimarilerinde ve karma\u015f\u0131k AWS ortamlar\u0131nda hayati \u00f6nem ta\u015f\u0131r, \u00e7\u00fcnk\u00fc her servis kendi izin gereksinimlerine sahip olabilir ve bu gereksinimlerin s\u00fcrekli olarak do\u011frulanmas\u0131 gerekir. Otomatik testler, insan hatas\u0131 olas\u0131l\u0131\u011f\u0131n\u0131 azalt\u0131r ve g\u00fcvenlik standartlar\u0131n\u0131n s\u00fcrekli olarak korunmas\u0131n\u0131 sa\u011flar.<\/p>\n<h2>Otomatik \u0130zin Test Altyap\u0131s\u0131 Kurulumu: Ad\u0131m Ad\u0131m K\u0131lavuz<\/h2>\n<p>Bu b\u00f6l\u00fcmde, AWS \u00fczerinde otomatik izin test altyap\u0131s\u0131 kurman\u0131n pratik ad\u0131mlar\u0131n\u0131 ele alaca\u011f\u0131z. Temel olarak, bu altyap\u0131, mevcut izinlerinizi bir test ortam\u0131nda do\u011frulamak ve olas\u0131 ihlalleri raporlamak \u00fczerine kuruludur. Kullanaca\u011f\u0131m\u0131z ana ara\u00e7lardan biri AWS IAM Access Analyzer olacakt\u0131r. IAM Access Analyzer, AWS hesaplar\u0131n\u0131zdaki kaynaklara d\u0131\u015f eri\u015fimi izlemenize ve bu eri\u015fimin beklenmedik olup olmad\u0131\u011f\u0131n\u0131 anlaman\u0131za yard\u0131mc\u0131 olur. Ancak, Access Analyzer daha \u00e7ok d\u0131\u015f eri\u015fimlere odaklan\u0131r. Kendi i\u00e7 izinlerinizi daha detayl\u0131 test etmek i\u00e7in AWS Config ve AWS Lambda gibi hizmetleri de kullanabiliriz. AWS Config, AWS kaynaklar\u0131n\u0131z\u0131n yap\u0131land\u0131rmalar\u0131n\u0131 izlemenizi ve de\u011ferlendirmenizi sa\u011flar. Belirli IAM politikalar\u0131n\u0131n uyumluluk kurallar\u0131na uygun olup olmad\u0131\u011f\u0131n\u0131 kontrol etmek i\u00e7in AWS Config kurallar\u0131 (Config Rules) olu\u015fturabiliriz. Bu kurallar, \u00f6rne\u011fin, &#8220;Herhangi bir IAM kullan\u0131c\u0131s\u0131na y\u00f6netici eri\u015fimi verilmemelidir&#8221; gibi denetimler yapabilir. Lambda fonksiyonlar\u0131 ise, bu testlerin otomasyonunu ve \u00f6zelle\u015ftirilmesini sa\u011flamak i\u00e7in kullan\u0131l\u0131r. Bir Lambda fonksiyonu, belirli bir IAM rol\u00fcn\u00fcn hangi S3 bucket&#8217;lar\u0131na eri\u015febilece\u011fini sorgulayabilir ve bu eri\u015fimin beklentilerimizle uyumlu olup olmad\u0131\u011f\u0131n\u0131 kontrol edebilir. Bu fonksiyonlar, CI\/CD pipeline&#8217;\u0131m\u0131z\u0131n bir par\u00e7as\u0131 olarak tetiklenebilir. \u00d6rne\u011fin, bir GitHub Actions veya AWS CodePipeline i\u015f ak\u0131\u015f\u0131, kod da\u011f\u0131t\u0131m\u0131ndan \u00f6nce bu Lambda fonksiyonunu \u00e7al\u0131\u015ft\u0131rabilir. E\u011fer test ba\u015far\u0131s\u0131z olursa, pipeline durdurulur ve geli\u015ftiriciye bildirim g\u00f6nderilir. Bu entegrasyon, g\u00fcvenli\u011fin s\u00fcrekli olarak izlenmesini ve otomatikle\u015ftirilmesini sa\u011flar. Altyap\u0131n\u0131n temel mant\u0131\u011f\u0131, &#8220;test edilebilirli\u011fi&#8221; \u00f6n planda tutmakt\u0131r; yani, izinlerinizi hem insan taraf\u0131ndan okunabilir hem de makine taraf\u0131ndan sorgulanabilir hale getirmektir.<\/p>\n<h3>AWS IAM Access Analyzer ile Ba\u015flamak<\/h3>\n<p>AWS IAM Access Analyzer, AWS hesaplar\u0131n\u0131zdaki kaynaklara kimlerin eri\u015febildi\u011fini anlamak i\u00e7in harika bir ba\u015flang\u0131\u00e7 noktas\u0131d\u0131r. \u00d6zellikle, d\u0131\u015far\u0131dan (farkl\u0131 AWS hesaplar\u0131 veya internet \u00fczerinden) kaynaklar\u0131n\u0131za eri\u015fim olup olmad\u0131\u011f\u0131n\u0131 tespit etmekte etkilidir. Access Analyzer&#8217;\u0131 etkinle\u015ftirdi\u011finizde, AWS sizin ad\u0131n\u0131za izin politikalar\u0131n\u0131z\u0131 analiz eder ve bu analiz sonu\u00e7lar\u0131n\u0131 bir &#8220;analiz&#8221; (finding) olarak raporlar. Bu analizler, \u00f6rne\u011fin, bir S3 bucket&#8217;\u0131n\u0131n herkese a\u00e7\u0131k olarak yap\u0131land\u0131r\u0131ld\u0131\u011f\u0131n\u0131 veya bir Lambda fonksiyonunun ba\u015fka bir AWS hesab\u0131ndan \u00e7a\u011fr\u0131labilece\u011fini g\u00f6sterebilir. Bu bilgiler, g\u00fcvenlik duru\u015funuzu anlamak i\u00e7in \u00e7ok de\u011ferlidir. Access Analyzer, kaynak baz\u0131nda analizler sunar ve her bir analiz i\u00e7in hangi politikan\u0131n bu eri\u015fime izin verdi\u011fini detayl\u0131 olarak belirtir. Ancak, Access Analyzer&#8217;\u0131n temel odak noktas\u0131 d\u0131\u015f eri\u015fimlerdir. Kendi i\u00e7 IAM kullan\u0131c\u0131lar\u0131n\u0131z\u0131n veya rollerinizin birbirlerinin kaynaklar\u0131na olan eri\u015fimlerini detayl\u0131 bir \u015fekilde test etmek i\u00e7in ek ara\u00e7lara ve yakla\u015f\u0131mlara ihtiya\u00e7 duyulabilir. Yine de, d\u0131\u015far\u0131ya a\u00e7\u0131k b\u0131rak\u0131lm\u0131\u015f kritik kaynaklar\u0131n\u0131z\u0131 tespit etmek i\u00e7in Access Analyzer&#8217;\u0131 CI\/CD pipeline&#8217;\u0131n\u0131za entegre etmek, ilk ve en \u00f6nemli ad\u0131mlardan biridir. Bu entegrasyon, genellikle bir AWS SDK&#8217;s\u0131 arac\u0131l\u0131\u011f\u0131yla veya AWS CLI komutlar\u0131 kullan\u0131larak yap\u0131l\u0131r. Bir CI\/CD arac\u0131nda, Access Analyzer&#8217;\u0131n \u00fcretti\u011fi analizleri al\u0131p, \u00f6nceden tan\u0131mlanm\u0131\u015f bir uyumluluk listesiyle kar\u015f\u0131la\u015ft\u0131rabilirsiniz. E\u011fer beklenmedik veya onaylanmam\u0131\u015f bir d\u0131\u015f eri\u015fim tespit edilirse, pipeline ba\u015far\u0131s\u0131z olur. Bu, yanl\u0131\u015fl\u0131kla bir S3 bucket&#8217;\u0131n\u0131 herkese a\u00e7\u0131k hale getirme gibi basit ama potansiyel olarak y\u0131k\u0131c\u0131 hatalar\u0131 \u00f6nlemek i\u00e7in g\u00fc\u00e7l\u00fc bir mekanizmad\u0131r.<\/p>\n<h3>AWS Config Kurallar\u0131 ile \u0130zin Politikalar\u0131n\u0131 Denetleme<\/h3>\n<p>AWS Config, AWS kaynaklar\u0131n\u0131z\u0131n yap\u0131land\u0131rmalar\u0131n\u0131 izlemenizi ve uyumluluklar\u0131n\u0131 de\u011ferlendirmenizi sa\u011flar. IAM politikalar\u0131n\u0131n belirli g\u00fcvenlik standartlar\u0131na uygun olup olmad\u0131\u011f\u0131n\u0131 kontrol etmek i\u00e7in AWS Config kurallar\u0131 (Config Rules) olu\u015fturmak, otomatik izin test altyap\u0131s\u0131n\u0131n \u00f6nemli bir par\u00e7as\u0131d\u0131r. AWS Config, \u00f6nceden tan\u0131mlanm\u0131\u015f y\u00f6netilen kurallar (managed rules) sunar veya kendi \u00f6zel kurallar\u0131n\u0131z\u0131 (custom rules) Lambda fonksiyonlar\u0131 arac\u0131l\u0131\u011f\u0131yla yazman\u0131za olanak tan\u0131r. \u00d6rne\u011fin, &#8220;IAMUserNoAdministratorAccess&#8221; gibi y\u00f6netilen bir kural, hi\u00e7bir IAM kullan\u0131c\u0131s\u0131na tam y\u00f6netici eri\u015fimi verilmedi\u011fini kontrol eder. Bu t\u00fcr kurallar, g\u00fcvenlik politikalar\u0131n\u0131z\u0131n temel gereksinimlerini otomatik olarak denetler. Daha karma\u015f\u0131k senaryolar i\u00e7in, \u00f6zel AWS Config kurallar\u0131 yazabilirsiniz. Bu kurallar, belirli bir IAM rol\u00fcn\u00fcn yaln\u0131zca izin verilen API \u00e7a\u011fr\u0131lar\u0131n\u0131 yapabildi\u011fini veya belirli bir S3 bucket&#8217;\u0131na eri\u015fiminin yaln\u0131zca belirli IP adresleriyle s\u0131n\u0131rland\u0131r\u0131ld\u0131\u011f\u0131n\u0131 do\u011frulayabilir. \u00d6zel kurallar genellikle bir AWS Lambda fonksiyonu olarak uygulan\u0131r. Bu fonksiyon, AWS Config taraf\u0131ndan tetiklenir, ilgili IAM politikalar\u0131n\u0131 inceler ve ard\u0131ndan politikalar\u0131n uyumlu olup olmad\u0131\u011f\u0131n\u0131 belirten bir sonu\u00e7 d\u00f6nd\u00fcr\u00fcr. Bu sonu\u00e7lar, &#8220;COMPLIANT&#8221; (uyumlu) veya &#8220;NON_COMPLIANT&#8221; (uyumsuz) \u015feklinde olur. CI\/CD pipeline&#8217;\u0131n\u0131za bu AWS Config kurallar\u0131n\u0131 entegre ederek, kod da\u011f\u0131t\u0131m\u0131ndan \u00f6nce veya sonra bu denetimleri otomatik olarak \u00e7al\u0131\u015ft\u0131rabilirsiniz. E\u011fer bir kural &#8220;NON_COMPLIANT&#8221; olarak i\u015faretlenirse, pipeline durdurulabilir ve geli\u015ftirme ekibine bir bildirim g\u00f6nderilebilir. Bu, g\u00fcvenlik a\u00e7\u0131klar\u0131n\u0131n \u00fcretim ortam\u0131na ula\u015fmadan \u00f6nce proaktif olarak tespit edilmesini sa\u011flar. AWS Config, zaman i\u00e7inde kaynaklar\u0131n\u0131z\u0131n yap\u0131land\u0131rmas\u0131ndaki de\u011fi\u015fiklikleri de izler, b\u00f6ylece bir izin politikas\u0131 zamanla uyumsuz hale geldi\u011finde de haberdar olursunuz.<\/p>\n<h3>AWS Lambda ve SDK&#8217;lar ile \u00d6zel Test Senaryolar\u0131 Olu\u015fturma<\/h3>\n<p>AWS Lambda, sunucusuz (serverless) fonksiyonlar \u00e7al\u0131\u015ft\u0131rman\u0131za olanak tan\u0131r ve bu, \u00f6zel izin test senaryolar\u0131 olu\u015fturmak i\u00e7in m\u00fckemmel bir ara\u00e7t\u0131r. AWS SDK&#8217;lar\u0131n\u0131 (Software Development Kits) kullanarak, Lambda fonksiyonlar\u0131n\u0131zla AWS API&#8217;lerini \u00e7a\u011f\u0131rabilir ve karma\u015f\u0131k izin denetimleri yapabilirsiniz. \u00d6rne\u011fin, bir Lambda fonksiyonu yazarak, belirli bir IAM kullan\u0131c\u0131s\u0131n\u0131n bir DynamoDB tablosuna yaln\u0131zca belirli alanlar\u0131 okuma iznine sahip olup olmad\u0131\u011f\u0131n\u0131 test edebilirsiniz. Bu fonksiyon, \u00f6ncelikle kullan\u0131c\u0131n\u0131n mevcut politikalar\u0131n\u0131 al\u0131r, ard\u0131ndan bu politikalar\u0131 ayr\u0131\u015ft\u0131r\u0131r ve beklenen izinlerle kar\u015f\u0131la\u015ft\u0131r\u0131r. E\u011fer bir uyumsuzluk varsa, fonksiyon bir hata d\u00f6nd\u00fcr\u00fcr. Bu t\u00fcr \u00f6zel testler, AWS Config&#8217;in sundu\u011fu y\u00f6netilen kurallar\u0131n \u00f6tesine ge\u00e7erek, uygulaman\u0131z\u0131n \u00f6zel gereksinimlerine g\u00f6re izinleri do\u011frulaman\u0131z\u0131 sa\u011flar. CI\/CD pipeline&#8217;\u0131n\u0131zda, bu Lambda fonksiyonlar\u0131n\u0131 bir tetikleyici (trigger) olarak kullanabilirsiniz. \u00d6rne\u011fin, bir AWS CodePipeline, bir geli\u015ftirme ortam\u0131na kod da\u011f\u0131tt\u0131ktan sonra bu Lambda fonksiyonunu \u00e7al\u0131\u015ft\u0131rabilir. Fonksiyon ba\u015far\u0131yla tamamlan\u0131rsa, da\u011f\u0131t\u0131m devam eder. E\u011fer fonksiyon bir uyumsuzluk tespit ederse, pipeline durdurulur ve geli\u015ftiriciye bir bildirim (\u00f6rne\u011fin, Slack mesaj\u0131 veya e-posta) g\u00f6nderilir. Bu yakla\u015f\u0131m, esneklik ve \u00f6zelle\u015ftirme konusunda b\u00fcy\u00fck avantaj sa\u011flar. Ayr\u0131ca, AWS CLI (Command Line Interface) komutlar\u0131n\u0131 da Lambda fonksiyonlar\u0131 i\u00e7inde kullanarak daha fazla otomasyon sa\u011flayabilirsiniz. \u00d6rne\u011fin, <code>aws iam simulate-principal-policy<\/code> komutu, bir kullan\u0131c\u0131n\u0131n veya rol\u00fcn belirli bir eylemi ger\u00e7ekle\u015ftirebilece\u011fini sim\u00fcle etmek i\u00e7in kullan\u0131labilir. Bu sim\u00fclasyon sonu\u00e7lar\u0131n\u0131 Lambda fonksiyonunuzda analiz ederek, karma\u015f\u0131k izin senaryolar\u0131n\u0131 test edebilirsiniz. Bu, \u00f6zellikle farkl\u0131 servisler aras\u0131ndaki izin etkile\u015fimlerini test etmek i\u00e7in \u00e7ok kullan\u0131\u015fl\u0131d\u0131r.<\/p>\n<h2>Ger\u00e7ek D\u00fcnya Senaryolar\u0131 ve Vaka Analizleri<\/h2>\n<p>Bu b\u00f6l\u00fcmde, otomatik izin test altyap\u0131s\u0131n\u0131n ger\u00e7ek d\u00fcnyada nas\u0131l kullan\u0131ld\u0131\u011f\u0131na dair \u00f6rnekler inceleyece\u011fiz. Bu senaryolar, kar\u015f\u0131la\u015f\u0131lan yayg\u0131n sorunlar\u0131 ve bu sorunlar\u0131n otomatik testlerle nas\u0131l \u00e7\u00f6z\u00fcld\u00fc\u011f\u00fcn\u00fc g\u00f6sterecektir.<\/p>\n<h3>Vaka Analizi 1: Hassas Verilere Yetkisiz Eri\u015fim Engelleme<\/h3>\n<p>Bir e-ticaret \u015firketi, m\u00fc\u015fteri sipari\u015f bilgilerini i\u00e7eren bir S3 bucket&#8217;\u0131na sahiptir. Bu bucket&#8217;taki verilerin hassasl\u0131\u011f\u0131 nedeniyle, yaln\u0131zca belirli yetkili kullan\u0131c\u0131lar\u0131n ve servislerin bu verilere eri\u015febilmesi gerekmektedir. Geli\u015ftirme ekibi, yeni bir kampanya y\u00f6netimi arac\u0131 \u00fczerinde \u00e7al\u0131\u015fmaktad\u0131r ve bu araca sipari\u015f verilerini okuma izni verilmesi gerekmektedir. Ancak, bir geli\u015ftirici yanl\u0131\u015fl\u0131kla bu araca, t\u00fcm S3 bucket&#8217;lar\u0131na tam eri\u015fim sa\u011flayan bir politika atam\u0131\u015ft\u0131r. Bu durum, CI\/CD pipeline&#8217;\u0131na entegre edilmi\u015f otomatik izin testleri sayesinde erken fark edilmi\u015ftir. Test altyap\u0131s\u0131, AWS Config kurallar\u0131 ve \u00f6zel Lambda fonksiyonlar\u0131 kullan\u0131larak yap\u0131land\u0131r\u0131lm\u0131\u015ft\u0131r. Bir AWS Config kural\u0131, S3 bucket&#8217;lar\u0131na verilen t\u00fcm izinleri denetler ve yaln\u0131zca belirli IAM rolleri ve politikalar\u0131na izin verilmesini sa\u011flar. Ayr\u0131ca, bir Lambda fonksiyonu, kampanya y\u00f6netimi arac\u0131 i\u00e7in atanan IAM rol\u00fcn\u00fcn izinlerini analiz eder ve yaln\u0131zca sipari\u015f verilerini i\u00e7eren S3 bucket&#8217;\u0131na okuma eri\u015fimi olup olmad\u0131\u011f\u0131n\u0131 kontrol eder. Kod da\u011f\u0131t\u0131m\u0131 s\u0131ras\u0131nda pipeline \u00e7al\u0131\u015ft\u0131r\u0131ld\u0131\u011f\u0131nda, bu Lambda fonksiyonu, atanan politikan\u0131n gere\u011finden fazla yetki i\u00e7erdi\u011fini tespit eder. Pipeline durdurulur ve geli\u015ftiriciye bir uyar\u0131 mesaj\u0131 g\u00f6nderilir. Geli\u015ftirici, politikay\u0131 d\u00fczelterek yaln\u0131zca gerekli olan okuma iznini atar ve testler tekrar \u00e7al\u0131\u015ft\u0131r\u0131l\u0131r. Bu sayede, hassas m\u00fc\u015fteri verilerine yetkisiz eri\u015fim riski, \u00fcretim ortam\u0131na ula\u015fmadan engellenmi\u015f olur. Bu vaka, otomatik testlerin sadece g\u00fcvenlik a\u00e7\u0131klar\u0131n\u0131 yakalamakla kalmay\u0131p, ayn\u0131 zamanda yanl\u0131\u015f yap\u0131land\u0131rmalar\u0131n \u00f6n\u00fcne ge\u00e7erek veri ihlali riskini nas\u0131l azaltt\u0131\u011f\u0131n\u0131 g\u00f6stermektedir.<\/p>\n<h3>Vaka Analizi 2: Mikroservis \u0130zin Y\u00f6netiminin Otomasyonu<\/h3>\n<p>B\u00fcy\u00fck bir finansal teknoloji \u015firketi, karma\u015f\u0131k bir mikroservis mimarisine sahiptir. Her mikroservis, kendi AWS kaynaklar\u0131n\u0131 y\u00f6netir ve di\u011fer servislerle belirli API \u00e7a\u011fr\u0131lar\u0131 arac\u0131l\u0131\u011f\u0131yla ileti\u015fim kurar. Bu ortamda, servisler aras\u0131ndaki izinlerin do\u011fru bir \u015fekilde yap\u0131land\u0131r\u0131lmas\u0131 son derece \u00f6nemlidir. Yanl\u0131\u015f bir izin, bir servisin di\u011ferinin hassas finansal verilerine eri\u015fmesine veya kritik i\u015flemleri bozmas\u0131na neden olabilir. \u015eirket, CI\/CD s\u00fcre\u00e7lerini iyile\u015ftirmek ve izin y\u00f6netimini otomatikle\u015ftirmek i\u00e7in bir proje ba\u015flatm\u0131\u015ft\u0131r. Otomatik test altyap\u0131s\u0131, AWS IAM Access Analyzer, AWS Config ve \u00f6zel Lambda fonksiyonlar\u0131n\u0131 entegre ederek kurulmu\u015ftur. IAM Access Analyzer, d\u0131\u015far\u0131dan gelen beklenmedik eri\u015fimleri izlerken, AWS Config kurallar\u0131 genel IAM g\u00fcvenlik standartlar\u0131n\u0131 denetler. En \u00f6nemli k\u0131s\u0131m ise, her mikroservis i\u00e7in \u00f6zel olarak tasarlanm\u0131\u015f Lambda fonksiyonlar\u0131d\u0131r. Bu fonksiyonlar, bir mikroservisin di\u011fer mikroservislerle olan ileti\u015fim izinlerini test eder. \u00d6rne\u011fin, bir &#8220;\u00f6deme servisi&#8221; Lambda fonksiyonu, yaln\u0131zca &#8220;kullan\u0131c\u0131 servisi&#8221;nden kullan\u0131c\u0131 kimlik bilgilerini okuma ve &#8220;i\u015flem servisi&#8221;ne \u00f6deme onay\u0131 g\u00f6nderme iznine sahip olmal\u0131d\u0131r. Bu Lambda fonksiyonlar\u0131, her kod da\u011f\u0131t\u0131m\u0131ndan \u00f6nce \u00e7al\u0131\u015ft\u0131r\u0131l\u0131r. E\u011fer bir mikroservis, beklenmedik bir API \u00e7a\u011fr\u0131s\u0131 yapmaya \u00e7al\u0131\u015f\u0131rsa veya gere\u011finden fazla yetki talep ederse, testler ba\u015far\u0131s\u0131z olur ve pipeline durdurulur. Bu, servisler aras\u0131ndaki g\u00fcvenli ileti\u015fimin s\u00fcrekli olarak garanti edilmesini sa\u011flar. Bu vaka analizi, mikroservis mimarilerinde izin y\u00f6netiminin karma\u015f\u0131kl\u0131\u011f\u0131n\u0131 ve otomatik testlerin bu karma\u015f\u0131kl\u0131\u011f\u0131 nas\u0131l y\u00f6netilebilir hale getirdi\u011fini vurgulamaktad\u0131r.<\/p>\n<h2>\u0130leri D\u00fczey \u0130pu\u00e7lar\u0131 ve En \u0130yi Uygulamalar<\/h2>\n<p>Otomatik izin test altyap\u0131n\u0131z\u0131 daha da g\u00fc\u00e7lendirmek ve daha verimli hale getirmek i\u00e7in baz\u0131 ileri d\u00fczey teknikler ve en iyi uygulamalar bulunmaktad\u0131r. Bu ipu\u00e7lar\u0131, altyap\u0131n\u0131z\u0131n \u00f6l\u00e7eklenebilirli\u011fini art\u0131racak ve daha derinlemesine g\u00fcvenlik denetimleri yapman\u0131z\u0131 sa\u011flayacakt\u0131r.<\/p>\n<h3>Politika Olarak Kod (Policy as Code) Yakla\u015f\u0131m\u0131<\/h3>\n<p>\u0130zin politikalar\u0131n\u0131z\u0131 y\u00f6netmek i\u00e7in &#8220;Politika Olarak Kod&#8221; (Policy as Code &#8211; PaC) yakla\u015f\u0131m\u0131n\u0131 benimsemek, otomasyonunuzu bir \u00fcst seviyeye ta\u015f\u0131yacakt\u0131r. PaC, izin politikalar\u0131n\u0131z\u0131, altyap\u0131 kodunuz gibi (Infrastructure as Code &#8211; IaC) kod dosyalar\u0131 olarak tan\u0131mlaman\u0131z\u0131 sa\u011flar. Terraform, Pulumi veya AWS CloudFormation gibi IaC ara\u00e7lar\u0131 kullan\u0131larak, IAM politikalar\u0131 da kod olarak yaz\u0131labilir ve s\u00fcr\u00fcm kontrol sistemlerinde (\u00f6rne\u011fin, Git) y\u00f6netilebilir. Bu yakla\u015f\u0131m\u0131n temel faydas\u0131, izin de\u011fi\u015fikliklerinin de kod de\u011fi\u015fiklikleri gibi y\u00f6netilebilmesidir. Bir izin de\u011fi\u015fikli\u011fi yapmak istedi\u011finizde, ilgili politika kodunu g\u00fcncellersiniz ve bu de\u011fi\u015fiklik, kodunuzla birlikte CI\/CD pipeline&#8217;\u0131ndan ge\u00e7er. Bu, hem \u015feffafl\u0131\u011f\u0131 art\u0131r\u0131r hem de izin de\u011fi\u015fikliklerinin kim taraf\u0131ndan, ne zaman ve neden yap\u0131ld\u0131\u011f\u0131n\u0131 izlemeyi kolayla\u015ft\u0131r\u0131r. Ayr\u0131ca, PaC, izin politikalar\u0131n\u0131z\u0131n tutarl\u0131l\u0131\u011f\u0131n\u0131 sa\u011flamaya yard\u0131mc\u0131 olur. Farkl\u0131 ortamlar (geli\u015ftirme, test, \u00fcretim) i\u00e7in ayn\u0131 temel politika \u015fablonlar\u0131n\u0131 kullanabilir ve yaln\u0131zca ortam bazl\u0131 de\u011fi\u015fkenleri (\u00f6rne\u011fin, belirli kaynak adlar\u0131) \u00f6zelle\u015ftirebilirsiniz. Otomatik testleriniz, bu kod olarak tan\u0131mlanm\u0131\u015f politikalar\u0131n AWS&#8217;de do\u011fru bir \u015fekilde uygulan\u0131p uygulanmad\u0131\u011f\u0131n\u0131 kontrol edebilir. \u00d6rne\u011fin, bir Terraform plan\u0131 \u00e7al\u0131\u015ft\u0131\u011f\u0131nda, bu plan\u0131n olu\u015fturaca\u011f\u0131 IAM politikalar\u0131n\u0131 \u00f6nceden analiz edip, herhangi bir g\u00fcvenlik ihlali olup olmad\u0131\u011f\u0131n\u0131 kontrol eden bir test yazabilirsiniz. Bu, &#8220;shift-left security&#8221; (g\u00fcvenli\u011fi sola kayd\u0131rma) prensibinin bir par\u00e7as\u0131d\u0131r; yani g\u00fcvenli\u011fi geli\u015ftirme s\u00fcrecinin en ba\u015f\u0131na entegre etmektir.<\/p>\n<h3>Ger\u00e7ek Zamanl\u0131 \u0130zin \u0130zleme ve Uyar\u0131 Mekanizmalar\u0131<\/h3>\n<p>Otomatik testler genellikle kod da\u011f\u0131t\u0131m\u0131 s\u0131ras\u0131nda \u00e7al\u0131\u015f\u0131r, ancak izinler dinamik olarak de\u011fi\u015febilir. Bu nedenle, ger\u00e7ek zamanl\u0131 izin izleme ve uyar\u0131 mekanizmalar\u0131 kurmak da \u00f6nemlidir. AWS CloudTrail, AWS hesaplar\u0131n\u0131zdaki t\u00fcm API \u00e7a\u011fr\u0131lar\u0131n\u0131 kaydeder. Bu kay\u0131tlar\u0131 analiz ederek, izinlerle ilgili \u015f\u00fcpheli etkinlikleri tespit edebilirsiniz. \u00d6rne\u011fin, bir IAM kullan\u0131c\u0131s\u0131n\u0131n beklenmedik bir \u015fekilde hassas bir kayna\u011fa eri\u015fim izni ald\u0131\u011f\u0131n\u0131 veya bir politika de\u011fi\u015fikli\u011fi yap\u0131ld\u0131\u011f\u0131n\u0131 CloudTrail loglar\u0131ndan tespit edebilirsiniz. Bu loglar\u0131 Amazon CloudWatch Logs&#8217;a y\u00f6nlendirerek ve CloudWatch Alarmlar\u0131 (CloudWatch Alarms) olu\u015fturarak, belirli olaylar meydana geldi\u011finde otomatik uyar\u0131lar alabilirsiniz. \u00d6rne\u011fin, bir IAM kullan\u0131c\u0131s\u0131na y\u00f6netici eri\u015fimi veren bir politika de\u011fi\u015fikli\u011fi tespit edildi\u011finde, an\u0131nda bir e-posta veya Slack bildirimi alabilirsiniz. Bu uyar\u0131lar, g\u00fcvenlik ekibini veya operasyon ekibini bilgilendirerek, olas\u0131 bir g\u00fcvenlik sorununa h\u0131zla m\u00fcdahale etmelerini sa\u011flar. Ayr\u0131ca, AWS Security Hub gibi hizmetleri kullanarak, farkl\u0131 AWS g\u00fcvenlik servislerinden gelen analizleri tek bir yerde toplayabilir ve \u00f6nceliklendirebilirsiniz. Security Hub, IAM Access Analyzer, AWS Config ve di\u011fer g\u00fcvenlik ara\u00e7lar\u0131ndan gelen bulgular\u0131 birle\u015ftirerek kapsaml\u0131 bir g\u00fcvenlik g\u00f6r\u00fcn\u00fcm\u00fc sunar. Bu, s\u00fcrekli bir g\u00fcvenlik izleme ve m\u00fcdahale d\u00f6ng\u00fcs\u00fc olu\u015fturman\u0131za yard\u0131mc\u0131 olur.<\/p>\n<h2>Sonu\u00e7<\/h2>\n<p>AWS \u00fczerinde otomatik izin test altyap\u0131s\u0131 kurmak, bulut g\u00fcvenli\u011finizi \u00f6nemli \u00f6l\u00e7\u00fcde art\u0131racak ve CI\/CD s\u00fcre\u00e7lerinizi daha g\u00fcvenilir hale getirecektir. Bu makalede, temel IAM kavramlar\u0131ndan ba\u015flayarak, AWS IAM Access Analyzer, AWS Config ve AWS Lambda gibi ara\u00e7larla nas\u0131l bir test altyap\u0131s\u0131 olu\u015fturabilece\u011finizi ad\u0131m ad\u0131m anlatt\u0131k. Ayr\u0131ca, ger\u00e7ek d\u00fcnya senaryolar\u0131 ve vaka analizleriyle bu yakla\u015f\u0131m\u0131n pratik faydalar\u0131n\u0131 g\u00f6sterdik. Politika Olarak Kod ve ger\u00e7ek zamanl\u0131 izleme gibi ileri d\u00fczey teknikler, altyap\u0131n\u0131z\u0131 daha da g\u00fc\u00e7lendirmenizi sa\u011flayacakt\u0131r. G\u00fcvenli\u011fi otomatikle\u015ftirmek, sadece riskleri azaltmakla kalmaz, ayn\u0131 zamanda geli\u015ftirme ekiplerinin daha h\u0131zl\u0131 ve g\u00fcvenli bir \u015fekilde \u00e7al\u0131\u015fmas\u0131na olanak tan\u0131r. Unutmay\u0131n, bulut g\u00fcvenli\u011fi s\u00fcrekli bir yolculuktur ve otomatikle\u015ftirilmi\u015f testler bu yolculukta en g\u00fcvenilir yol arkada\u015flar\u0131n\u0131zdan biridir.<\/p>\n<h3>S\u0131k\u00e7a Sorulan Sorular (SSS)<\/h3>\n<ul>\n<li>\n            <strong>Otomatik izin testleri ne kadar s\u00fcrede \u00e7al\u0131\u015fmal\u0131?<\/strong><\/p>\n<p>\u0130deal olarak, her kod birle\u015ftirme (commit) veya da\u011f\u0131t\u0131m \u00f6ncesinde \u00e7al\u0131\u015fmal\u0131d\u0131r. Bu, hatalar\u0131n erken tespit edilmesini sa\u011flar. CI\/CD pipeline&#8217;\u0131n\u0131z\u0131n h\u0131z\u0131na ve karma\u015f\u0131kl\u0131\u011f\u0131na ba\u011fl\u0131 olarak, testlerin \u00e7al\u0131\u015ft\u0131r\u0131lma s\u0131kl\u0131\u011f\u0131 ayarlanabilir.<\/p>\n<\/li>\n<li>\n            <strong>Hangi AWS hizmetleri izin testleri i\u00e7in en \u00f6nemlidir?<\/strong><\/p>\n<p>AWS IAM Access Analyzer, AWS Config ve AWS Lambda, otomatik izin test altyap\u0131s\u0131n\u0131n temelini olu\u015fturur. AWS CloudTrail ve Amazon CloudWatch ise izleme ve uyar\u0131 mekanizmalar\u0131 i\u00e7in kritiktir.<\/p>\n<\/li>\n<li>\n            <strong>Mevcut izinlerimizi nas\u0131l analiz edebiliriz?<\/strong><\/p>\n<p>AWS IAM Access Analyzer, d\u0131\u015f eri\u015fimleri analiz etmek i\u00e7in kullan\u0131l\u0131r. AWS Config kurallar\u0131, politikalar\u0131n uyumlulu\u011funu denetlemek i\u00e7in kullan\u0131labilir. AWS CLI&#8217;daki <code>iam simulate-principal-policy<\/code> komutu veya AWS SDK&#8217;lar\u0131 ile \u00f6zel analizler yap\u0131labilir.<\/p>\n<\/li>\n<li>\n            <strong>Bu altyap\u0131y\u0131 kurmak ne kadar zaman al\u0131r?<\/strong><\/p>\n<p>Kurulum s\u00fcresi, mevcut altyap\u0131n\u0131z\u0131n karma\u015f\u0131kl\u0131\u011f\u0131na ve ekibinizin AWS deneyimine ba\u011fl\u0131 olarak de\u011fi\u015fir. Temel bir kurulum birka\u00e7 g\u00fcn s\u00fcrebilirken, daha karma\u015f\u0131k ve \u00f6zelle\u015ftirilmi\u015f bir altyap\u0131 birka\u00e7 hafta veya ay s\u00fcrebilir.<\/p>\n<\/li>\n<li>\n            <strong>Otomatik testler t\u00fcm g\u00fcvenlik a\u00e7\u0131klar\u0131n\u0131 yakalayabilir mi?<\/strong><\/p>\n<p>Otomatik testler, tan\u0131mlanm\u0131\u015f kurallara dayal\u0131 olarak bir\u00e7ok g\u00fcvenlik a\u00e7\u0131\u011f\u0131n\u0131 yakalayabilir. Ancak, insan hatas\u0131 veya daha karma\u015f\u0131k, ba\u011flama duyarl\u0131 g\u00fcvenlik sorunlar\u0131 i\u00e7in manuel incelemeler ve penetrasyon testleri hala \u00f6nemlidir. Otomatik testler, g\u00fcvenlik katmanlar\u0131ndan yaln\u0131zca biridir.<\/p>\n<\/li>\n<\/ul>\n<p>#AWS #IAM #CI\/CD #BulutG\u00fcvenli\u011fi #Otomasyon #DevOps<\/p>\n<div class=\"github-example-link\"><strong>\u00d6rnek kod:<\/strong> <a href=\"https:\/\/github.com\/fatihsoysalcom\/aws-iam-permission-simulation-test\" target=\"_blank\" rel=\"noopener noreferrer\">github.com\/fatihsoysalcom\/aws-iam-permission-simulation-test<\/a><\/div>\n","protected":false},"excerpt":{"rendered":"Amazon Web Services (AWS) \u00fczerinde geli\u015ftirdi\u011finiz uygulamalar\u0131n g\u00fcvenli\u011fini sa\u011flamak, en az i\u015flevselli\u011fi kadar \u00f6nemlidir.","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-41884","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 \u0130zin Test Altyap\u0131s\u0131n\u0131 CI\/CD ile Otomatikle\u015ftirme - Kodlar\u0131n Gizemli D\u00fcnyas\u0131<\/title>\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-izin-test-altyapisini-ci-cd-ile-otomatiklestirme\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"AWS \u0130zin Test Altyap\u0131s\u0131n\u0131 CI\/CD ile Otomatikle\u015ftirme\" \/>\n<meta property=\"og:description\" content=\"Amazon Web Services (AWS) \u00fczerinde geli\u015ftirdi\u011finiz uygulamalar\u0131n g\u00fcvenli\u011fini sa\u011flamak, en az i\u015flevselli\u011fi kadar \u00f6nemlidir.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/aws-izin-test-altyapisini-ci-cd-ile-otomatiklestirme\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2026-05-18T18:06:21+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-05-18T18:06:51+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=\"19 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/aws-izin-test-altyapisini-ci-cd-ile-otomatiklestirme\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/aws-izin-test-altyapisini-ci-cd-ile-otomatiklestirme\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"AWS \u0130zin Test Altyap\u0131s\u0131n\u0131 CI\/CD ile Otomatikle\u015ftirme\",\"datePublished\":\"2026-05-18T18:06:21+00:00\",\"dateModified\":\"2026-05-18T18:06:51+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/aws-izin-test-altyapisini-ci-cd-ile-otomatiklestirme\/\"},\"wordCount\":3788,\"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-izin-test-altyapisini-ci-cd-ile-otomatiklestirme\/#respond\"]}],\"copyrightYear\":\"2026\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/aws-izin-test-altyapisini-ci-cd-ile-otomatiklestirme\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/aws-izin-test-altyapisini-ci-cd-ile-otomatiklestirme\/\",\"name\":\"AWS \u0130zin Test Altyap\u0131s\u0131n\u0131 CI\/CD ile Otomatikle\u015ftirme - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2026-05-18T18:06:21+00:00\",\"dateModified\":\"2026-05-18T18:06:51+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/aws-izin-test-altyapisini-ci-cd-ile-otomatiklestirme\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/aws-izin-test-altyapisini-ci-cd-ile-otomatiklestirme\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/aws-izin-test-altyapisini-ci-cd-ile-otomatiklestirme\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"AWS \u0130zin Test Altyap\u0131s\u0131n\u0131 CI\/CD ile Otomatikle\u015ftirme\"}]},{\"@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 \u0130zin Test Altyap\u0131s\u0131n\u0131 CI\/CD ile Otomatikle\u015ftirme - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","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-izin-test-altyapisini-ci-cd-ile-otomatiklestirme\/","og_locale":"tr_TR","og_type":"article","og_title":"AWS \u0130zin Test Altyap\u0131s\u0131n\u0131 CI\/CD ile Otomatikle\u015ftirme","og_description":"Amazon Web Services (AWS) \u00fczerinde geli\u015ftirdi\u011finiz uygulamalar\u0131n g\u00fcvenli\u011fini sa\u011flamak, en az i\u015flevselli\u011fi kadar \u00f6nemlidir.","og_url":"https:\/\/fatihsoysal.com\/blog\/aws-izin-test-altyapisini-ci-cd-ile-otomatiklestirme\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2026-05-18T18:06:21+00:00","article_modified_time":"2026-05-18T18:06:51+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"19 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/aws-izin-test-altyapisini-ci-cd-ile-otomatiklestirme\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/aws-izin-test-altyapisini-ci-cd-ile-otomatiklestirme\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"AWS \u0130zin Test Altyap\u0131s\u0131n\u0131 CI\/CD ile Otomatikle\u015ftirme","datePublished":"2026-05-18T18:06:21+00:00","dateModified":"2026-05-18T18:06:51+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/aws-izin-test-altyapisini-ci-cd-ile-otomatiklestirme\/"},"wordCount":3788,"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-izin-test-altyapisini-ci-cd-ile-otomatiklestirme\/#respond"]}],"copyrightYear":"2026","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/aws-izin-test-altyapisini-ci-cd-ile-otomatiklestirme\/","url":"https:\/\/fatihsoysal.com\/blog\/aws-izin-test-altyapisini-ci-cd-ile-otomatiklestirme\/","name":"AWS \u0130zin Test Altyap\u0131s\u0131n\u0131 CI\/CD ile Otomatikle\u015ftirme - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2026-05-18T18:06:21+00:00","dateModified":"2026-05-18T18:06:51+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/aws-izin-test-altyapisini-ci-cd-ile-otomatiklestirme\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/aws-izin-test-altyapisini-ci-cd-ile-otomatiklestirme\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/aws-izin-test-altyapisini-ci-cd-ile-otomatiklestirme\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"AWS \u0130zin Test Altyap\u0131s\u0131n\u0131 CI\/CD ile Otomatikle\u015ftirme"}]},{"@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\/41884","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=41884"}],"version-history":[{"count":1,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/41884\/revisions"}],"predecessor-version":[{"id":41885,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/41884\/revisions\/41885"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=41884"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=41884"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=41884"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}