{"id":38770,"date":"2026-02-07T11:30:36","date_gmt":"2026-02-07T08:30:36","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/zitadeli-kendi-sunucumuzda-barindirmayi-neden-biraktik-bir-gelistiricinin-saha-raporu\/"},"modified":"2026-02-07T11:30:36","modified_gmt":"2026-02-07T08:30:36","slug":"zitadeli-kendi-sunucumuzda-barindirmayi-neden-biraktik-bir-gelistiricinin-saha-raporu","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/zitadeli-kendi-sunucumuzda-barindirmayi-neden-biraktik-bir-gelistiricinin-saha-raporu\/","title":{"rendered":"ZITADEL&#8217;i Kendi Sunucumuzda Bar\u0131nd\u0131rmay\u0131 Neden B\u0131rakt\u0131k: Bir Geli\u015ftiricinin Saha Raporu"},"content":{"rendered":"<h2>ZITADEL&#8217;i Kendi Sunucumuzda Bar\u0131nd\u0131rmay\u0131 Neden B\u0131rakt\u0131k: Bir Geli\u015ftiricinin Saha Raporu<\/h2>\n<p>Modern uygulamalar\u0131n vazge\u00e7ilmezi olan kimlik ve eri\u015fim y\u00f6netimi (IAM) \u00e7\u00f6z\u00fcmleri, geli\u015ftiricilerin omuzlar\u0131ndaki y\u00fck\u00fc hafifletmeyi hedefler. ZITADEL, a\u00e7\u0131k kaynakl\u0131 ve bulut tabanl\u0131 bir IAM \u00e7\u00f6z\u00fcm\u00fc olarak \u00f6ne \u00e7\u0131karken, kendi sunucunuzda bar\u0131nd\u0131rma (self-hosting) se\u00e7ene\u011fiyle de dikkat \u00e7ekiyor. Ekibimiz, ZITADEL&#8217;i self-hosting y\u00f6ntemiyle \u00fcretim ortamlar\u0131m\u0131za entegre etme s\u00fcrecinde kar\u015f\u0131la\u015ft\u0131\u011f\u0131 zorluklar\u0131 ve bu karardan neden geri d\u00f6nd\u00fc\u011f\u00fcm\u00fcz\u00fc bu kapsaml\u0131 teknik makalede detayl\u0131ca ele alacakt\u0131r.<\/p>\n<h3>ZITADEL ile \u0130lk Tan\u0131\u015fma ve Tercih Nedenlerimiz<\/h3>\n<p>Projemizin ilk a\u015famalar\u0131nda, g\u00fcvenli ve esnek bir kimlik do\u011frulama ve yetkilendirme altyap\u0131s\u0131na ihtiyac\u0131m\u0131z vard\u0131. Piyasada bir\u00e7ok ticari ve a\u00e7\u0131k kaynakl\u0131 \u00e7\u00f6z\u00fcm bulunurken, ZITADEL&#8217;in modern mimarisi ve vaat etti\u011fi \u00f6zellikler dikkatimizi \u00e7ekti. \u00d6zellikle a\u00e7\u0131k kaynak olmas\u0131, kod taban\u0131na eri\u015fim ve potansiyel \u00f6zelle\u015ftirme imkanlar\u0131 sunmas\u0131, ba\u015flang\u0131\u00e7ta cazip geldi.<\/p>\n<h4>A\u00e7\u0131k Kaynak ve Modern Mimari Vaadi<\/h4>\n<p>ZITADEL, Go dilinde yaz\u0131lm\u0131\u015f olmas\u0131 ve gRPC, Protobuf gibi modern teknolojileri kullanmas\u0131yla \u00f6ne \u00e7\u0131k\u0131yordu. Bu durum, performans ve \u00f6l\u00e7eklenebilirlik a\u00e7\u0131s\u0131ndan olumlu sinyaller veriyordu. Ayr\u0131ca, bulut tabanl\u0131 bir hizmet olarak da sunulmas\u0131, geli\u015ftiricilerin modern uygulamalarla entegrasyonunu kolayla\u015ft\u0131racak bir yap\u0131ya sahip oldu\u011funu d\u00fc\u015f\u00fcnd\u00fcrd\u00fc.<\/p>\n<h4>\u00d6zellik Seti ve G\u00fcvenlik Beklentileri<\/h4>\n<p>\u00c7ok fakt\u00f6rl\u00fc kimlik do\u011frulama (MFA), sosyal giri\u015fler, kurumsal SSO (SAML\/OIDC), rol tabanl\u0131 eri\u015fim kontrol\u00fc (RBAC) gibi temel IAM \u00f6zelliklerini b\u00fcnyesinde bar\u0131nd\u0131rmas\u0131, ZITADEL&#8217;i kapsaml\u0131 bir \u00e7\u00f6z\u00fcm haline getiriyordu. G\u00fcvenlik, projemizin en kritik \u00f6nceliklerinden biri oldu\u011fu i\u00e7in, ZITADEL&#8217;in g\u00fcvenlik odakl\u0131 yakla\u015f\u0131m\u0131 ve d\u00fczenli g\u00fcncellemeleri, ilk ba\u015fta bize g\u00fcven verdi.<\/p>\n<h4>Neden Self-Hosting&#8217;i Se\u00e7tik?<\/h4>\n<p>Bulut tabanl\u0131 IAM \u00e7\u00f6z\u00fcmlerinin sundu\u011fu kolayl\u0131\u011fa ra\u011fmen, baz\u0131 projeler i\u00e7in self-hosting vazge\u00e7ilmez olabilir. Bizim durumumuzda, veri egemenli\u011fi, maliyet kontrol\u00fc ve altyap\u0131 \u00fczerinde tam denetim arzusu self-hosting karar\u0131m\u0131zda etkili oldu. \u00d6zellikle hassas kullan\u0131c\u0131 verileriyle \u00e7al\u0131\u015ft\u0131\u011f\u0131m\u0131z i\u00e7in, verilerin kendi sunucular\u0131m\u0131zda kalmas\u0131 \u00f6ncelikli bir gereklilikti. Ayr\u0131ca, uzun vadede bulut servislerinin maliyetlerinin artabilece\u011fi endi\u015fesi de bu tercihimizi destekledi.<\/p>\n<h3>Karma\u015f\u0131k Kurulum ve Y\u00f6netim S\u00fcre\u00e7leri<\/h3>\n<p>Self-hosting karar\u0131m\u0131z\u0131n ard\u0131ndan, ZITADEL&#8217;i kendi altyap\u0131m\u0131za kurma ve y\u00f6netme s\u00fcre\u00e7lerinde beklenmedik zorluklarla kar\u015f\u0131la\u015ft\u0131k. Vaat edilen basitlik, ger\u00e7ek d\u00fcnya senaryolar\u0131nda yerini karma\u015f\u0131k yap\u0131land\u0131rmalara ve zaman al\u0131c\u0131 s\u00fcre\u00e7lere b\u0131rakt\u0131.<\/p>\n<h4>Docker Compose ve Kubernetes Entegrasyon Zorluklar\u0131<\/h4>\n<p>ZITADEL, Docker Compose ve Kubernetes i\u00e7in da\u011f\u0131t\u0131m \u015fablonlar\u0131 sunsa da, bu \u015fablonlar genellikle temel senaryolar i\u00e7in yeterliydi. \u00dcretim ortam\u0131 gereksinimleri (y\u00fcksek eri\u015filebilirlik, yedeklilik, izleme, loglama entegrasyonlar\u0131) devreye girdi\u011finde, mevcut \u015fablonlar\u0131n yetersiz kald\u0131\u011f\u0131n\u0131 g\u00f6rd\u00fck. \u00d6zellikle Kubernetes \u00fczerinde, ZITADEL&#8217;in CockroachDB gibi da\u011f\u0131t\u0131k bir veritaban\u0131 ile birlikte \u00e7al\u0131\u015fmas\u0131, Helm chart&#8217;lar\u0131n \u00f6zelle\u015ftirilmesi ve a\u011f yap\u0131land\u0131rmalar\u0131 konusunda \u00f6nemli \u00e7aba gerektirdi.<\/p>\n<p>\u00d6rnek bir Docker Compose yap\u0131land\u0131rmas\u0131 bile, ZITADEL&#8217;in birden fazla servisini (ZITADEL, CockroachDB, yandex\/clickhouse-operator gibi) bir araya getirmeyi gerektiriyordu:<\/p>\n<pre><code class=\"language-yaml\">version: '3.8'\nservices:\n  cockroachdb:\n    image: cockroachdb\/cockroach:v23.1.11\n    command: start-single-node --insecure\n    ports:\n      - \"26257:26257\"\n      - \"8080:8080\"\n    volumes:\n      - cockroach-data:\/cockroach\/cockroach-data\n    healthcheck:\n      test: [\"CMD\", \"curl\", \"-f\", \"http:\/\/localhost:8080\/health?ready=1\"]\n      interval: 5s\n      timeout: 5s\n      retries: 5\n  zitadel:\n    image: ghcr.io\/zitadel\/zitadel:v2.44.0\n    command: start-from-init --masterkey-path \/secrets\/masterkey --config \/config\/zitadel.yaml\n    ports:\n      - \"8080:8080\" # gRPC\n      - \"8081:8081\" # HTTP\n    environment:\n      - ZITADEL_DATABASE_HOST=cockroachdb\n      - ZITADEL_DATABASE_PORT=26257\n      - ZITADEL_DATABASE_SSL_MODE=disable\n      # ... di\u011fer yap\u0131land\u0131rmalar\n    volumes:\n      - .\/config\/zitadel.yaml:\/config\/zitadel.yaml\n      - .\/secrets:\/secrets\n    depends_on:\n      cockroachdb:\n        condition: service_healthy\nvolumes:\n  cockroach-data:\n<\/pre>\n<p><\/code><\/p>\n<p>Bu temel yap\u0131land\u0131rman\u0131n \u00f6tesinde, TLS sertifikalar\u0131, y\u00fck dengeleme, otomatik \u00f6l\u00e7eklendirme gibi konulara ge\u00e7ildi\u011finde, karma\u015f\u0131kl\u0131k katlanarak artt\u0131.<\/p>\n<h4>Veritaban\u0131 Yap\u0131land\u0131rmas\u0131 ve Bak\u0131m Y\u00fck\u00fc (CockroachDB)<\/h4>\n<p>ZITADEL'in varsay\u0131lan olarak CockroachDB kullanmas\u0131, hem avantaj hem de dezavantajlar sundu. Da\u011f\u0131t\u0131k bir veritaban\u0131 olmas\u0131 \u00f6l\u00e7eklenebilirlik a\u00e7\u0131s\u0131ndan iyi olsa da, CockroachDB'nin kendi ba\u015f\u0131na kurulumu, bak\u0131m\u0131 ve optimizasyonu ayr\u0131 bir uzmanl\u0131k gerektiriyordu. Veritaban\u0131 yedeklemeleri, kurtarma stratejileri, performans izleme ve g\u00fcncelleme s\u00fcre\u00e7leri, IAM \u00e7\u00f6z\u00fcm\u00fcn\u00fcn kendisi kadar, hatta ondan daha fazla operasyonel y\u00fck getirdi. \u00d6zellikle, ZITADEL'in veritaban\u0131 \u015femas\u0131 g\u00fcncellemeleri, CockroachDB'nin da\u011f\u0131t\u0131k yap\u0131s\u0131yla birle\u015fti\u011finde, dikkatli planlama ve test gerektiren kritik i\u015flemler haline geldi.<\/p>\n<h4>\u0130lk Kurulum Deneyiminin Beklentileri Kar\u015f\u0131lamamas\u0131<\/h4>\n<p>Dok\u00fcmantasyonda belirtilen \"h\u0131zl\u0131 ba\u015flang\u0131\u00e7\" rehberleri, genellikle tek bir makinede veya geli\u015ftirme ortam\u0131nda \u00e7al\u0131\u015facak \u015fekilde tasarlanm\u0131\u015ft\u0131. \u00dcretim ortam\u0131na y\u00f6nelik g\u00fcvenli ve y\u00fcksek eri\u015filebilir bir kurulum yapmak, bu rehberlerin \u00e7ok \u00f6tesinde ek ad\u0131mlar, g\u00fcvenlik konfig\u00fcrasyonlar\u0131 ve hata ay\u0131klama s\u00fcre\u00e7leri gerektirdi. Bu durum, ilk kurulum deneyimimizin bekledi\u011fimizden \u00e7ok daha uzun ve yorucu olmas\u0131na neden oldu.<\/p>\n<h3>D\u00f6k\u00fcmantasyon ve Topluluk Deste\u011findeki Eksiklikler<\/h3>\n<p>A\u00e7\u0131k kaynak projelerde d\u00f6k\u00fcmantasyon ve topluluk deste\u011fi hayati \u00f6neme sahiptir. ZITADEL'in bu konudaki eksiklikleri, kar\u015f\u0131la\u015ft\u0131\u011f\u0131m\u0131z sorunlar\u0131 \u00e7\u00f6zme yetene\u011fimizi ciddi \u015fekilde s\u0131n\u0131rlad\u0131.<\/p>\n<h4>Kapsaml\u0131 Senaryolar \u0130\u00e7in Yetersiz D\u00f6k\u00fcmanlar<\/h4>\n<p>ZITADEL'in resmi d\u00f6k\u00fcmantasyonu, temel kullan\u0131m senaryolar\u0131 ve API referanslar\u0131 a\u00e7\u0131s\u0131ndan yeterli olsa da, daha karma\u015f\u0131k veya spesifik \u00fcretim ortam\u0131 gereksinimleri i\u00e7in derinlemesine rehberlik sunmuyordu. \u00d6rne\u011fin, belirli bir Kubernetes da\u011f\u0131t\u0131m\u0131nda y\u00fcksek eri\u015filebilir bir ZITADEL k\u00fcmesi kurmak, \u00f6zel bir yedekleme stratejisi uygulamak veya karma\u015f\u0131k bir \u00e7oklu kirac\u0131l\u0131 (multi-tenant) yap\u0131land\u0131rma yapmak istedi\u011fimizde, d\u00f6k\u00fcmanlarda arad\u0131\u011f\u0131m\u0131z cevaplar\u0131 bulamad\u0131k.<\/p>\n<h4>Versiyon Farkl\u0131l\u0131klar\u0131 ve Uyum Sorunlar\u0131<\/h4>\n<p>ZITADEL'in h\u0131zl\u0131 geli\u015fim d\u00f6ng\u00fcs\u00fc, d\u00f6k\u00fcmantasyonun zaman zaman geride kalmas\u0131na neden oluyordu. Yeni versiyonlarla birlikte gelen \u00f6zellikler veya yap\u0131lan de\u011fi\u015fiklikler, mevcut d\u00f6k\u00fcmanlarda tam olarak yans\u0131t\u0131lmad\u0131\u011f\u0131 i\u00e7in, farkl\u0131 versiyonlar aras\u0131nda uyum sorunlar\u0131 ya\u015fand\u0131. Bu durum, \u00f6zellikle y\u00fckseltme (upgrade) s\u00fcre\u00e7lerinde b\u00fcy\u00fck belirsizliklere yol a\u00e7t\u0131.<\/p>\n<h4>Hata Ay\u0131klama ve \u00c7\u00f6z\u00fcm Bulma Zorluklar\u0131<\/h4>\n<p>Kar\u015f\u0131la\u015f\u0131lan hatalar\u0131n veya beklenmeyen davran\u0131\u015flar\u0131n k\u00f6k nedenini bulmak, yetersiz d\u00f6k\u00fcmantasyon ve s\u0131n\u0131rl\u0131 topluluk deste\u011fi nedeniyle olduk\u00e7a zordu. Hata mesajlar\u0131 bazen genel olabiliyor, bu da sorunun kayna\u011f\u0131n\u0131 belirlemeyi g\u00fc\u00e7le\u015ftiriyordu. GitHub issue'lar\u0131na veya forumlara yap\u0131lan ba\u015fvurulara yan\u0131t gelmesi uzun s\u00fcrebiliyor, bu da kritik sorunlar\u0131n \u00e7\u00f6z\u00fcm\u00fcn\u00fc geciktiriyordu. Kendi ba\u015f\u0131m\u0131za kod taban\u0131n\u0131 incelemek zorunda kalmak, operasyonel y\u00fck\u00fc daha da art\u0131rd\u0131.<\/p>\n<h3>G\u00fcncelleme ve Bak\u0131m S\u00fcre\u00e7lerindeki Engeller<\/h3>\n<p>Bir IAM \u00e7\u00f6z\u00fcm\u00fcn\u00fcn g\u00fcncel ve g\u00fcvenli kalmas\u0131 i\u00e7in d\u00fczenli g\u00fcncellemeler \u015fartt\u0131r. ZITADEL'in self-hosting versiyonunda bu s\u00fcre\u00e7ler, d\u00fc\u015f\u00fcnd\u00fc\u011f\u00fcm\u00fczden \u00e7ok daha fazla efor ve risk i\u00e7eriyordu.<\/p>\n<h4>Versiyon Atlamalar\u0131 ve Ba\u011f\u0131ml\u0131l\u0131k \u00c7ak\u0131\u015fmalar\u0131<\/h4>\n<p>ZITADEL'in s\u0131k aral\u0131klarla yeni versiyonlar yay\u0131nlamas\u0131, bir yandan iyi olsa da, self-hosting yapanlar i\u00e7in bir zorlu\u011fa d\u00f6n\u00fc\u015ft\u00fc. \u00d6zellikle b\u00fcy\u00fck versiyon atlamalar\u0131 (major version upgrades), veritaban\u0131 \u015fema de\u011fi\u015fiklikleri veya ba\u011f\u0131ml\u0131l\u0131k g\u00fcncellemeleri nedeniyle dikkatli planlama gerektiriyordu. Bu t\u00fcr g\u00fcncellemeler s\u0131ras\u0131nda, ba\u011f\u0131ml\u0131l\u0131k \u00e7ak\u0131\u015fmalar\u0131 veya uyumsuzluklar ya\u015fanmas\u0131 olas\u0131yd\u0131, bu da manuel m\u00fcdahale ve hata ay\u0131klama ihtiyac\u0131n\u0131 art\u0131r\u0131yordu.<\/p>\n<h4>\u00dcretim Ortam\u0131nda Kesinti S\u00fcreleri ve Riskler<\/h4>\n<p>Her g\u00fcncelleme, \u00fcretim ortam\u0131nda potansiyel bir kesinti riski ta\u015f\u0131yordu. ZITADEL'in y\u00fcksek eri\u015filebilirlik (HA) senaryolar\u0131nda bile, veritaban\u0131 \u015fema g\u00fcncellemeleri gibi kritik i\u015flemler s\u0131ras\u0131nda kesintisiz bir ge\u00e7i\u015f sa\u011flamak zorlay\u0131c\u0131yd\u0131. G\u00fcncelleme \u00f6ncesi kapsaml\u0131 testler yapmak, yedekleme almak ve geri d\u00f6n\u00fc\u015f (rollback) planlar\u0131 haz\u0131rlamak, her g\u00fcncelleme d\u00f6ng\u00fcs\u00fcnde \u00f6nemli bir zaman ve kaynak harcamas\u0131na neden oldu.<\/p>\n<h4>Manuel M\u00fcdahale \u0130htiyac\u0131n\u0131n Fazlal\u0131\u011f\u0131<\/h4>\n<p>Otomatik g\u00fcncelleme mekanizmalar\u0131n\u0131n veya sorunsuz y\u00fckseltme ara\u00e7lar\u0131n\u0131n eksikli\u011fi, bir\u00e7ok ad\u0131m\u0131 manuel olarak yapmam\u0131z\u0131 gerektirdi. Bu durum, insan hatas\u0131 riskini art\u0131r\u0131rken, DevOps ekibimizin ZITADEL'in bak\u0131m\u0131 i\u00e7in harcad\u0131\u011f\u0131 s\u00fcreyi \u00f6nemli \u00f6l\u00e7\u00fcde y\u00fckseltti. \u00d6zellikle g\u00fcvenlik yamalar\u0131 veya kritik hata d\u00fczeltmeleri gerekti\u011finde, bu manuel s\u00fcre\u00e7ler h\u0131zl\u0131 aksiyon almam\u0131z\u0131 engelledi.<\/p>\n<h3>Performans ve Kaynak T\u00fcketimi Endi\u015feleri<\/h3>\n<p>IAM \u00e7\u00f6z\u00fcmleri, genellikle uygulaman\u0131n kritik yolu \u00fczerinde yer ald\u0131\u011f\u0131 i\u00e7in performanslar\u0131 b\u00fcy\u00fck \u00f6nem ta\u015f\u0131r. ZITADEL'in self-hosting versiyonunda, bekledi\u011fimizden daha y\u00fcksek kaynak t\u00fcketimi ve potansiyel performans sorunlar\u0131yla kar\u015f\u0131la\u015ft\u0131k.<\/p>\n<h4>Y\u00fcksek CPU ve RAM Kullan\u0131m\u0131<\/h4>\n<p>K\u00fc\u00e7\u00fck ve orta \u00f6l\u00e7ekli kullan\u0131c\u0131 tabanlar\u0131 i\u00e7in bile, ZITADEL'in CPU ve RAM t\u00fcketimi beklenenden daha y\u00fcksekti. \u00d6zellikle y\u00fck alt\u0131nda veya yo\u011fun kimlik do\u011frulama talepleri s\u0131ras\u0131nda, ZITADEL servislerinin \u00f6nemli miktarda kaynak kulland\u0131\u011f\u0131n\u0131 g\u00f6zlemledik. Bu durum, daha fazla sunucu kayna\u011f\u0131 ay\u0131rmam\u0131z\u0131 gerektirdi, bu da self-hosting'in maliyet avantaj\u0131n\u0131 azaltmaya ba\u015flad\u0131.<\/p>\n<h4>Veritaban\u0131 \u00dczerindeki Y\u00fck ve \u00d6l\u00e7eklenebilirlik Sorunlar\u0131<\/h4>\n<p>ZITADEL'in CockroachDB ile olan entegrasyonu, veritaban\u0131 taraf\u0131nda da ek y\u00fck getirdi. Yo\u011fun okuma\/yazma i\u015flemleri, CockroachDB k\u00fcmesinin kaynaklar\u0131n\u0131 zorlad\u0131. Do\u011fru yap\u0131land\u0131rma ve optimizasyon yap\u0131lmad\u0131\u011f\u0131nda, veritaban\u0131 performans\u0131 darbo\u011faz haline gelebiliyordu. \u00d6l\u00e7eklenebilirlik, teoride CockroachDB sayesinde m\u00fcmk\u00fcn olsa da, pratik uygulamada bu \u00f6l\u00e7eklendirmeyi y\u00f6netmek ve optimize etmek ayr\u0131 bir operasyonel zorluktu.<\/p>\n<h4>K\u00fc\u00e7\u00fck ve Orta \u00d6l\u00e7ekli Projeler \u0130\u00e7in Uygunsuzluk<\/h4>\n<p>T\u00fcm bu kaynak t\u00fcketimi ve y\u00f6netim karma\u015f\u0131kl\u0131\u011f\u0131, ZITADEL'in self-hosting se\u00e7ene\u011fini k\u00fc\u00e7\u00fck ve orta \u00f6l\u00e7ekli projeler i\u00e7in maliyetli ve gereksiz derecede karma\u015f\u0131k hale getirdi. Daha az kaynakla daha basit bir IAM \u00e7\u00f6z\u00fcm\u00fc arayan ekipler i\u00e7in, ZITADEL'in self-hosting versiyonu, ba\u015flang\u0131\u00e7taki cazibesini yitirdi.<\/p>\n<h3>Maliyet Etkinli\u011fi ve Alternatif \u00c7\u00f6z\u00fcmlerin De\u011ferlendirilmesi<\/h3>\n<p>Self-hosting'i tercih etmemizin temel nedenlerinden biri maliyet etkinli\u011fiydi. Ancak, kar\u015f\u0131la\u015ft\u0131\u011f\u0131m\u0131z operasyonel zorluklar ve gizli maliyetler, bu avantaj\u0131 sorgulamam\u0131za neden oldu.<\/p>\n<h4>Gizli Operasyonel Maliyetler<\/h4>\n<p>Self-hosting'in g\u00f6r\u00fcnen maliyeti genellikle sunucu, lisans (a\u00e7\u0131k kaynak ise s\u0131f\u0131r) ve elektrik giderlerinden ibaret san\u0131l\u0131r. Ancak, ger\u00e7ek maliyetler \u00e7ok daha derindir:<\/p>\n<ul>\n<li><strong>Geli\u015ftirici Zaman\u0131:<\/strong> Kurulum, yap\u0131land\u0131rma, hata ay\u0131klama ve bak\u0131m i\u00e7in harcanan de\u011ferli m\u00fchendislik saatleri.<\/li>\n<li><strong>E\u011fitim Maliyeti:<\/strong> Yeni teknolojileri (CockroachDB, ZITADEL'in i\u00e7 i\u015fleyi\u015fi) \u00f6\u011frenmek i\u00e7in harcanan zaman.<\/li>\n<li><strong>Risk Maliyeti:<\/strong> Kesinti s\u00fcreleri, g\u00fcvenlik a\u00e7\u0131klar\u0131 veya veri kayb\u0131 durumunda i\u015f kayb\u0131 ve itibar zedelenmesi.<\/li>\n<li><strong>Altyap\u0131 Y\u00f6netimi:<\/strong> Yedekleme, izleme, loglama, g\u00fcvenlik yamalar\u0131 gibi s\u00fcrekli altyap\u0131 y\u00f6netimi g\u00f6revleri.<\/li>\n<\/ul>\n<p>Bu gizli maliyetler topland\u0131\u011f\u0131nda, bulut tabanl\u0131 bir IAM hizmetinin ayl\u0131k \u00fccretinin \u00e7ok \u00f6tesine ge\u00e7ebiliyordu.<\/p>\n<h4>Piyasada Bulunan Di\u011fer IAM \u00c7\u00f6z\u00fcmleri<\/h4>\n<p>ZITADEL ile ya\u015fad\u0131\u011f\u0131m\u0131z deneyimlerden sonra, piyasadaki di\u011fer IAM \u00e7\u00f6z\u00fcmlerini yeniden de\u011ferlendirdik. \u00d6zellikle Keycloak gibi k\u00f6kl\u00fc a\u00e7\u0131k kaynak \u00e7\u00f6z\u00fcmler veya Auth0, Okta, Ory gibi bulut tabanl\u0131 hizmetler, farkl\u0131 avantajlar sunuyordu:<\/p>\n<table border=\"1\">\n<thead>\n<tr>\n<th>\u00c7\u00f6z\u00fcm<\/th>\n<th>Self-Hosting Durumu<\/th>\n<th>D\u00f6k\u00fcmantasyon\/Topluluk<\/th>\n<th>Y\u00f6netim Kolayl\u0131\u011f\u0131<\/th>\n<th>Maliyet Etkinli\u011fi (Ortalama)<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><strong>ZITADEL (Self-Hosted)<\/strong><\/td>\n<td>Evet, karma\u015f\u0131k<\/td>\n<td>Orta\/S\u0131n\u0131rl\u0131<\/td>\n<td>D\u00fc\u015f\u00fck<\/td>\n<td>Y\u00fcksek (operasyonel)<\/td>\n<\/tr>\n<tr>\n<td><strong>Keycloak<\/strong><\/td>\n<td>Evet, olgun<\/td>\n<td>Y\u00fcksek<\/td>\n<td>Orta<\/td>\n<td>Orta (operasyonel)<\/td>\n<\/tr>\n<tr>\n<td><strong>Auth0\/Okta<\/strong><\/td>\n<td>Hay\u0131r (SaaS)<\/td>\n<td>Y\u00fcksek<\/td>\n<td>\u00c7ok Y\u00fcksek<\/td>\n<td>De\u011fi\u015fken (abonelik)<\/td>\n<\/tr>\n<tr>\n<td><strong>Ory (Kratos\/Hydra)<\/strong><\/td>\n<td>Evet, mod\u00fcler<\/td>\n<td>Orta\/Y\u00fcksek<\/td>\n<td>Orta<\/td>\n<td>Orta (operasyonel)<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Bu kar\u015f\u0131la\u015ft\u0131rmalar, self-hosting'in her zaman en ucuz veya en kolay se\u00e7enek olmad\u0131\u011f\u0131n\u0131 net bir \u015fekilde g\u00f6sterdi.<\/p>\n<h4>Self-Hosting'in Ger\u00e7ek Maliyeti<\/h4>\n<p>Sonu\u00e7 olarak, ZITADEL'i self-hosting yapman\u0131n ger\u00e7ek maliyeti, ba\u015flang\u0131\u00e7ta d\u00fc\u015f\u00fcnd\u00fc\u011f\u00fcm\u00fczden \u00e7ok daha y\u00fcksekti. Sadece donan\u0131m ve yaz\u0131l\u0131m maliyetleri de\u011fil, ayn\u0131 zamanda m\u00fchendislik zaman\u0131, operasyonel y\u00fck, risk y\u00f6netimi ve \u00f6\u011frenme e\u011frisi gibi unsurlar da hesaba kat\u0131ld\u0131\u011f\u0131nda, bulut tabanl\u0131 bir \u00e7\u00f6z\u00fcm\u00fcn sundu\u011fu \"y\u00f6netilen hizmet\" avantaj\u0131n\u0131n de\u011feri daha iyi anla\u015f\u0131ld\u0131. Ekibimizin de\u011ferli zaman\u0131n\u0131 IAM altyap\u0131s\u0131n\u0131 y\u00f6netmek yerine, do\u011frudan i\u015f de\u011feri \u00fcreten \u00f6zelliklere odaklamas\u0131 gerekti\u011fi sonucuna vard\u0131k.<\/p>\n<h3>Sonu\u00e7: Neden Vazge\u00e7tik ve \u0130leriye Y\u00f6nelik \u00d6neriler<\/h3>\n<p>ZITADEL'i self-hosting yapma deneyimimiz, bir\u00e7ok de\u011ferli dersle sonu\u00e7land\u0131. Ba\u015flang\u0131\u00e7taki beklentilerimiz, karma\u015f\u0131k kurulum ve y\u00f6netim s\u00fcre\u00e7leri, yetersiz d\u00f6k\u00fcmantasyon ve topluluk deste\u011fi, zorlu g\u00fcncelleme mekanizmalar\u0131 ve y\u00fcksek kaynak t\u00fcketimi gibi fakt\u00f6rler nedeniyle kar\u015f\u0131lanamad\u0131. Bu nedenlerle, ZITADEL'i kendi sunucular\u0131m\u0131zda bar\u0131nd\u0131rma tavsiyesinden vazge\u00e7me karar\u0131 ald\u0131k.<\/p>\n<h4>Karar\u0131m\u0131z\u0131n \u00d6zeti<\/h4>\n<p>ZITADEL, modern mimarisi ve zengin \u00f6zellik setiyle g\u00fc\u00e7l\u00fc bir IAM \u00e7\u00f6z\u00fcm\u00fc olsa da, self-hosting senaryosunda olgunluk ve kullan\u0131m kolayl\u0131\u011f\u0131 a\u00e7\u0131s\u0131ndan hen\u00fcz yeterli seviyede de\u011fil. \u00d6zellikle \u00fcretim ortam\u0131nda y\u00fcksek eri\u015filebilirlik, kolay y\u00f6netim ve sorunsuz g\u00fcncellemeler arayan ekipler i\u00e7in operasyonel y\u00fck\u00fc olduk\u00e7a y\u00fcksek. Ekibimizin de\u011ferli zaman\u0131n\u0131 altyap\u0131 y\u00f6netimine harcamak yerine, ana i\u015fimize odaklanmam\u0131z gerekti\u011fi karar\u0131na vard\u0131k.<\/p>\n<h4>Kimlere ZITADEL Self-Hosting \u00d6nermeyiz?<\/h4>\n<ul>\n<li>S\u0131n\u0131rl\u0131 DevOps veya altyap\u0131 y\u00f6netimi kaynaklar\u0131na sahip ekipler.<\/li>\n<li>H\u0131zl\u0131 bir \u015fekilde \u00fcretim ortam\u0131na \u00e7\u0131kmas\u0131 gereken projeler.<\/li>\n<li>Kapsaml\u0131 ve g\u00fcncel d\u00f6k\u00fcmantasyona ba\u011f\u0131ml\u0131 olan geli\u015ftiriciler.<\/li>\n<li>Y\u00fcksek trafikli ve kesintisiz hizmet gerektiren uygulamalar (ekstra efor olmadan).<\/li>\n<li>CockroachDB gibi da\u011f\u0131t\u0131k veritabanlar\u0131 konusunda uzmanl\u0131\u011f\u0131 olmayan ekipler.<\/li>\n<\/ul>\n<h4>Gelecek \u0130\u00e7in Tavsiyeler<\/h4>\n<p>E\u011fer ZITADEL'i kullanmay\u0131 d\u00fc\u015f\u00fcn\u00fcyorsan\u0131z, \u00f6ncelikle bulut tabanl\u0131 hizmetini de\u011ferlendirmenizi \u015fiddetle tavsiye ederiz. Bu, altyap\u0131 y\u00f6netimi y\u00fck\u00fcn\u00fc \u00fczerinizden alacak ve ZITADEL'in temel \u00f6zelliklerine odaklanman\u0131z\u0131 sa\u011flayacakt\u0131r. E\u011fer self-hosting bir zorunluluksa, Keycloak gibi daha olgun ve geni\u015f topluluk deste\u011fine sahip a\u00e7\u0131k kaynak \u00e7\u00f6z\u00fcmleri veya Ory'nin mod\u00fcler bile\u015fenlerini (Kratos, Hydra) ara\u015ft\u0131rman\u0131z\u0131 \u00f6neririz. Her durumda, self-hosting'in ger\u00e7ek maliyetlerini ve operasyonel y\u00fck\u00fcn\u00fc dikkatlice hesaplayarak karar vermelisiniz.<\/p>\n<h3>SSS (S\u0131k Sorulan Sorular)<\/h3>\n<h4>1. ZITADEL bulut s\u00fcr\u00fcm\u00fc i\u00e7in de ge\u00e7erli mi bu sorunlar?<\/h4>\n<p>Hay\u0131r, bu makalede belirtilen sorunlar\u0131n \u00e7o\u011fu ZITADEL'in self-hosting versiyonuna \u00f6zg\u00fcd\u00fcr. Bulut s\u00fcr\u00fcm\u00fcnde kurulum, y\u00f6netim, g\u00fcncelleme ve veritaban\u0131 bak\u0131m\u0131 gibi operasyonel y\u00fckler ZITADEL ekibi taraf\u0131ndan y\u00f6netilir. Bu nedenle, bulut s\u00fcr\u00fcm\u00fc genellikle \u00e7ok daha sorunsuz bir deneyim sunar.<\/p>\n<h4>2. Hangi IAM \u00e7\u00f6z\u00fcm\u00fcn\u00fc \u00f6nerirsiniz?<\/h4>\n<p>\u00d6neri, projenizin \u00f6zel ihtiya\u00e7lar\u0131na ba\u011fl\u0131d\u0131r. E\u011fer self-hosting bir zorunluluksa ve b\u00fcy\u00fck bir DevOps ekibiniz varsa Keycloak iyi bir se\u00e7enektir. Daha mod\u00fcler ve modern bir yakla\u015f\u0131m i\u00e7in Ory'nin bile\u015fenleri (Kratos, Hydra) de\u011ferlendirilebilir. E\u011fer y\u00f6netilen bir hizmet ar\u0131yorsan\u0131z ve b\u00fct\u00e7eniz uygunsa Auth0, Okta veya ZITADEL'in kendi bulut s\u00fcr\u00fcm\u00fc m\u00fckemmel se\u00e7eneklerdir.<\/p>\n<h4>3. ZITADEL'in hangi y\u00f6nleri iyiydi?<\/h4>\n<p>ZITADEL'in modern mimarisi, gRPC ve Protobuf kullan\u0131m\u0131, kapsaml\u0131 API'leri ve zengin \u00f6zellik seti (MFA, SSO, RBAC) olduk\u00e7a etkileyiciydi. Temel i\u015flevselli\u011fi ve geli\u015ftirici dostu API'leri, do\u011fru senaryoda g\u00fc\u00e7l\u00fc bir \u00e7\u00f6z\u00fcm potansiyeline sahiptir. Sorunlar, daha \u00e7ok self-hosting'in getirdi\u011fi operasyonel y\u00fckten kaynaklanm\u0131\u015ft\u0131r.<\/p>\n<h4>4. Self-hosting her zaman k\u00f6t\u00fc bir se\u00e7enek midir?<\/h4>\n<p>Hay\u0131r, self-hosting her zaman k\u00f6t\u00fc bir se\u00e7enek de\u011fildir. Veri egemenli\u011fi, maliyet kontrol\u00fc (uzun vadede ve do\u011fru kaynaklarla), \u00f6zel entegrasyonlar veya belirli reg\u00fclasyonlara uyum gibi durumlarda self-hosting tercih edilebilir. Ancak, bu karar\u0131n getirece\u011fi operasyonel y\u00fck\u00fc, riskleri ve gizli maliyetleri iyi anlamak ve bu y\u00fck\u00fc kald\u0131rabilecek bir ekibe sahip olmak kritik \u00f6neme sahiptir.<\/p>\n<h4>5. Bu deneyimden ne \u00f6\u011frendiniz?<\/h4>\n<p>Bu deneyimden \u00f6\u011frendi\u011fimiz en \u00f6nemli ders, a\u00e7\u0131k kaynak bir projenin self-hosting versiyonunu se\u00e7erken sadece \u00f6zellik setine de\u011fil, ayn\u0131 zamanda d\u00f6k\u00fcmantasyonun kalitesine, topluluk deste\u011fine, y\u00f6netim kolayl\u0131\u011f\u0131na, g\u00fcncelleme s\u00fcre\u00e7lerine ve operasyonel y\u00fck\u00fcne de dikkat etmektir. Bir \u00e7\u00f6z\u00fcm\u00fcn \"\u00fccretsiz\" olmas\u0131, toplam sahip olma maliyetinin (TCO) d\u00fc\u015f\u00fck olaca\u011f\u0131 anlam\u0131na gelmez. M\u00fchendislik zaman\u0131 en de\u011ferli kaynakt\u0131r ve bu kayna\u011f\u0131 en verimli \u015fekilde kullanmak esast\u0131r.<\/p>\n","protected":false},"excerpt":{"rendered":"Projemizin ilk a\u015famalar\u0131nda, g\u00fcvenli ve esnek bir kimlik do\u011frulama ve yetkilendirme altyap\u0131s\u0131na ihtiyac\u0131m\u0131z vard\u0131. Piyasada bir\u00e7ok ticari ve a\u00e7\u0131k&#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":[1],"tags":[],"class_list":{"0":"post-38770","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-genel","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>ZITADEL&#039;i Kendi Sunucumuzda Bar\u0131nd\u0131rmay\u0131 Neden B\u0131rakt\u0131k: Bir Geli\u015ftiricinin Saha Raporu - 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\/zitadeli-kendi-sunucumuzda-barindirmayi-neden-biraktik-bir-gelistiricinin-saha-raporu\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"ZITADEL&#039;i Kendi Sunucumuzda Bar\u0131nd\u0131rmay\u0131 Neden B\u0131rakt\u0131k: Bir Geli\u015ftiricinin Saha Raporu\" \/>\n<meta property=\"og:description\" content=\"Projemizin ilk a\u015famalar\u0131nda, g\u00fcvenli ve esnek bir kimlik do\u011frulama ve yetkilendirme altyap\u0131s\u0131na ihtiyac\u0131m\u0131z vard\u0131. Piyasada bir\u00e7ok ticari ve a\u00e7\u0131k...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/zitadeli-kendi-sunucumuzda-barindirmayi-neden-biraktik-bir-gelistiricinin-saha-raporu\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2026-02-07T08:30:36+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=\"14 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/zitadeli-kendi-sunucumuzda-barindirmayi-neden-biraktik-bir-gelistiricinin-saha-raporu\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/zitadeli-kendi-sunucumuzda-barindirmayi-neden-biraktik-bir-gelistiricinin-saha-raporu\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"ZITADEL&#8217;i Kendi Sunucumuzda Bar\u0131nd\u0131rmay\u0131 Neden B\u0131rakt\u0131k: Bir Geli\u015ftiricinin Saha Raporu\",\"datePublished\":\"2026-02-07T08:30:36+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/zitadeli-kendi-sunucumuzda-barindirmayi-neden-biraktik-bir-gelistiricinin-saha-raporu\/\"},\"wordCount\":2698,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/zitadeli-kendi-sunucumuzda-barindirmayi-neden-biraktik-bir-gelistiricinin-saha-raporu\/#respond\"]}],\"copyrightYear\":\"2026\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/zitadeli-kendi-sunucumuzda-barindirmayi-neden-biraktik-bir-gelistiricinin-saha-raporu\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/zitadeli-kendi-sunucumuzda-barindirmayi-neden-biraktik-bir-gelistiricinin-saha-raporu\/\",\"name\":\"ZITADEL'i Kendi Sunucumuzda Bar\u0131nd\u0131rmay\u0131 Neden B\u0131rakt\u0131k: Bir Geli\u015ftiricinin Saha Raporu - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2026-02-07T08:30:36+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/zitadeli-kendi-sunucumuzda-barindirmayi-neden-biraktik-bir-gelistiricinin-saha-raporu\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/zitadeli-kendi-sunucumuzda-barindirmayi-neden-biraktik-bir-gelistiricinin-saha-raporu\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/zitadeli-kendi-sunucumuzda-barindirmayi-neden-biraktik-bir-gelistiricinin-saha-raporu\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"ZITADEL&#8217;i Kendi Sunucumuzda Bar\u0131nd\u0131rmay\u0131 Neden B\u0131rakt\u0131k: Bir Geli\u015ftiricinin Saha Raporu\"}]},{\"@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":"ZITADEL'i Kendi Sunucumuzda Bar\u0131nd\u0131rmay\u0131 Neden B\u0131rakt\u0131k: Bir Geli\u015ftiricinin Saha Raporu - 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\/zitadeli-kendi-sunucumuzda-barindirmayi-neden-biraktik-bir-gelistiricinin-saha-raporu\/","og_locale":"tr_TR","og_type":"article","og_title":"ZITADEL'i Kendi Sunucumuzda Bar\u0131nd\u0131rmay\u0131 Neden B\u0131rakt\u0131k: Bir Geli\u015ftiricinin Saha Raporu","og_description":"Projemizin ilk a\u015famalar\u0131nda, g\u00fcvenli ve esnek bir kimlik do\u011frulama ve yetkilendirme altyap\u0131s\u0131na ihtiyac\u0131m\u0131z vard\u0131. Piyasada bir\u00e7ok ticari ve a\u00e7\u0131k...","og_url":"https:\/\/fatihsoysal.com\/blog\/zitadeli-kendi-sunucumuzda-barindirmayi-neden-biraktik-bir-gelistiricinin-saha-raporu\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2026-02-07T08:30:36+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"14 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/zitadeli-kendi-sunucumuzda-barindirmayi-neden-biraktik-bir-gelistiricinin-saha-raporu\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/zitadeli-kendi-sunucumuzda-barindirmayi-neden-biraktik-bir-gelistiricinin-saha-raporu\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"ZITADEL&#8217;i Kendi Sunucumuzda Bar\u0131nd\u0131rmay\u0131 Neden B\u0131rakt\u0131k: Bir Geli\u015ftiricinin Saha Raporu","datePublished":"2026-02-07T08:30:36+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/zitadeli-kendi-sunucumuzda-barindirmayi-neden-biraktik-bir-gelistiricinin-saha-raporu\/"},"wordCount":2698,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/zitadeli-kendi-sunucumuzda-barindirmayi-neden-biraktik-bir-gelistiricinin-saha-raporu\/#respond"]}],"copyrightYear":"2026","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/zitadeli-kendi-sunucumuzda-barindirmayi-neden-biraktik-bir-gelistiricinin-saha-raporu\/","url":"https:\/\/fatihsoysal.com\/blog\/zitadeli-kendi-sunucumuzda-barindirmayi-neden-biraktik-bir-gelistiricinin-saha-raporu\/","name":"ZITADEL'i Kendi Sunucumuzda Bar\u0131nd\u0131rmay\u0131 Neden B\u0131rakt\u0131k: Bir Geli\u015ftiricinin Saha Raporu - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2026-02-07T08:30:36+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/zitadeli-kendi-sunucumuzda-barindirmayi-neden-biraktik-bir-gelistiricinin-saha-raporu\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/zitadeli-kendi-sunucumuzda-barindirmayi-neden-biraktik-bir-gelistiricinin-saha-raporu\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/zitadeli-kendi-sunucumuzda-barindirmayi-neden-biraktik-bir-gelistiricinin-saha-raporu\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"ZITADEL&#8217;i Kendi Sunucumuzda Bar\u0131nd\u0131rmay\u0131 Neden B\u0131rakt\u0131k: Bir Geli\u015ftiricinin Saha Raporu"}]},{"@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\/38770","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=38770"}],"version-history":[{"count":0,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/38770\/revisions"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=38770"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=38770"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=38770"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}