{"id":36524,"date":"2025-12-19T10:00:38","date_gmt":"2025-12-19T07:00:38","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/aws-secrets-manager-ile-guvenli-sir-yonetimi-python-lambdada-kurulum-ve-kullanim-rehberi\/"},"modified":"2025-12-19T10:00:38","modified_gmt":"2025-12-19T07:00:38","slug":"aws-secrets-manager-ile-guvenli-sir-yonetimi-python-lambdada-kurulum-ve-kullanim-rehberi","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/aws-secrets-manager-ile-guvenli-sir-yonetimi-python-lambdada-kurulum-ve-kullanim-rehberi\/","title":{"rendered":"AWS Secrets Manager ile G\u00fcvenli S\u0131r Y\u00f6netimi: Python Lambda&#8217;da Kurulum ve Kullan\u0131m Rehberi"},"content":{"rendered":"<h2>AWS Secrets Manager ile G\u00fcvenli S\u0131r Y\u00f6netimi: Python Lambda&#8217;da Kurulum ve Kullan\u0131m Rehberi<\/h2>\n<p>G\u00fcn\u00fcm\u00fcz\u00fcn bulut tabanl\u0131 uygulamalar\u0131nda g\u00fcvenlik, her zamankinden daha kritik bir \u00f6neme sahiptir. Uygulamalar\u0131m\u0131z\u0131n veritaban\u0131 kimlik bilgileri, API anahtarlar\u0131 veya di\u011fer hassas verileri do\u011frudan kod i\u00e7ine g\u00f6mmek (hardcoding) ciddi g\u00fcvenlik riskleri ta\u015f\u0131r. Bu yakla\u015f\u0131m, g\u00fcvenlik ihlallerine davetiye \u00e7\u0131kar\u0131r ve y\u00f6netimi zorla\u015ft\u0131r\u0131r. AWS Secrets Manager, bu soruna g\u00fc\u00e7l\u00fc ve merkezi bir \u00e7\u00f6z\u00fcm sunarak, hassas bilgilerinizi g\u00fcvenli bir \u015fekilde depolaman\u0131za, y\u00f6netmenize ve otomatik olarak d\u00f6nd\u00fcrmenize olanak tan\u0131r. \u00d6zellikle sunucusuz (serverless) mimarilerde, \u00f6rne\u011fin Python ile yaz\u0131lm\u0131\u015f AWS Lambda fonksiyonlar\u0131nda, s\u0131rlar\u0131n g\u00fcvenli bir \u015fekilde \u00e7ekilmesi ve kullan\u0131lmas\u0131 b\u00fcy\u00fck \u00f6nem ta\u015f\u0131r. Bu makale, AWS Secrets Manager&#8217;\u0131 nas\u0131l kuraca\u011f\u0131n\u0131z\u0131 ve Python Lambda fonksiyonlar\u0131n\u0131zda s\u0131rlar\u0131 nas\u0131l g\u00fcvenle \u00e7ekece\u011finizi ad\u0131m ad\u0131m a\u00e7\u0131klayacakt\u0131r.<\/p>\n<h3>1. Giri\u015f: Neden S\u0131r Y\u00f6netimi \u00d6nemli?<\/h3>\n<p>Modern yaz\u0131l\u0131m geli\u015ftirme s\u00fcre\u00e7lerinde, uygulamalar\u0131n \u00e7e\u015fitli hizmetlere eri\u015fmek i\u00e7in kimlik bilgilerine, API anahtarlar\u0131na ve di\u011fer hassas verilere ihtiyac\u0131 vard\u0131r. Bu s\u0131rlar\u0131n y\u00f6netimi, g\u00fcvenlik duru\u015funuzu do\u011frudan etkiler. Yanl\u0131\u015f y\u00f6netim, veri ihlallerine, yetkisiz eri\u015fime ve ciddi finansal ve itibar kayb\u0131na yol a\u00e7abilir.<\/p>\n<h4>1.1. Geleneksel Y\u00f6ntemlerin Riskleri<\/h4>\n<p>Geleneksel olarak, geli\u015ftiriciler s\u0131rlar\u0131 genellikle kod i\u00e7ine, yap\u0131land\u0131rma dosyalar\u0131na veya ortam de\u011fi\u015fkenlerine yerle\u015ftirme e\u011filimindedir. Bu y\u00f6ntemlerin her biri kendi i\u00e7inde \u00f6nemli riskler bar\u0131nd\u0131r\u0131r:<\/p>\n<ul>\n<li><b>Kod \u0130\u00e7ine G\u00f6mme (Hardcoding):<\/b> En tehlikeli y\u00f6ntemdir. Kodun kaynak kontrol sistemine (Git gibi) y\u00fcklenmesiyle s\u0131rlar a\u00e7\u0131\u011fa \u00e7\u0131kabilir.<\/li>\n<li><b>Yap\u0131land\u0131rma Dosyalar\u0131:<\/b> <code>.env<\/code> veya <code>config.json<\/code> gibi dosyalar, sunucularda veya da\u011f\u0131t\u0131m paketlerinde yanl\u0131\u015fl\u0131kla eri\u015filebilir hale gelebilir.<\/li>\n<li><b>Ortam De\u011fi\u015fkenleri:<\/b> Daha iyi bir y\u00f6ntem olsa da, yine de sunucuya eri\u015fimi olan herkes taraf\u0131ndan g\u00f6r\u00fclebilir ve baz\u0131 durumlarda loglara d\u00fc\u015febilir.<\/li>\n<\/ul>\n<h4>1.2. G\u00fcvenlik \u0130hlallerinin Maliyeti<\/h4>\n<p>Bir g\u00fcvenlik ihlali, sadece teknik bir sorun olman\u0131n \u00f6tesinde, \u015firketler i\u00e7in y\u0131k\u0131c\u0131 sonu\u00e7lar do\u011furabilir. M\u00fc\u015fteri verilerinin \u00e7al\u0131nmas\u0131, reg\u00fclasyonlara uyumsuzluktan kaynaklanan cezalar, marka itibar\u0131n\u0131n zedelenmesi ve i\u015f s\u00fcreklili\u011finin kesintiye u\u011framas\u0131 gibi maliyetler, s\u0131r y\u00f6netiminin ne kadar kritik oldu\u011funu g\u00f6stermektedir.<\/p>\n<h4>1.3. AWS Secrets Manager Ne Sunuyor?<\/h4>\n<p>AWS Secrets Manager, hassas bilgilerinizi merkezi bir konumda g\u00fcvenle depolaman\u0131za, eri\u015fimini kontrol etmenize ve otomatik olarak d\u00f6nd\u00fcrmenize olanak tan\u0131yan bir hizmettir. Bu sayede, geli\u015ftiricilerin s\u0131rlar\u0131 do\u011frudan kodlar\u0131na g\u00f6mmesine gerek kalmaz ve g\u00fcvenlik duru\u015funuz \u00f6nemli \u00f6l\u00e7\u00fcde g\u00fc\u00e7lenir.<\/p>\n<h3>2. AWS Secrets Manager Nedir?<\/h3>\n<p>AWS Secrets Manager, uygulamalar\u0131n\u0131z, hizmetleriniz ve BT kaynaklar\u0131n\u0131z i\u00e7in s\u0131rlar\u0131 (kimlik bilgileri, API anahtarlar\u0131, g\u00fcvenlik sertifikalar\u0131 vb.) kolayca d\u00f6nd\u00fcrmenizi, y\u00f6netmenizi ve denetlemenizi sa\u011flayan bir hizmettir. S\u0131rlar\u0131n\u0131z\u0131 korumak i\u00e7in AWS Key Management Service (KMS) kullan\u0131r.<\/p>\n<h4>2.1. Temel \u00d6zellikleri ve Avantajlar\u0131<\/h4>\n<ul>\n<li><b>Otomatik S\u0131r D\u00f6ng\u00fcs\u00fc (Rotation):<\/b> Veritaban\u0131 kimlik bilgileri gibi s\u0131rlar\u0131 belirli aral\u0131klarla otomatik olarak de\u011fi\u015ftirebilir. Bu, g\u00fcvenlik ihlali riskini azalt\u0131r.<\/li>\n<li><b>Merkezi Y\u00f6netim:<\/b> T\u00fcm s\u0131rlar\u0131n\u0131z\u0131 tek bir yerden y\u00f6netmenizi sa\u011flar.<\/li>\n<li><b>Detayl\u0131 Eri\u015fim Kontrol\u00fc:<\/b> AWS Identity and Access Management (IAM) ile entegre olarak, kimin hangi s\u0131rra eri\u015febilece\u011fini detayl\u0131 bir \u015fekilde kontrol edebilirsiniz.<\/li>\n<li><b>Denetlenebilirlik:<\/b> AWS CloudTrail ile s\u0131r eri\u015fimini ve de\u011fi\u015fikliklerini izleyebilirsiniz.<\/li>\n<li><b>Kolay Entegrasyon:<\/b> AWS SDK&#8217;lar\u0131 arac\u0131l\u0131\u011f\u0131yla uygulamalar\u0131n\u0131za kolayca entegre edilebilir.<\/li>\n<li><b>\u015eifreleme:<\/b> S\u0131rlar, depolan\u0131rken ve aktar\u0131l\u0131rken KMS taraf\u0131ndan \u015fifrelenir.<\/li>\n<\/ul>\n<h4>2.2. Di\u011fer AWS Hizmetleriyle Entegrasyon<\/h4>\n<p>Secrets Manager, AWS ekosistemi i\u00e7inde bir\u00e7ok hizmetle sorunsuz bir \u015fekilde entegre olur:<\/p>\n<ul>\n<li><b>AWS Lambda:<\/b> S\u0131r d\u00f6nd\u00fcrme fonksiyonlar\u0131n\u0131 \u00e7al\u0131\u015ft\u0131r\u0131r ve Lambda uygulamalar\u0131n\u0131n s\u0131rlar\u0131 \u00e7ekmesini sa\u011flar.<\/li>\n<li><b>AWS IAM:<\/b> S\u0131rlara eri\u015fim izinlerini y\u00f6netir.<\/li>\n<li><b>AWS KMS:<\/b> S\u0131rlar\u0131 \u015fifrelemek i\u00e7in kullan\u0131l\u0131r.<\/li>\n<li><b>AWS CloudTrail:<\/b> S\u0131r eri\u015fimini ve y\u00f6netimini denetler.<\/li>\n<li><b>Amazon RDS:<\/b> Veritaban\u0131 kimlik bilgilerini otomatik olarak d\u00f6nd\u00fcrmek i\u00e7in entegre edilebilir.<\/li>\n<\/ul>\n<h4>2.3. Fiyatland\u0131rma Modeli<\/h4>\n<p>AWS Secrets Manager&#8217;\u0131n fiyatland\u0131rmas\u0131, depolad\u0131\u011f\u0131n\u0131z s\u0131r say\u0131s\u0131na ve s\u0131rlar\u0131n\u0131z\u0131 ka\u00e7 kez \u00e7ekti\u011finize (API \u00e7a\u011fr\u0131s\u0131) g\u00f6re belirlenir. Genellikle k\u00fc\u00e7\u00fck ve orta \u00f6l\u00e7ekli kullan\u0131mlar i\u00e7in olduk\u00e7a uygun maliyetlidir. Detayl\u0131 bilgi i\u00e7in AWS&#8217;nin resmi fiyatland\u0131rma sayfas\u0131n\u0131 kontrol etmek en do\u011frusudur.<\/p>\n<h3>3. AWS Secrets Manager&#8217;da S\u0131r Olu\u015fturma<\/h3>\n<p>Bir s\u0131r olu\u015fturmak, Secrets Manager&#8217;\u0131n temel i\u015flevlerinden biridir. Bu b\u00f6l\u00fcmde, AWS Konsolu \u00fczerinden bir s\u0131rr\u0131 nas\u0131l olu\u015fturaca\u011f\u0131n\u0131z\u0131 ad\u0131m ad\u0131m g\u00f6rece\u011fiz.<\/p>\n<h4>3.1. Konsol \u00dczerinden S\u0131r Olu\u015fturma Ad\u0131mlar\u0131<\/h4>\n<ol>\n<li>AWS Y\u00f6netim Konsolu&#8217;na giri\u015f yap\u0131n.<\/li>\n<li>Arama \u00e7ubu\u011funa &#8220;Secrets Manager&#8221; yaz\u0131n ve hizmeti se\u00e7in.<\/li>\n<li>Sol men\u00fcden &#8220;Secrets&#8221; se\u00e7ene\u011fine t\u0131klay\u0131n ve ard\u0131ndan &#8220;Store a new secret&#8221; butonuna bas\u0131n.<\/li>\n<li><b>S\u0131r T\u00fcr\u00fc Se\u00e7imi:<\/b>\n<ul>\n<li><b>Credential type:<\/b> Genellikle veritaban\u0131 kimlik bilgileri (RDS, Redshift, DocumentDB) i\u00e7in \u00f6nceden tan\u0131mlanm\u0131\u015f \u015fablonlar\u0131 kullanabilirsiniz.<\/li>\n<li><b>Other type of secret:<\/b> API anahtarlar\u0131, \u00f6zel yap\u0131land\u0131rma JSON&#8217;lar\u0131 veya di\u011fer metin tabanl\u0131 s\u0131rlar i\u00e7in bu se\u00e7ene\u011fi kullan\u0131n. Bu \u00f6rnekte bunu se\u00e7ece\u011fiz.<\/li>\n<\/ul>\n<\/li>\n<li><b>S\u0131r De\u011ferini Yap\u0131land\u0131rma:<\/b>\n<ul>\n<li>&#8220;Other type of secret&#8221; se\u00e7ene\u011fini se\u00e7tiyseniz, &#8220;Plaintext&#8221; veya &#8220;Key\/value pairs&#8221; se\u00e7eneklerinden birini se\u00e7in. Genellikle &#8220;Key\/value pairs&#8221; veya JSON format\u0131 tercih edilir. \u00d6rne\u011fin:\n<pre><code class=\"language-json\">{\n    \"api_key\": \"YOUR_SUPER_SECRET_API_KEY\",\n    \"database_user\": \"admin\",\n    \"database_password\": \"YOUR_DB_PASSWORD\"\n}<\/pre>\n<p><\/code>\n            <\/li>\n<\/ul>\n<\/li>\n<li><b>\u015eifreleme Anahtar\u0131 Se\u00e7imi:<\/b> S\u0131rr\u0131n\u0131z\u0131 \u015fifrelemek i\u00e7in bir KMS anahtar\u0131 se\u00e7in. Varsay\u0131lan <code>aws\/secretsmanager<\/code> anahtar\u0131n\u0131 kullanabilir veya kendi \u00f6zel KMS anahtar\u0131n\u0131z\u0131 belirleyebilirsiniz.<\/li>\n<li><b>S\u0131r Ad\u0131 ve A\u00e7\u0131klama:<\/b> S\u0131rr\u0131n\u0131za benzersiz bir ad verin (\u00f6rne\u011fin: <code>my-application\/prod\/api-keys<\/code>). Bu ad, Lambda fonksiyonunuzda s\u0131rr\u0131 \u00e7ekmek i\u00e7in kullan\u0131lacakt\u0131r. \u0130ste\u011fe ba\u011fl\u0131 olarak bir a\u00e7\u0131klama ekleyin.<\/li>\n<li><b>Otomatik D\u00f6ng\u00fc Yap\u0131land\u0131rmas\u0131 (\u0130ste\u011fe Ba\u011fl\u0131):<\/b> E\u011fer veritaban\u0131 kimlik bilgileri gibi bir s\u0131r olu\u015fturuyorsan\u0131z, otomatik d\u00f6ng\u00fcy\u00fc etkinle\u015ftirebilirsiniz. Bu, belirli aral\u0131klarla s\u0131rr\u0131n otomatik olarak de\u011fi\u015ftirilmesini sa\u011flar. Bir Lambda fonksiyonu arac\u0131l\u0131\u011f\u0131yla bu d\u00f6ng\u00fc y\u00f6netilir.<\/li>\n<li><b>G\u00f6zden Ge\u00e7ir ve Kaydet:<\/b> Ayarlar\u0131n\u0131z\u0131 kontrol edin ve s\u0131rr\u0131n\u0131z\u0131 kaydedin.<\/li>\n<\/ol>\n<h4>3.2. S\u0131r T\u00fcrleri<\/h4>\n<p>Secrets Manager, \u00e7e\u015fitli s\u0131r t\u00fcrlerini destekler:<\/p>\n<ul>\n<li><b>Veritaban\u0131 Kimlik Bilgileri:<\/b> Amazon RDS, Amazon Redshift, Amazon DocumentDB gibi hizmetler i\u00e7in kullan\u0131c\u0131 ad\u0131 ve parola.<\/li>\n<li><b>API Anahtarlar\u0131:<\/b> \u00dc\u00e7\u00fcnc\u00fc taraf hizmetlere eri\u015fim i\u00e7in kullan\u0131lan anahtarlar.<\/li>\n<li><b>OAuth Belirte\u00e7leri:<\/b> Kimlik do\u011frulama ve yetkilendirme i\u00e7in kullan\u0131lan belirte\u00e7ler.<\/li>\n<li><b>\u00d6zel Metin veya JSON:<\/b> Herhangi bir yap\u0131land\u0131r\u0131lm\u0131\u015f veya yap\u0131land\u0131r\u0131lmam\u0131\u015f hassas veri.<\/li>\n<\/ul>\n<h4>3.3. Otomatik S\u0131r D\u00f6ng\u00fcs\u00fc (Rotation) Yap\u0131land\u0131rmas\u0131<\/h4>\n<p>S\u0131r d\u00f6ng\u00fcs\u00fc, g\u00fcvenlik a\u00e7\u0131s\u0131ndan kritik bir \u00f6zelliktir. Belirli aral\u0131klarla (\u00f6rne\u011fin 30 g\u00fcnde bir) s\u0131rlar\u0131n otomatik olarak de\u011fi\u015ftirilmesini sa\u011flar. Bu i\u015flem, genellikle bir Lambda fonksiyonu taraf\u0131ndan y\u00fcr\u00fct\u00fcl\u00fcr. Secrets Manager, pop\u00fcler veritabanlar\u0131 i\u00e7in haz\u0131r d\u00f6ng\u00fc \u015fablonlar\u0131 sunar. \u00d6zel s\u0131rlar i\u00e7in kendi d\u00f6ng\u00fc Lambda fonksiyonunuzu yazman\u0131z gerekebilir.<\/p>\n<h3>4. AWS Lambda ve IAM Rolleri ile G\u00fcvenli Eri\u015fim<\/h3>\n<p>Bir Lambda fonksiyonunun Secrets Manager'daki bir s\u0131rra eri\u015febilmesi i\u00e7in uygun izinlere sahip olmas\u0131 gerekir. Bu izinler, Lambda fonksiyonuna atanm\u0131\u015f bir IAM rol\u00fc arac\u0131l\u0131\u011f\u0131yla sa\u011flan\u0131r.<\/p>\n<h4>4.1. Lambda Y\u00fcr\u00fctme Rol\u00fc (Execution Role) Nedir?<\/h4>\n<p>Her AWS Lambda fonksiyonu, belirli AWS hizmetlerine eri\u015fmek i\u00e7in bir IAM rol\u00fc \u00fcstlenir. Bu role \"y\u00fcr\u00fctme rol\u00fc\" (execution role) denir. Bu rol, Lambda fonksiyonunuzun hangi AWS API \u00e7a\u011fr\u0131lar\u0131n\u0131 yapabilece\u011fini belirleyen izinleri i\u00e7erir.<\/p>\n<h4>4.2. Gerekli IAM \u0130zinlerini Tan\u0131mlama<\/h4>\n<p>Lambda fonksiyonunuzun Secrets Manager'daki s\u0131rlar\u0131 \u00e7ekebilmesi i\u00e7in, y\u00fcr\u00fctme rol\u00fcne <code>secretsmanager:GetSecretValue<\/code> iznini eklemeniz gerekir. En iyi uygulama, \"en az ayr\u0131cal\u0131k\" (least privilege) ilkesini takip ederek sadece belirli s\u0131rra veya s\u0131r grubuna eri\u015fim izni vermektir.<\/p>\n<pre><code class=\"language-json\">{\n    \"Version\": \"2012-10-17\",\n    \"Statement\": [\n        {\n            \"Effect\": \"Allow\",\n            \"Action\": [\n                \"secretsmanager:GetSecretValue\"\n            ],\n            \"Resource\": \"arn:aws:secretsmanager:REGION:ACCOUNT_ID:secret:my-application\/prod\/api-keys-XXXXXX\"\n        },\n        {\n            \"Effect\": \"Allow\",\n            \"Action\": [\n                \"kms:Decrypt\"\n            ],\n            \"Resource\": \"arn:aws:kms:REGION:ACCOUNT_ID:key\/YOUR_KMS_KEY_ID\"\n        }\n    ]\n}<\/pre>\n<p><\/code><br \/>\nYukar\u0131daki \u00f6rnekte:<\/p>\n<ul>\n<li><code>REGION<\/code>: Lambda fonksiyonunuzun ve s\u0131rr\u0131n\u0131z\u0131n bulundu\u011fu AWS b\u00f6lgesi (\u00f6rn: <code>eu-central-1<\/code>).<\/li>\n<li><code>ACCOUNT_ID<\/code>: Kendi AWS hesap kimli\u011finiz.<\/li>\n<li><code>my-application\/prod\/api-keys-XXXXXX<\/code>: S\u0131rr\u0131n\u0131z\u0131n tam ARN'si veya bir joker karakter (<code>*<\/code>) kullanarak belirli bir \u00f6neke sahip t\u00fcm s\u0131rlar\u0131 kapsayabilirsiniz (\u00f6rn: <code>arn:aws:secretsmanager:REGION:ACCOUNT_ID:secret:my-application\/prod\/*<\/code>).<\/li>\n<li><code>YOUR_KMS_KEY_ID<\/code>: S\u0131rr\u0131n\u0131z\u0131 \u015fifrelemek i\u00e7in kullan\u0131lan KMS anahtar\u0131n\u0131n ARN'si. E\u011fer varsay\u0131lan <code>aws\/secretsmanager<\/code> anahtar\u0131n\u0131 kullan\u0131yorsan\u0131z, bu izne genellikle gerek kalmaz \u00e7\u00fcnk\u00fc AWS taraf\u0131ndan y\u00f6netilir. Ancak \u00f6zel bir KMS anahtar\u0131 kullan\u0131yorsan\u0131z, bu izni eklemelisiniz.<\/li>\n<\/ul>\n<h4>4.3. En Az Ayr\u0131cal\u0131k Prensibi (Least Privilege)<\/h4>\n<p>G\u00fcvenlikte alt\u0131n kural, bir varl\u0131\u011fa (bu durumda Lambda fonksiyonuna) sadece i\u015fini yapmak i\u00e7in kesinlikle gerekli olan minimum izinleri vermektir. Genel <code>secretsmanager:*<\/code> izni yerine, yaln\u0131zca <code>secretsmanager:GetSecretValue<\/code> iznini ve belirli bir s\u0131r ARN'sini hedefleyerek bu prensibi uygulayabilirsiniz.<\/p>\n<h3>5. Python Lambda'da S\u0131rlar\u0131 \u00c7ekme<\/h3>\n<p>Lambda fonksiyonunuzun IAM rol\u00fc do\u011fru bir \u015fekilde yap\u0131land\u0131r\u0131ld\u0131ktan sonra, Python kodunuzda <code>boto3<\/code> k\u00fct\u00fcphanesini kullanarak s\u0131rlar\u0131 \u00e7ekebilirsiniz.<\/p>\n<h4>5.1. Boto3 K\u00fct\u00fcphanesi Kullan\u0131m\u0131<\/h4>\n<p><code>boto3<\/code>, AWS SDK's\u0131n\u0131n Python s\u00fcr\u00fcm\u00fcd\u00fcr ve AWS hizmetleriyle etkile\u015fim kurman\u0131z\u0131 sa\u011flar. Lambda ortam\u0131nda <code>boto3<\/code> varsay\u0131lan olarak bulunur, bu y\u00fczden ek bir ba\u011f\u0131ml\u0131l\u0131k y\u00fcklemenize gerek yoktur.<\/p>\n<h4>5.2. S\u0131r \u00c7ekme Fonksiyonunun Geli\u015ftirilmesi (Kod \u00d6rne\u011fi)<\/h4>\n<p>A\u015fa\u011f\u0131da, bir Secrets Manager s\u0131rr\u0131n\u0131 \u00e7ekmek i\u00e7in kullanabilece\u011finiz \u00f6rnek bir Python Lambda fonksiyonu bulunmaktad\u0131r:<\/p>\n<pre><code class=\"language-python\">import json\nimport boto3\nfrom botocore.exceptions import ClientError\n\n# Secrets Manager istemcisini ba\u015flat\nsecrets_manager_client = boto3.client('secretsmanager')\n\ndef get_secret(secret_name):\n    \"\"\"\n    AWS Secrets Manager'dan bir s\u0131rr\u0131 \u00e7eker.\n    \"\"\"\n    try:\n        get_secret_value_response = secrets_manager_client.get_secret_value(\n            SecretId=secret_name\n        )\n    except ClientError as e:\n        if e.response['Error']['Code'] == 'DecryptionFailureException':\n            # Secrets Manager, s\u0131rr\u0131 \u015fifreleyemez.\n            raise e\n        elif e.response['Error']['Code'] == 'InternalServiceErrorException':\n            # Bir i\u00e7 hizmet hatas\u0131 olu\u015ftu.\n            raise e\n        elif e.response['Error']['Code'] == 'InvalidParameterException':\n            # \u0130stekte ge\u00e7ersiz bir parametre vard\u0131.\n            raise e\n        elif e.response['Error']['Code'] == 'InvalidRequestException':\n            # \u0130stek ge\u00e7erli de\u011fildi.\n            raise e\n        elif e.response['Error']['Code'] == 'ResourceNotFoundException':\n            # S\u0131r bulunamad\u0131.\n            raise e\n        else:\n            raise e\n    else:\n        # S\u0131r ya bir string ya da binary olabilir.\n        # Bu \u00f6rnekte string oldu\u011funu varsay\u0131yoruz.\n        if 'SecretString' in get_secret_value_response:\n            secret = get_secret_value_response['SecretString']\n            return json.loads(secret) # JSON ise parse et\n        else:\n            # Binary s\u0131rlar\u0131 i\u015flemek i\u00e7in farkl\u0131 bir yakla\u015f\u0131m gerekebilir.\n            # \u00d6rne\u011fin, base64 decode etmek gibi.\n            # Bu \u00f6rnekte sadece string s\u0131rlar\u0131 ele al\u0131yoruz.\n            raise ValueError(\"Secret is not a string, or 'SecretString' key is missing.\")\n\ndef lambda_handler(event, context):\n    secret_name = \"my-application\/prod\/api-keys\" # Olu\u015fturdu\u011funuz s\u0131rr\u0131n ad\u0131\n\n    try:\n        # S\u0131rr\u0131 \u00e7ek\n        secrets = get_secret(secret_name)\n        \n        # \u00c7ekilen s\u0131rlar\u0131 kullan\n        api_key = secrets.get(\"api_key\")\n        db_user = secrets.get(\"database_user\")\n        db_password = secrets.get(\"database_password\")\n\n        print(f\"API Key: {api_key[:5]}...\") # G\u00fcvenlik i\u00e7in tamam\u0131n\u0131 loglama\n        print(f\"DB User: {db_user}\")\n        # print(f\"DB Password: {db_password}\") # Asla hassas verileri loglama!\n\n        # Fonksiyonun ana i\u015f mant\u0131\u011f\u0131n\u0131 burada ger\u00e7ekle\u015ftirin\n        # \u00d6rne\u011fin, bir veritaban\u0131 ba\u011flant\u0131s\u0131 kurma veya bir API \u00e7a\u011fr\u0131s\u0131 yapma\n\n        return {\n            'statusCode': 200,\n            'body': json.dumps('Secrets successfully fetched and used!')\n        }\n    except Exception as e:\n        print(f\"Error fetching or using secrets: {e}\")\n        return {\n            'statusCode': 500,\n            'body': json.dumps(f'Error: {str(e)}')\n        }\n<\/pre>\n<p><\/code><\/p>\n<h4>5.3. Hata Y\u00f6netimi ve Yeniden Denemeler<\/h4>\n<p>Yukar\u0131daki kod \u00f6rne\u011finde, <code>ClientError<\/code> yakalama blo\u011fu, Secrets Manager API \u00e7a\u011fr\u0131s\u0131 s\u0131ras\u0131nda olu\u015fabilecek yayg\u0131n hatalar\u0131 (\u00f6rne\u011fin s\u0131r bulunamamas\u0131, yetkilendirme hatas\u0131) ele al\u0131r. \u00dcretim ortamlar\u0131nda, ge\u00e7ici a\u011f sorunlar\u0131 veya API k\u0131s\u0131tlamalar\u0131 nedeniyle olu\u015fabilecek hatalar i\u00e7in yeniden deneme (retry) mekanizmalar\u0131 uygulamak \u00f6nemlidir. <code>boto3<\/code> varsay\u0131lan olarak baz\u0131 yeniden deneme mant\u0131klar\u0131na sahiptir, ancak daha karma\u015f\u0131k senaryolar i\u00e7in \u00f6zel yeniden deneme stratejileri uygulayabilirsiniz.<\/p>\n<h3>6. En \u0130yi Uygulamalar ve G\u00fcvenlik \u0130pu\u00e7lar\u0131<\/h3>\n<p>Secrets Manager'\u0131 kullan\u0131rken g\u00fcvenli\u011fi en \u00fcst d\u00fczeyde tutmak i\u00e7in baz\u0131 en iyi uygulamalar\u0131 takip etmek \u00f6nemlidir.<\/p>\n<h4>6.1. S\u0131r D\u00f6ng\u00fcs\u00fcn\u00fc Otomatikle\u015ftirmek<\/h4>\n<p>S\u0131rlar\u0131n\u0131z\u0131 d\u00fczenli olarak d\u00f6nd\u00fcrmek, bir s\u0131rr\u0131n ele ge\u00e7irilmesi durumunda bile potansiyel zarar\u0131 s\u0131n\u0131rlar. \u00d6zellikle veritaban\u0131 kimlik bilgileri i\u00e7in otomatik d\u00f6ng\u00fcy\u00fc etkinle\u015ftirin. Bu, manuel m\u00fcdahaleye gerek kalmadan g\u00fcvenlik duru\u015funuzu s\u00fcrekli olarak g\u00fc\u00e7lendirir.<\/p>\n<h4>6.2. CloudTrail ile Denetim ve \u0130zleme<\/h4>\n<p>AWS CloudTrail, AWS hesab\u0131n\u0131zdaki API \u00e7a\u011fr\u0131lar\u0131n\u0131 ve ilgili olaylar\u0131 kaydeder. Secrets Manager ile ilgili t\u00fcm <code>GetSecretValue<\/code>, <code>CreateSecret<\/code>, <code>UpdateSecret<\/code> gibi API \u00e7a\u011fr\u0131lar\u0131n\u0131 CloudTrail \u00fczerinden izleyerek, kimin hangi s\u0131rra ne zaman eri\u015fti\u011fini veya de\u011fi\u015ftirdi\u011fini denetleyebilirsiniz. Anormal eri\u015fim desenlerini tespit etmek i\u00e7in CloudWatch alarmlar\u0131 kurun.<\/p>\n<h4>6.3. Ortam De\u011fi\u015fkenleri ve S\u0131r Y\u00f6neticisi Aras\u0131ndaki Fark<\/h4>\n<p>Ortam de\u011fi\u015fkenleri, genellikle yap\u0131land\u0131rma ayarlar\u0131 (\u00f6rn: <code>REGION<\/code>, <code>ENVIRONMENT<\/code>) i\u00e7in uygun olsa da, hassas veriler i\u00e7in kullan\u0131lmamal\u0131d\u0131r. Ortam de\u011fi\u015fkenleri, Lambda konsolunda veya CLI arac\u0131l\u0131\u011f\u0131yla g\u00f6r\u00fclebilir ve potansiyel olarak loglara d\u00fc\u015febilir. Secrets Manager, s\u0131rlar\u0131 \u015fifreleyerek ve eri\u015fimi s\u0131k\u0131 IAM politikalar\u0131yla kontrol ederek \u00e7ok daha y\u00fcksek bir g\u00fcvenlik seviyesi sunar.<\/p>\n<h4>6.4. Geli\u015ftirme ve \u00dcretim Ortamlar\u0131 \u0130\u00e7in Farkl\u0131 S\u0131rlar<\/h4>\n<p>Farkl\u0131 ortamlar (geli\u015ftirme, test, \u00fcretim) i\u00e7in ayr\u0131 s\u0131rlar\u0131 kullan\u0131n. Bu, bir geli\u015ftirme ortam\u0131ndaki g\u00fcvenlik ihlalinin \u00fcretim ortam\u0131n\u0131 etkilemesini \u00f6nler. S\u0131r adlar\u0131n\u0131za ortam bilgisini dahil etmek (\u00f6rn: <code>my-app\/dev\/db-credentials<\/code>, <code>my-app\/prod\/db-credentials<\/code>) iyi bir uygulamad\u0131r.<\/p>\n<h4>6.5. Lambda Fonksiyonunda S\u0131rlar\u0131 Cache'lemek<\/h4>\n<p>Lambda fonksiyonlar\u0131 genellikle \"so\u011fuk ba\u015flang\u0131\u00e7\" (cold start) ve \"s\u0131cak ba\u015flang\u0131\u00e7\" (warm start) durumlar\u0131na sahiptir. S\u0131rlar\u0131 her \u00e7a\u011fr\u0131da \u00e7ekmek yerine, fonksiyonun ya\u015fam d\u00f6ng\u00fcs\u00fc boyunca bir kez \u00e7ekip bellekte (\u00f6rne\u011fin global bir de\u011fi\u015fken i\u00e7inde) cache'lemek, performans maliyetini azaltabilir. Ancak, bu yakla\u015f\u0131m\u0131 uygularken s\u0131rlar\u0131n bellekte ne kadar s\u00fcre kalaca\u011f\u0131 ve belle\u011fin nas\u0131l temizlenece\u011fi konusunda dikkatli olunmal\u0131d\u0131r.<\/p>\n<h3>7. Sonu\u00e7<\/h3>\n<p>AWS Secrets Manager, bulut tabanl\u0131 uygulamalar\u0131n\u0131z\u0131n g\u00fcvenlik duru\u015funu g\u00fc\u00e7lendirmek i\u00e7in vazge\u00e7ilmez bir ara\u00e7t\u0131r. Hassas verilerinizi merkezi bir konumda g\u00fcvenle depolayarak, otomatik olarak d\u00f6nd\u00fcrerek ve detayl\u0131 eri\u015fim kontrol\u00fc sa\u011flayarak, g\u00fcvenlik risklerini \u00f6nemli \u00f6l\u00e7\u00fcde azalt\u0131r. Python Lambda fonksiyonlar\u0131n\u0131zda <code>boto3<\/code> k\u00fct\u00fcphanesi ve do\u011fru IAM izinleriyle Secrets Manager'\u0131 entegre etmek, temiz, g\u00fcvenli ve y\u00f6netilebilir bir kod taban\u0131 olu\u015fturman\u0131za yard\u0131mc\u0131 olur. Bu rehberdeki ad\u0131mlar\u0131 izleyerek, uygulamalar\u0131n\u0131z\u0131n s\u0131r y\u00f6netimini g\u00fcvenli ve etkin bir \u015fekilde sa\u011flayabilirsiniz.<\/p>\n<h3>SSS (S\u0131k Sorulan Sorular)<\/h3>\n<h4>S1: AWS Secrets Manager ne kadar g\u00fcvenli?<\/h4>\n<p>C1: AWS Secrets Manager, s\u0131rlar\u0131 depolarken ve aktar\u0131rken AWS Key Management Service (KMS) kullanarak \u015fifreler. Ayr\u0131ca, AWS IAM ile entegre detayl\u0131 eri\u015fim kontrol\u00fc, CloudTrail ile denetlenebilirlik ve otomatik s\u0131r d\u00f6nd\u00fcrme gibi \u00f6zelliklerle y\u00fcksek d\u00fczeyde g\u00fcvenlik sa\u011flar.<\/p>\n<h4>S2: S\u0131rlar\u0131 Lambda'ya do\u011frudan ortam de\u011fi\u015fkeni olarak ge\u00e7irebilir miyim?<\/h4>\n<p>C2: Hay\u0131r, hassas s\u0131rlar\u0131 do\u011frudan Lambda ortam de\u011fi\u015fkenleri olarak ge\u00e7irmek \u00f6nerilmez. Ortam de\u011fi\u015fkenleri \u015fifrelenmez ve Lambda konsolu \u00fczerinden g\u00f6r\u00fclebilir. Secrets Manager, bu t\u00fcr veriler i\u00e7in \u00e7ok daha g\u00fcvenli bir \u00e7\u00f6z\u00fcm sunar.<\/p>\n<h4>S3: Lambda fonksiyonu her \u00e7a\u011fr\u0131ld\u0131\u011f\u0131nda s\u0131rlar\u0131 yeniden mi \u00e7ekmeliyim?<\/h4>\n<p>C3: Hay\u0131r, performans optimizasyonu i\u00e7in s\u0131rlar\u0131 Lambda fonksiyonunuzun ba\u015flat\u0131ld\u0131\u011f\u0131 ilk anda \u00e7ekip global bir de\u011fi\u015fkende veya \u00f6nbellekte saklayabilirsiniz. Lambda fonksiyonu \"s\u0131cak\" kald\u0131\u011f\u0131 s\u00fcrece, s\u0131rlar\u0131 tekrar \u00e7ekmenize gerek kalmaz. Ancak, s\u0131rlar\u0131n ne kadar s\u00fcreyle \u00f6nbellekte kalaca\u011f\u0131 ve g\u00fcncel kal\u0131p kalmad\u0131\u011f\u0131 konusunda dikkatli olmal\u0131s\u0131n\u0131z.<\/p>\n<h4>S4: Secrets Manager'\u0131n maliyeti nedir?<\/h4>\n<p>C4: AWS Secrets Manager'\u0131n maliyeti, depolad\u0131\u011f\u0131n\u0131z s\u0131r say\u0131s\u0131na ve s\u0131rlar\u0131 ka\u00e7 kez \u00e7ekti\u011finize (API \u00e7a\u011fr\u0131s\u0131) g\u00f6re de\u011fi\u015fir. Genellikle, ilk birka\u00e7 s\u0131r ve belirli say\u0131da API \u00e7a\u011fr\u0131s\u0131 \u00fccretsiz katmanda yer alabilir. Detayl\u0131 ve g\u00fcncel fiyatland\u0131rma bilgileri i\u00e7in AWS'nin resmi Secrets Manager fiyatland\u0131rma sayfas\u0131n\u0131 kontrol etmeniz \u00f6nerilir.<\/p>\n<h4>S5: S\u0131rlar\u0131 nas\u0131l otomatik olarak d\u00f6nd\u00fcrebilirim?<\/h4>\n<p>C5: Secrets Manager, konsol \u00fczerinden s\u0131r olu\u015ftururken veya mevcut bir s\u0131rr\u0131 d\u00fczenlerken otomatik d\u00f6nd\u00fcrme \u00f6zelli\u011fini yap\u0131land\u0131rman\u0131za olanak tan\u0131r. \u00c7o\u011fu durumda, AWS taraf\u0131ndan sa\u011flanan haz\u0131r Lambda fonksiyonlar\u0131 arac\u0131l\u0131\u011f\u0131yla veritaban\u0131 kimlik bilgileri gibi s\u0131rlar\u0131 otomatik olarak d\u00f6nd\u00fcrebilirsiniz. \u00d6zel s\u0131rlar i\u00e7in kendi d\u00f6nd\u00fcrme Lambda fonksiyonunuzu yazman\u0131z gerekebilir.<\/p>\n","protected":false},"excerpt":{"rendered":"AWS Secrets Manager ile G\u00fcvenli S\u0131r Y\u00f6netimi: Python Lambda&#8217;da Kurulum ve Kullan\u0131m Rehberi\nG\u00fcn\u00fcm\u00fcz\u00fcn bulut tabanl\u0131 uygulamalar\u0131nda g\u00fcvenlik, her &#8230;","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-36524","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 Secrets Manager ile G\u00fcvenli S\u0131r Y\u00f6netimi: Python Lambda&#039;da Kurulum ve Kullan\u0131m Rehberi - 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-secrets-manager-ile-guvenli-sir-yonetimi-python-lambdada-kurulum-ve-kullanim-rehberi\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"AWS Secrets Manager ile G\u00fcvenli S\u0131r Y\u00f6netimi: Python Lambda&#039;da Kurulum ve Kullan\u0131m Rehberi\" \/>\n<meta property=\"og:description\" content=\"AWS Secrets Manager ile G\u00fcvenli S\u0131r Y\u00f6netimi: Python Lambda&#039;da Kurulum ve Kullan\u0131m Rehberi G\u00fcn\u00fcm\u00fcz\u00fcn bulut tabanl\u0131 uygulamalar\u0131nda g\u00fcvenlik, her ...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/aws-secrets-manager-ile-guvenli-sir-yonetimi-python-lambdada-kurulum-ve-kullanim-rehberi\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-12-19T07:00:38+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=\"15 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/aws-secrets-manager-ile-guvenli-sir-yonetimi-python-lambdada-kurulum-ve-kullanim-rehberi\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/aws-secrets-manager-ile-guvenli-sir-yonetimi-python-lambdada-kurulum-ve-kullanim-rehberi\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"AWS Secrets Manager ile G\u00fcvenli S\u0131r Y\u00f6netimi: Python Lambda&#8217;da Kurulum ve Kullan\u0131m Rehberi\",\"datePublished\":\"2025-12-19T07:00:38+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/aws-secrets-manager-ile-guvenli-sir-yonetimi-python-lambdada-kurulum-ve-kullanim-rehberi\/\"},\"wordCount\":2543,\"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-secrets-manager-ile-guvenli-sir-yonetimi-python-lambdada-kurulum-ve-kullanim-rehberi\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/aws-secrets-manager-ile-guvenli-sir-yonetimi-python-lambdada-kurulum-ve-kullanim-rehberi\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/aws-secrets-manager-ile-guvenli-sir-yonetimi-python-lambdada-kurulum-ve-kullanim-rehberi\/\",\"name\":\"AWS Secrets Manager ile G\u00fcvenli S\u0131r Y\u00f6netimi: Python Lambda'da Kurulum ve Kullan\u0131m Rehberi - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-12-19T07:00:38+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/aws-secrets-manager-ile-guvenli-sir-yonetimi-python-lambdada-kurulum-ve-kullanim-rehberi\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/aws-secrets-manager-ile-guvenli-sir-yonetimi-python-lambdada-kurulum-ve-kullanim-rehberi\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/aws-secrets-manager-ile-guvenli-sir-yonetimi-python-lambdada-kurulum-ve-kullanim-rehberi\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"AWS Secrets Manager ile G\u00fcvenli S\u0131r Y\u00f6netimi: Python Lambda&#8217;da Kurulum ve Kullan\u0131m Rehberi\"}]},{\"@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 Secrets Manager ile G\u00fcvenli S\u0131r Y\u00f6netimi: Python Lambda'da Kurulum ve Kullan\u0131m Rehberi - 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-secrets-manager-ile-guvenli-sir-yonetimi-python-lambdada-kurulum-ve-kullanim-rehberi\/","og_locale":"tr_TR","og_type":"article","og_title":"AWS Secrets Manager ile G\u00fcvenli S\u0131r Y\u00f6netimi: Python Lambda'da Kurulum ve Kullan\u0131m Rehberi","og_description":"AWS Secrets Manager ile G\u00fcvenli S\u0131r Y\u00f6netimi: Python Lambda'da Kurulum ve Kullan\u0131m Rehberi G\u00fcn\u00fcm\u00fcz\u00fcn bulut tabanl\u0131 uygulamalar\u0131nda g\u00fcvenlik, her ...","og_url":"https:\/\/fatihsoysal.com\/blog\/aws-secrets-manager-ile-guvenli-sir-yonetimi-python-lambdada-kurulum-ve-kullanim-rehberi\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-12-19T07:00:38+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"15 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/aws-secrets-manager-ile-guvenli-sir-yonetimi-python-lambdada-kurulum-ve-kullanim-rehberi\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/aws-secrets-manager-ile-guvenli-sir-yonetimi-python-lambdada-kurulum-ve-kullanim-rehberi\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"AWS Secrets Manager ile G\u00fcvenli S\u0131r Y\u00f6netimi: Python Lambda&#8217;da Kurulum ve Kullan\u0131m Rehberi","datePublished":"2025-12-19T07:00:38+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/aws-secrets-manager-ile-guvenli-sir-yonetimi-python-lambdada-kurulum-ve-kullanim-rehberi\/"},"wordCount":2543,"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-secrets-manager-ile-guvenli-sir-yonetimi-python-lambdada-kurulum-ve-kullanim-rehberi\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/aws-secrets-manager-ile-guvenli-sir-yonetimi-python-lambdada-kurulum-ve-kullanim-rehberi\/","url":"https:\/\/fatihsoysal.com\/blog\/aws-secrets-manager-ile-guvenli-sir-yonetimi-python-lambdada-kurulum-ve-kullanim-rehberi\/","name":"AWS Secrets Manager ile G\u00fcvenli S\u0131r Y\u00f6netimi: Python Lambda'da Kurulum ve Kullan\u0131m Rehberi - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-12-19T07:00:38+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/aws-secrets-manager-ile-guvenli-sir-yonetimi-python-lambdada-kurulum-ve-kullanim-rehberi\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/aws-secrets-manager-ile-guvenli-sir-yonetimi-python-lambdada-kurulum-ve-kullanim-rehberi\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/aws-secrets-manager-ile-guvenli-sir-yonetimi-python-lambdada-kurulum-ve-kullanim-rehberi\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"AWS Secrets Manager ile G\u00fcvenli S\u0131r Y\u00f6netimi: Python Lambda&#8217;da Kurulum ve Kullan\u0131m Rehberi"}]},{"@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\/36524","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=36524"}],"version-history":[{"count":0,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/36524\/revisions"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=36524"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=36524"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=36524"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}