{"id":35683,"date":"2025-12-02T17:31:09","date_gmt":"2025-12-02T14:31:09","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/saml-ve-oidc-uygulamaniz-icin-dogru-kimlik-dogrulama-protokolunu-secme\/"},"modified":"2025-12-02T17:31:09","modified_gmt":"2025-12-02T14:31:09","slug":"saml-ve-oidc-uygulamaniz-icin-dogru-kimlik-dogrulama-protokolunu-secme","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/saml-ve-oidc-uygulamaniz-icin-dogru-kimlik-dogrulama-protokolunu-secme\/","title":{"rendered":"SAML ve OIDC: Uygulaman\u0131z \u0130\u00e7in Do\u011fru Kimlik Do\u011frulama Protokol\u00fcn\u00fc Se\u00e7me"},"content":{"rendered":"<p><body><\/p>\n<p>Modern uygulamalarda kullan\u0131c\u0131 kimlik do\u011frulama s\u00fcre\u00e7leri karma\u015f\u0131kla\u015f\u0131yor mu? SAML ve OIDC aras\u0131ndaki temel farklar\u0131, avantajlar\u0131n\u0131, dezavantajlar\u0131n\u0131 ve uygulaman\u0131za en uygun kimlik do\u011frulama protokol\u00fcn\u00fc nas\u0131l se\u00e7ece\u011finizi bu kapsaml\u0131 rehberde ke\u015ffedin. G\u00fcvenli ve sorunsuz bir deneyim i\u00e7in do\u011fru ad\u0131m\u0131 at\u0131n.<\/p>\n<p>G\u00fcn\u00fcm\u00fcz dijital d\u00fcnyas\u0131nda, kullan\u0131c\u0131lar\u0131n birden fazla uygulama ve servisle etkile\u015fim kurmas\u0131 ka\u00e7\u0131n\u0131lmaz hale gelmi\u015ftir. Bir yandan e-posta uygulaman\u0131za giri\u015f yaparken, di\u011fer yandan bir bulut depolama hizmetine eri\u015fmeniz veya farkl\u0131 bir i\u015f uygulamas\u0131na ge\u00e7i\u015f yapman\u0131z gerekebilir. Her seferinde ayr\u0131 ayr\u0131 kullan\u0131c\u0131 ad\u0131 ve \u015fifre girmek, hem kullan\u0131c\u0131 deneyimini olumsuz etkiler hem de g\u00fcvenlik risklerini art\u0131r\u0131r. \u0130\u015fte bu noktada, &#8220;tek oturum a\u00e7ma&#8221; (Single Sign-On &#8211; SSO) kavram\u0131 devreye girer. SSO, kullan\u0131c\u0131lar\u0131n bir kez kimlik do\u011frulamas\u0131ndan ge\u00e7tikten sonra, yetkili olduklar\u0131 t\u00fcm uygulamalara ek bir kimlik do\u011frulamas\u0131na gerek kalmadan eri\u015febilmelerini sa\u011flayan bir mekanizmad\u0131r. Ancak SSO&#8217;yu sa\u011flamak, sand\u0131\u011f\u0131n\u0131z kadar basit de\u011fildir. Farkl\u0131 uygulamalar\u0131n, farkl\u0131 platformlar\u0131n ve farkl\u0131 g\u00fcvenlik gereksinimlerinin oldu\u011fu bir ortamda, bu entegrasyonu g\u00fcvenli ve verimli bir \u015fekilde ger\u00e7ekle\u015ftirmek i\u00e7in standart protokollere ihtiya\u00e7 duyar\u0131z. Bu protokollerden en yayg\u0131n ve etkili olanlar\u0131 ise G\u00fcvenlik Onaylama \u0130\u015faretleme Dili (Security Assertion Markup Language &#8211; SAML) ve A\u00e7\u0131k Kimlik Ba\u011flant\u0131s\u0131 (OpenID Connect &#8211; OIDC) olarak \u00f6ne \u00e7\u0131kar. Peki, bu iki g\u00fc\u00e7l\u00fc protokol aras\u0131ndaki farklar nelerdir ve uygulaman\u0131z i\u00e7in do\u011fru se\u00e7imi nas\u0131l yapmal\u0131s\u0131n\u0131z? Bu makale, sizi s\u0131f\u0131rdan ba\u015flayarak bu karma\u015f\u0131k d\u00fcnyada ad\u0131m ad\u0131m ilerletecek, her iki protokol\u00fcn de temellerini, \u00e7al\u0131\u015fma prensiplerini, avantajlar\u0131n\u0131, dezavantajlar\u0131n\u0131 ve ger\u00e7ek d\u00fcnya senaryolar\u0131nda nas\u0131l kullan\u0131ld\u0131\u011f\u0131n\u0131 detayl\u0131 bir \u015fekilde a\u00e7\u0131klayacakt\u0131r. Amac\u0131m\u0131z, uygulaman\u0131z\u0131n gelece\u011fini g\u00fcvence alt\u0131na al\u0131rken, geli\u015ftirici ekibinizin i\u015f y\u00fck\u00fcn\u00fc de hafifletecek en uygun karar\u0131 vermenize yard\u0131mc\u0131 olmakt\u0131r.<\/p>\n<h2 id=\"kimlik-dogrulama-protokollerinin-temel-taslari-nelerdir\">Kimlik Do\u011frulama Protokollerinin Temel Ta\u015flar\u0131 Nelerdir?<\/h2>\n<p>Kimlik do\u011frulama protokollerinin derinliklerine inmeden \u00f6nce, baz\u0131 temel kavramlar\u0131 netle\u015ftirmek faydal\u0131 olacakt\u0131r. Bu kavramlar, SAML ve OIDC&#8217;nin nas\u0131l \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 anlamak i\u00e7in hayati \u00f6neme sahiptir. \u0130lk olarak, &#8220;kimlik do\u011frulama&#8221; (authentication) ile &#8220;yetkilendirme&#8221; (authorization) aras\u0131ndaki fark\u0131 kavramakla ba\u015flayal\u0131m. Kimlik do\u011frulama, bir kullan\u0131c\u0131n\u0131n ger\u00e7ekten iddia etti\u011fi ki\u015fi olup olmad\u0131\u011f\u0131n\u0131 do\u011frulama s\u00fcrecidir. Genellikle kullan\u0131c\u0131 ad\u0131 ve \u015fifre kombinasyonu, biyometrik veriler veya tek kullan\u0131ml\u0131k kodlarla ger\u00e7ekle\u015ftirilir. \u00d6rne\u011fin, e-posta adresiniz ve \u015fifrenizle Gmail&#8217;e giri\u015f yapt\u0131\u011f\u0131n\u0131zda, kimli\u011finiz do\u011frulanm\u0131\u015f olur. Yetkilendirme ise, kimli\u011fi do\u011frulanm\u0131\u015f bir kullan\u0131c\u0131n\u0131n belirli bir kayna\u011fa veya i\u015fleme eri\u015fim izni olup olmad\u0131\u011f\u0131n\u0131 belirleme s\u00fcrecidir. Yani, Gmail&#8217;e giri\u015f yapt\u0131ktan sonra gelen kutunuza bakma izniniz varsa bu bir yetkilendirmedir, ancak Drive&#8217;\u0131n\u0131zdaki t\u00fcm dosyalar\u0131 silme izniniz olmayabilir. SAML ve OIDC daha \u00e7ok kimlik do\u011frulama ve kimlik bilgisinin g\u00fcvenli bir \u015fekilde aktar\u0131lmas\u0131na odaklan\u0131r, ancak OIDC, \u00f6zellikle OAuth 2.0 ile birlikte kullan\u0131ld\u0131\u011f\u0131nda yetkilendirme ak\u0131\u015flar\u0131n\u0131n da bir par\u00e7as\u0131 haline gelir.<\/p>\n<p>\u0130kinci temel ta\u015f\u0131m\u0131z ise SSO&#8217;nun mimarisidir. SSO \u00e7\u00f6z\u00fcmlerinde genellikle iki ana rol bulunur:<\/p>\n<ul>\n<li><strong>Kimlik Sa\u011flay\u0131c\u0131 (Identity Provider &#8211; IdP):<\/strong> Kullan\u0131c\u0131n\u0131n kimli\u011fini do\u011frulayan ve kimlik bilgilerini servis sa\u011flay\u0131c\u0131ya aktaran varl\u0131kt\u0131r. \u00d6rne\u011fin, \u015firketinizin Active Directory&#8217;si, Google veya Facebook gibi platformlar birer IdP olabilir. Kullan\u0131c\u0131 kimlik bilgileri sadece IdP&#8217;de tutulur ve do\u011frulan\u0131r.<\/li>\n<li><strong>Servis Sa\u011flay\u0131c\u0131 (Service Provider &#8211; SP):<\/strong> Kullan\u0131c\u0131n\u0131n eri\u015fmeye \u00e7al\u0131\u015ft\u0131\u011f\u0131 uygulama veya hizmettir. Bu uygulama, kullan\u0131c\u0131 kimli\u011fini kendi ba\u015f\u0131na do\u011frulamaz, bunun yerine IdP&#8217;ye g\u00fcvenir. \u00d6rne\u011fin, bulut tabanl\u0131 bir CRM uygulamas\u0131 veya \u015firket i\u00e7i bir \u0130K portal\u0131 bir SP olabilir.<\/li>\n<\/ul>\n<p>Bu iki taraf aras\u0131ndaki g\u00fcvenli ileti\u015fimi sa\u011flamak i\u00e7in protokoller devreye girer. Protokoller, kimlik bilgilerinin (veya bu bilgileri i\u00e7eren token&#8217;lar\u0131n) nas\u0131l formatlanaca\u011f\u0131n\u0131, nas\u0131l \u015fifrelenece\u011fini ve hangi ad\u0131mlarla aktar\u0131laca\u011f\u0131n\u0131 standartla\u015ft\u0131r\u0131r. Bu sayede, farkl\u0131 firmalar taraf\u0131ndan geli\u015ftirilen IdP&#8217;ler ve SP&#8217;ler sorunsuz bir \u015fekilde birbiriyle ileti\u015fim kurabilir. Bu sayede kullan\u0131c\u0131lar, tek bir kimlik bilgisi setiyle birden fazla uygulamaya g\u00fcvenle eri\u015febilirler. \u0130\u015fte bu temel yap\u0131n\u0131n anla\u015f\u0131lmas\u0131, SAML ve OIDC&#8217;nin karma\u015f\u0131k gibi g\u00f6r\u00fcnen d\u00fcnyas\u0131na girerken bize sa\u011flam bir zemin haz\u0131rlayacakt\u0131r. \u0130lerleyen b\u00f6l\u00fcmlerde, bu iki protokol\u00fcn bu \u00e7er\u00e7eve i\u00e7inde nas\u0131l \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 ve hangi senaryolarda daha uygun olduklar\u0131n\u0131 detayl\u0131ca inceleyece\u011fiz.<\/p>\n<h2 id=\"saml-nedir-ve-kurumsal-dunyada-nasil-konumlanir\">SAML Nedir ve Kurumsal D\u00fcnyada Nas\u0131l Konumlan\u0131r?<\/h2>\n<p>Security Assertion Markup Language (SAML), \u00f6zellikle kurumsal d\u00fcnyada uzun y\u0131llard\u0131r kullan\u0131lan k\u00f6kl\u00fc bir kimlik do\u011frulama protokol\u00fcd\u00fcr. 2000&#8217;li y\u0131llar\u0131n ba\u015f\u0131nda ortaya \u00e7\u0131kan SAML, XML tabanl\u0131 mesajla\u015fma yap\u0131s\u0131 sayesinde, farkl\u0131 g\u00fcvenlik alanlar\u0131 aras\u0131nda kimlik do\u011frulama ve yetkilendirme verilerini g\u00fcvenli bir \u015fekilde de\u011fi\u015ftirmek i\u00e7in tasarlanm\u0131\u015ft\u0131r. Genellikle b\u00fcy\u00fck \u00f6l\u00e7ekli \u015firketler, intranet uygulamalar\u0131 ve bulut tabanl\u0131 kurumsal hizmetler (SaaS) aras\u0131nda SSO sa\u011flamak amac\u0131yla kullan\u0131l\u0131r. \u00d6rne\u011fin, bir \u00e7al\u0131\u015fan Microsoft 365&#8217;e veya Salesforce&#8217;a kendi \u015firket kimlik bilgileriyle giri\u015f yaparken arka planda genellikle SAML protokol\u00fc \u00e7al\u0131\u015f\u0131r.<\/p>\n<p>SAML&#8217;\u0131n temel \u00e7al\u0131\u015fma prensibi, bir kullan\u0131c\u0131n\u0131n kimli\u011fini do\u011frulayan bir IdP ile kullan\u0131c\u0131n\u0131n eri\u015fmek istedi\u011fi bir SP aras\u0131nda g\u00fcven ili\u015fkisi kurmakt\u0131r. Bu s\u00fcre\u00e7 genellikle \u015fu ad\u0131mlar\u0131 izler:<\/p>\n<ol>\n<li><strong>Kullan\u0131c\u0131 Bir SP&#8217;ye Eri\u015fim \u0130ste\u011fi Yapar:<\/strong> Kullan\u0131c\u0131, do\u011frudan bir Servis Sa\u011flay\u0131c\u0131 (\u00f6rne\u011fin, bir \u015firket i\u00e7i portal) adresine gider. SP, kullan\u0131c\u0131n\u0131n kimli\u011finin do\u011frulanmad\u0131\u011f\u0131n\u0131 fark eder.<\/li>\n<li><strong>SP, Kimlik Do\u011frulama \u0130ste\u011fini IdP&#8217;ye Y\u00f6nlendirir:<\/strong> SP, kullan\u0131c\u0131n\u0131n taray\u0131c\u0131s\u0131n\u0131, kimlik do\u011frulama iste\u011fiyle birlikte (genellikle bir HTTP POST veya Redirect ile) Kimlik Sa\u011flay\u0131c\u0131&#8217;ya (IdP) y\u00f6nlendirir.<\/li>\n<li><strong>IdP Kullan\u0131c\u0131n\u0131n Kimli\u011fini Do\u011frular:<\/strong> IdP, kullan\u0131c\u0131dan kimlik bilgilerini (kullan\u0131c\u0131 ad\u0131\/\u015fifre gibi) ister ve do\u011frulama i\u015flemini yapar. E\u011fer kullan\u0131c\u0131 zaten IdP&#8217;de oturum a\u00e7m\u0131\u015fsa, bu ad\u0131m atlanabilir.<\/li>\n<li><strong>IdP, SAML Onay\u0131 Olu\u015fturur ve SP&#8217;ye G\u00f6nderir:<\/strong> Kimlik do\u011frulama ba\u015far\u0131l\u0131 olursa, IdP, kullan\u0131c\u0131n\u0131n kimlik bilgilerini i\u00e7eren bir SAML Onay\u0131 (SAML Assertion) olu\u015fturur. Bu onay, kullan\u0131c\u0131n\u0131n kimli\u011fi hakk\u0131nda g\u00fcvenli bir \u015fekilde bilgi veren, dijital olarak imzalanm\u0131\u015f bir XML belgesidir. IdP daha sonra bu onay\u0131 kullan\u0131c\u0131n\u0131n taray\u0131c\u0131s\u0131na geri g\u00f6nderir ve taray\u0131c\u0131y\u0131 tekrar SP&#8217;ye y\u00f6nlendirir.<\/li>\n<li><strong>SP, SAML Onay\u0131n\u0131 Do\u011frular ve Kullan\u0131c\u0131ya Eri\u015fim Sa\u011flar:<\/strong> SP, ald\u0131\u011f\u0131 SAML Onay\u0131n\u0131 IdP&#8217;nin genel anahtar\u0131yla do\u011frular. Onay ge\u00e7erliyse, SP kullan\u0131c\u0131y\u0131 tan\u0131r ve uygulamaya eri\u015fim izni verir.<\/li>\n<\/ol>\n<p>Bu ak\u0131\u015f sayesinde, kullan\u0131c\u0131 sadece IdP&#8217;ye kimlik bilgilerini vermekle kal\u0131r ve IdP ile SP aras\u0131ndaki g\u00fcven ili\u015fkisi, hassas bilgilerin SP&#8217;ye do\u011frudan aktar\u0131lmas\u0131n\u0131 gerektirmez.<\/p>\n<p><strong>SAML&#8217;\u0131n Avantajlar\u0131:<\/strong><\/p>\n<ul>\n<li><strong>Olgunluk ve G\u00fcvenilirlik:<\/strong> Uzun y\u0131llard\u0131r kullan\u0131lmakta olmas\u0131, protokol\u00fcn iyi test edilmi\u015f ve g\u00fcvenilir oldu\u011funu g\u00f6sterir.<\/li>\n<li><strong>Yayg\u0131n Kurumsal Destek:<\/strong> \u00c7o\u011fu kurumsal IdP ve SaaS uygulamas\u0131 SAML&#8217;\u0131 destekler, bu da entegrasyonu kolayla\u015ft\u0131r\u0131r.<\/li>\n<li><strong>Geni\u015f Kapsaml\u0131 \u00d6zellikler:<\/strong> Kimlik do\u011frulaman\u0131n yan\u0131 s\u0131ra, yetkilendirme ve \u00f6znitelik (attribute) de\u011fi\u015fimi gibi geli\u015fmi\u015f senaryolar\u0131 destekler.<\/li>\n<\/ul>\n<p><strong>SAML&#8217;\u0131n Dezavantajlar\u0131:<\/strong><\/p>\n<ul>\n<li><strong>XML Karma\u015f\u0131kl\u0131\u011f\u0131:<\/strong> XML tabanl\u0131 olmas\u0131, mesaj boyutlar\u0131n\u0131 art\u0131r\u0131r ve \u00f6zellikle mobil veya hafif uygulamalar i\u00e7in i\u015fleme y\u00fck\u00fcn\u00fc art\u0131rabilir.<\/li>\n<li><strong>Geli\u015ftirme Zorlu\u011fu:<\/strong> XML ayr\u0131\u015ft\u0131rma ve imzalama s\u00fcre\u00e7leri, geli\u015ftiriciler i\u00e7in daha karma\u015f\u0131k olabilir.<\/li>\n<li><strong>Modern Web\/Mobil Uyumsuzlu\u011fu:<\/strong> RESTful API&#8217;ler, tek sayfa uygulamalar (SPA) ve mobil uygulamalar i\u00e7in do\u011fal bir uyum sa\u011flamaz; genellikle taray\u0131c\u0131 tabanl\u0131 y\u00f6nlendirmelere dayan\u0131r.<\/li>\n<\/ul>\n<div class=\"expert-tip\">\n  Uzman \u0130pucu: SAML&#8217;\u0131n XML tabanl\u0131 yap\u0131s\u0131 ve spesifikasyonunun geni\u015fli\u011fi nedeniyle, geli\u015ftirme s\u00fcrecinde haz\u0131r k\u00fct\u00fcphaneler (\u00f6rne\u011fin, Spring Security SAML extension, OneLogin&#8217;s SAML PHP\/Python toolkit) kullanmak, entegrasyon s\u00fcresini ve hata olas\u0131l\u0131\u011f\u0131n\u0131 \u00f6nemli \u00f6l\u00e7\u00fcde azaltacakt\u0131r. Elle SAML iste\u011fi olu\u015fturmaktan ka\u00e7\u0131n\u0131n.\n<\/div>\n<p><strong>Vaka Analizi: Kurumsal Bir Uygulama Entegrasyonu<\/strong><\/p>\n<p>B\u00fcy\u00fck bir finans kurulu\u015fu olan &#8220;FinansTech&#8221;, i\u00e7 operasyonlar\u0131 i\u00e7in birden fazla SaaS (Software as a Service) uygulamas\u0131 kullanmaktad\u0131r (CRM, ERP, \u0130K Y\u00f6netimi). Her uygulamaya ayr\u0131 ayr\u0131 giri\u015f yapmak, \u00e7al\u0131\u015fanlar i\u00e7in hem zaman kayb\u0131 yaratmakta hem de \u015fifre y\u00f6netimini zorla\u015ft\u0131rmaktayd\u0131. FinansTech, mevcut Active Directory tabanl\u0131 kimlik y\u00f6netim sistemlerini IdP olarak kullanarak t\u00fcm SaaS uygulamalar\u0131n\u0131 SAML ile entegre etmeye karar verdi. Bu sayede, \u00e7al\u0131\u015fanlar \u015firketin intranetine bir kez giri\u015f yapt\u0131ktan sonra, t\u00fcm di\u011fer kurumsal uygulamalara ek kimlik do\u011frulamas\u0131na gerek kalmadan eri\u015febilmekteydi. Bu \u00e7\u00f6z\u00fcm, kullan\u0131c\u0131 deneyimini iyile\u015ftirirken, IT y\u00f6neticileri i\u00e7in de merkezi kullan\u0131c\u0131 y\u00f6netimi avantaj\u0131 sa\u011flad\u0131.<\/p>\n<pre><code>\n<!-- Basitle\u015ftirilmi\u015f bir SAML kimlik do\u011frulama iste\u011fi \u00f6rne\u011fi -->\n<samlp:AuthnRequest \n    xmlns:samlp=\"urn:oasis:names:tc:SAML:2.0:protocol\" \n    ID=\"_a75ef2b4-52d8-4f5a-b6e5-4a6c8e3b4a2d\" \n    Version=\"2.0\" \n    IssueInstant=\"2023-10-27T10:00:00.000Z\" \n    ProtocolBinding=\"urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST\" \n    AssertionConsumerServiceURL=\"https:\/\/sp.example.com\/saml\/acs\">\n    <saml:Issuer xmlns:saml=\"urn:oasis:names:tc:SAML:2.0:assertion\">https:\/\/sp.example.com\/saml<\/saml:Issuer>\n<\/samlp:AuthnRequest>\n<\/pre>\n<p><\/code><\/p>\n<p>Yukar\u0131daki \u00f6rnek, bir Servis Sa\u011flay\u0131c\u0131'n\u0131n Kimlik Sa\u011flay\u0131c\u0131'ya g\u00f6nderdi\u011fi basit bir kimlik do\u011frulama iste\u011fini g\u00f6sterir. Bu XML yap\u0131s\u0131, iste\u011fin kimden geldi\u011fini (Issuer), hangi adrese geri d\u00f6n\u00fclmesi gerekti\u011fini (AssertionConsumerServiceURL) ve di\u011fer \u00f6nemli parametreleri i\u00e7erir.<\/p>\n<h2 id=\"oidc-nedir-ve-modern-uygulama-gelistirmedeki-rolu-nedir\">OIDC Nedir ve Modern Uygulama Geli\u015ftirmedeki Rol\u00fc Nedir?<\/h2>\n<p>OpenID Connect (OIDC), OAuth 2.0 yetkilendirme \u00e7er\u00e7evesinin \u00fczerine in\u015fa edilmi\u015f, basit ve modern bir kimlik do\u011frulama katman\u0131d\u0131r. 2014 y\u0131l\u0131nda yay\u0131nlanan OIDC, SAML'\u0131n kurumsal odakl\u0131l\u0131\u011f\u0131n\u0131n aksine, \u00f6zellikle mobil uygulamalar, tek sayfa uygulamalar (SPA), API'ler ve genel t\u00fcketici odakl\u0131 web hizmetleri i\u00e7in tasarlanm\u0131\u015ft\u0131r. OIDC'nin pop\u00fclaritesi, JSON Web Token (JWT) tabanl\u0131 yap\u0131s\u0131 ve RESTful API'lerle do\u011fal uyumu sayesinde h\u0131zla artm\u0131\u015ft\u0131r. Google, Facebook, Microsoft ve Apple gibi devler, kendi kimlik do\u011frulama servislerinde OIDC'yi aktif olarak kullanmaktad\u0131r.<\/p>\n<p>OIDC, temelinde OAuth 2.0'\u0131 kullan\u0131r, ancak OAuth 2.0'dan farkl\u0131 olarak sadece yetkilendirme de\u011fil, ayn\u0131 zamanda kimlik do\u011frulama da sa\u011flar. OAuth 2.0 \"izin\" vermeye odaklan\u0131rken, OIDC \"kim oldu\u011funu s\u00f6yle\" sorusuna yan\u0131t verir. OIDC'nin \u00e7al\u0131\u015fma ak\u0131\u015f\u0131 genellikle \"Authorization Code Flow\" (Yetkilendirme Kodu Ak\u0131\u015f\u0131) ile ger\u00e7ekle\u015fir ve a\u015fa\u011f\u0131daki ad\u0131mlar\u0131 i\u00e7erir:<\/p>\n<ol>\n<li><strong>Kullan\u0131c\u0131 Bir Uygulamaya Giri\u015f Yapmak \u0130ster:<\/strong> Kullan\u0131c\u0131, bir web veya mobil uygulamada (Client) \"Google ile Giri\u015f Yap\" gibi bir se\u00e7enek t\u0131klar.<\/li>\n<li><strong>Client, Yetkilendirme \u0130ste\u011fini Yetkilendirme Sunucusuna Y\u00f6nlendirir:<\/strong> Uygulama, kullan\u0131c\u0131n\u0131n taray\u0131c\u0131s\u0131n\u0131, kimlik do\u011frulama iste\u011fiyle birlikte (genellikle bir HTTP Redirect ile) Yetkilendirme Sunucusu'na (Authorization Server - IdP) y\u00f6nlendirir. Bu istek, uygulaman\u0131n kimli\u011fini ve hangi bilgileri talep etti\u011fini (\u00f6rne\u011fin, kullan\u0131c\u0131 profili, e-posta) i\u00e7erir.<\/li>\n<li><strong>Yetkilendirme Sunucusu Kullan\u0131c\u0131n\u0131n Kimli\u011fini Do\u011frular:<\/strong> Yetkilendirme Sunucusu, kullan\u0131c\u0131dan kimlik bilgilerini ister (e\u011fer hen\u00fcz giri\u015f yapmad\u0131ysa) ve uygulamaya bu bilgilere eri\u015fim izni vermesini onaylamas\u0131n\u0131 ister.<\/li>\n<li><strong>Yetkilendirme Sunucusu Bir Yetkilendirme Kodu G\u00f6nderir:<\/strong> Kimlik do\u011frulama ve onay ba\u015far\u0131l\u0131 olursa, Yetkilendirme Sunucusu, Client uygulamas\u0131na geri y\u00f6nlendirme URL'si (redirect_uri) \u00fczerinden k\u0131sa s\u00fcreli ge\u00e7erlili\u011fi olan bir \"yetkilendirme kodu\" g\u00f6nderir.<\/li>\n<li><strong>Client, Kodu Access ve ID Token'larla De\u011fi\u015ftirir:<\/strong> Client uygulamas\u0131, bu yetkilendirme kodunu do\u011frudan Yetkilendirme Sunucusu'na (taray\u0131c\u0131 \u00fczerinden de\u011fil, backend'den) g\u00f6ndererek bir \"access token\" ve bir \"ID token\" talep eder. Bu ad\u0131m g\u00fcvenlidir, \u00e7\u00fcnk\u00fc yetkilendirme kodu tek kullan\u0131ml\u0131kt\u0131r ve Client'\u0131n gizli anahtar\u0131yla birlikte g\u00f6nderilir.<\/li>\n<li><strong>Yetkilendirme Sunucusu Token'lar\u0131 G\u00f6nderir:<\/strong> Yetkilendirme Sunucusu, iste\u011fi do\u011frular ve uygulamaya bir \"access token\" (kaynak sunuculara eri\u015fim i\u00e7in) ve bir \"ID token\" (kullan\u0131c\u0131n\u0131n kimlik bilgileri i\u00e7in) g\u00f6nderir.<\/li>\n<li><strong>Client, ID Token'\u0131 Do\u011frular ve Kullan\u0131c\u0131ya Eri\u015fim Sa\u011flar:<\/strong> Client uygulamas\u0131, ID token'\u0131 (ki bu bir JWT'dir) Yetkilendirme Sunucusu'nun genel anahtar\u0131yla do\u011frular, token'daki kullan\u0131c\u0131 bilgilerini okur ve kullan\u0131c\u0131ya uygulamaya eri\u015fim izni verir.<\/li>\n<\/ol>\n<p><strong>ID Token (JWT):<\/strong> Bu, kullan\u0131c\u0131n\u0131n kimli\u011fi hakk\u0131nda temel bilgileri (\u00f6rne\u011fin, kullan\u0131c\u0131 ID'si, ad\u0131, e-posta adresi) i\u00e7eren, dijital olarak imzalanm\u0131\u015f bir JSON Web Token'd\u0131r (JWT). JWT'ler \u00fc\u00e7 ana b\u00f6l\u00fcmden olu\u015fur: Ba\u015fl\u0131k (Header), Y\u00fck (Payload) ve \u0130mza (Signature). \u00d6zellikle hafif yap\u0131s\u0131 ve kolay ayr\u0131\u015ft\u0131r\u0131labilirli\u011fi sayesinde modern uygulamalar i\u00e7in idealdir.<\/p>\n<p><strong>Access Token:<\/strong> Bu, kullan\u0131c\u0131n\u0131n belirli kaynaklara (\u00f6rne\u011fin, API'ler) eri\u015fim yetkilerini temsil eden bir jetondur. Genellikle bir opaque string (saydam bir dizi) veya ba\u015fka bir JWT olabilir. Client, bu token'\u0131 yetkilendirilmi\u015f isteklere ekleyerek kaynak sunucular\u0131na g\u00f6nderir.<\/p>\n<p><strong>OIDC'nin Avantajlar\u0131:<\/strong><\/p>\n<ul>\n<li><strong>Basitlik ve Hafiflik:<\/strong> JSON tabanl\u0131 olmas\u0131, XML'e g\u00f6re daha az karma\u015f\u0131k ve daha az veri yo\u011funlu\u011fu demektir.<\/li>\n<li><strong>Mobil ve Web Uygulama Dostu:<\/strong> RESTful API'ler, SPA'lar ve mobil uygulamalarla m\u00fckemmel uyum sa\u011flar.<\/li>\n<li><strong>Geli\u015ftirici Dostu:<\/strong> Geni\u015f k\u00fct\u00fcphane ve ara\u00e7 deste\u011fi, h\u0131zl\u0131 entegrasyon imkan\u0131 sunar.<\/li>\n<li><strong>OAuth 2.0 Entegrasyonu:<\/strong> Kimlik do\u011frulama ve yetkilendirmeyi tek bir \u00e7er\u00e7evede sunar.<\/li>\n<\/ul>\n<p><strong>OIDC'nin Dezavantajlar\u0131:<\/strong><\/p>\n<ul>\n<li><strong>OAuth 2.0 Bilgisi Gereklili\u011fi:<\/strong> OIDC'yi tam olarak anlamak i\u00e7in OAuth 2.0'\u0131n temel prensiplerini bilmek gerekir.<\/li>\n<li><strong>JWT G\u00fcvenli\u011fi:<\/strong> JWT'lerin do\u011fru bir \u015fekilde imzalanmas\u0131, \u015fifrelenmesi ve \u00f6mr\u00fcn\u00fcn y\u00f6netilmesi kritik g\u00fcvenlik unsurlar\u0131d\u0131r.<\/li>\n<\/ul>\n<pre><code>\n<!-- Basitle\u015ftirilmi\u015f bir OIDC ID Token (JWT) payload \u00f6rne\u011fi -->\n<pre><code>\n{\n  \"iss\": \"https:\/\/accounts.google.com\",\n  \"azp\": \"your-client-id.apps.googleusercontent.com\",\n  \"aud\": \"your-client-id.apps.googleusercontent.com\",\n  \"sub\": \"101234567890123456789\",\n  \"email\": \"user@example.com\",\n  \"email_verified\": true,\n  \"at_hash\": \"some_hash_value\",\n  \"name\": \"John Doe\",\n  \"picture\": \"https:\/\/lh3.googleusercontent.com\/a\/some_picture_id\",\n  \"given_name\": \"John\",\n  \"family_name\": \"Doe\",\n  \"locale\": \"en\",\n  \"iat\": 1678886400,\n  \"exp\": 1678890000\n}\n<\/code><\/pre>\n<p><\/code><\/p>\n<p>Yukar\u0131daki JSON yap\u0131s\u0131, OIDC ID Token'\u0131n\u0131n \u015fifresi \u00e7\u00f6z\u00fcld\u00fc\u011f\u00fcnde ortaya \u00e7\u0131kan kullan\u0131c\u0131 bilgilerini (payload) g\u00f6sterir. 'iss' kimlik sa\u011flay\u0131c\u0131y\u0131, 'sub' kullan\u0131c\u0131 kimli\u011fini, 'email' kullan\u0131c\u0131n\u0131n e-postas\u0131n\u0131 ve 'exp' token'\u0131n ge\u00e7erlilik s\u00fcresinin sonunu belirtir.<\/p>\n<p><strong>Vaka Analizi: Modern Mobil Uygulama ve API Entegrasyonu<\/strong><\/p>\n<p>\"MobilBank\" adl\u0131 yeni nesil bir mobil bankac\u0131l\u0131k uygulamas\u0131, kullan\u0131c\u0131lar\u0131n\u0131n mevcut banka hesaplar\u0131yla g\u00fcvenli bir \u015fekilde entegre olmas\u0131n\u0131 ve di\u011fer finansal hizmetlere eri\u015fmesini sa\u011flamak istiyordu. Uygulama, kullan\u0131c\u0131lar\u0131n kolayca kay\u0131t olabilmesi ve giri\u015f yapabilmesi i\u00e7in Google, Apple ve di\u011fer finansal hizmet sa\u011flay\u0131c\u0131lar\u0131n\u0131n OIDC tabanl\u0131 kimlik do\u011frulama API'lerini kullanmay\u0131 tercih etti. Bu sayede, kullan\u0131c\u0131lar mevcut kimlik bilgileriyle h\u0131zl\u0131ca giri\u015f yapabilirken, MobilBank uygulamas\u0131 da kullan\u0131c\u0131 ad\u0131na di\u011fer API'lere (hesap bilgileri, i\u015flem ge\u00e7mi\u015fi vb.) eri\u015fmek i\u00e7in Access Token'lar\u0131 g\u00fcvenli bir \u015fekilde kullanabilmekteydi. OIDC'nin hafif yap\u0131s\u0131 ve mobil entegrasyon kolayl\u0131\u011f\u0131 sayesinde, geli\u015ftirme s\u00fcreci h\u0131zland\u0131 ve uygulama, milyonlarca kullan\u0131c\u0131ya sorunsuz bir deneyim sunabildi.<\/p>\n<h3 id=\"saml-ve-oidc-arasindaki-temel-farklar-nelerdir\">SAML ve OIDC Aras\u0131ndaki Temel Farklar Nelerdir?<\/h3>\n<p>SAML ve OIDC'nin her ikisi de tek oturum a\u00e7ma (SSO) \u00e7\u00f6z\u00fcmleri sunsa da, alt\u0131nda yatan teknoloji, kullan\u0131m senaryolar\u0131 ve felsefeleri \u00f6nemli \u00f6l\u00e7\u00fcde farkl\u0131l\u0131k g\u00f6sterir. \u0130\u015fte temel farklar\u0131 \u00f6zetleyen bir kar\u015f\u0131la\u015ft\u0131rma tablosu:<\/p>\n<table border=\"1\">\n<thead>\n<tr>\n<th>\u00d6zellik<\/th>\n<th>SAML (Security Assertion Markup Language)<\/th>\n<th>OIDC (OpenID Connect)<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><strong>Temel Protokol<\/strong><\/td>\n<td>Ba\u011f\u0131ms\u0131z bir XML tabanl\u0131 protokold\u00fcr.<\/td>\n<td>OAuth 2.0 yetkilendirme \u00e7er\u00e7evesinin \u00fczerine in\u015fa edilmi\u015f bir kimlik do\u011frulama katman\u0131d\u0131r.<\/td>\n<\/tr>\n<tr>\n<td><strong>Veri Format\u0131<\/strong><\/td>\n<td>XML tabanl\u0131 (SAML Assertions). Daha detayl\u0131 ve yap\u0131land\u0131r\u0131lm\u0131\u015f.<\/td>\n<td>JSON tabanl\u0131 (ID Token bir JWT'dir). Daha hafif ve modern web i\u00e7in optimize edilmi\u015ftir.<\/td>\n<\/tr>\n<tr>\n<td><strong>Odak Noktas\u0131<\/strong><\/td>\n<td>Kimlik do\u011frulama ve yetkilendirme bilgisi de\u011fi\u015fimi (Federated Identity).<\/td>\n<td>Kimlik do\u011frulama ve kullan\u0131c\u0131 kimlik bilgilerini g\u00fcvenli bir \u015fekilde elde etme. OAuth 2.0 ile yetkilendirme sa\u011flar.<\/td>\n<\/tr>\n<tr>\n<td><strong>Tipik Kullan\u0131m Alanlar\u0131<\/strong><\/td>\n<td>Kurumsal uygulamalar, \u015firket i\u00e7i a\u011flar, devlet kurumlar\u0131, SaaS entegrasyonlar\u0131.<\/td>\n<td>Modern web uygulamalar\u0131 (SPA), mobil uygulamalar, RESTful API'ler, t\u00fcketiciye y\u00f6nelik hizmetler.<\/td>\n<\/tr>\n<tr>\n<td><strong>Karma\u015f\u0131kl\u0131k<\/strong><\/td>\n<td>Genellikle daha karma\u015f\u0131k bir \u00f6\u011frenme e\u011frisine ve uygulamaya sahiptir.<\/td>\n<td>Daha basit ve geli\u015ftirici dostu; \u00f6zellikle OAuth 2.0'a a\u015fina olanlar i\u00e7in kolay.<\/td>\n<\/tr>\n<tr>\n<td><strong>Geli\u015ftirme Ortam\u0131<\/strong><\/td>\n<td>Taray\u0131c\u0131 tabanl\u0131 ak\u0131\u015flar i\u00e7in daha uygundur.<\/td>\n<td>Taray\u0131c\u0131, mobil ve API bazl\u0131 ak\u0131\u015flar i\u00e7in m\u00fckemmeldir.<\/td>\n<\/tr>\n<tr>\n<td><strong>Token Tipi<\/strong><\/td>\n<td>SAML Assertion (XML belgesi).<\/td>\n<td>ID Token (JWT) ve Access Token.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Bu farklar, uygulaman\u0131z\u0131n do\u011fas\u0131na ve hedeflenen kullan\u0131m senaryolar\u0131na ba\u011fl\u0131 olarak hangi protokol\u00fcn daha uygun olaca\u011f\u0131n\u0131 belirlemede kritik rol oynar.<\/p>\n<h2 id=\"uygulamaniz-icin-dogru-protokolu-nasil-secmelisiniz\">Uygulaman\u0131z \u0130\u00e7in Do\u011fru Protokol\u00fc Nas\u0131l Se\u00e7melisiniz?<\/h2>\n<p>SAML ve OIDC aras\u0131ndaki farklar\u0131 anlad\u0131ktan sonra, belki de en kritik soruya geliyoruz: \"Benim uygulamam i\u00e7in hangisi do\u011fru se\u00e7im?\" Bu karar, uygulaman\u0131z\u0131n mimarisi, hedef kitlesi, mevcut altyap\u0131n\u0131z ve hatta geli\u015ftirici ekibinizin deneyimi gibi bir\u00e7ok fakt\u00f6re ba\u011fl\u0131d\u0131r. \u0130\u015fte size bu karar\u0131 verirken yol g\u00f6sterecek baz\u0131 sorular ve senaryolar:<\/p>\n<ol>\n<li><strong>Uygulaman\u0131z\u0131n T\u00fcr\u00fc Nedir?<\/strong>\n<ul>\n<li><strong>Kurumsal \u0130\u00e7 Uygulama veya Eski Sistem Entegrasyonu:<\/strong> E\u011fer uygulaman\u0131z a\u011f\u0131rl\u0131kl\u0131 olarak \u015firket i\u00e7i \u00e7al\u0131\u015fanlar taraf\u0131ndan kullan\u0131lacak bir kurumsal portal, bir \u0130K sistemi veya mevcut SAML tabanl\u0131 bir kimlik sa\u011flay\u0131c\u0131yla (\u00f6rne\u011fin, ADFS, Okta, Ping Federate) entegre edilmesi gereken eski bir uygulamaysa, SAML genellikle daha uygun bir se\u00e7im olacakt\u0131r. Kurumsal d\u00fcnyada hala \u00e7ok yayg\u0131n bir standartt\u0131r.<\/li>\n<li><strong>Modern Web (SPA), Mobil Uygulama veya API Hizmeti:<\/strong> Tek sayfa uygulamalar\u0131 (Angular, React, Vue), iOS\/Android mobil uygulamalar\u0131 veya arka u\u00e7 API'leri geli\u015ftiriyorsan\u0131z, OIDC neredeyse her zaman daha iyi bir tercihtir. JSON'\u0131n hafifli\u011fi, RESTful mimarisiyle uyumu ve OAuth 2.0 ile entegre yetkilendirme yetene\u011fi, modern geli\u015ftirme paradigmalar\u0131 i\u00e7in idealdir.<\/li>\n<\/ul>\n<\/li>\n<li><strong>Hedef Kitleniz Kimdir?<\/strong>\n<ul>\n<li><strong>\u015eirket \u00c7al\u0131\u015fanlar\u0131:<\/strong> E\u011fer uygulaman\u0131z sadece \u015firket i\u00e7i \u00e7al\u0131\u015fanlar i\u00e7inse ve \u015firketiniz zaten SAML destekli bir IdP kullan\u0131yorsa, SAML entegrasyonu muhtemelen en h\u0131zl\u0131 ve sorunsuz yol olacakt\u0131r.<\/li>\n<li><strong>Genel T\u00fcketiciler\/Harici Kullan\u0131c\u0131lar:<\/strong> Uygulaman\u0131z\u0131n hedef kitlesi son t\u00fcketiciler ise ve Google, Facebook, Apple gibi pop\u00fcler kimlik sa\u011flay\u0131c\u0131larla giri\u015f yapma \u00f6zelli\u011fi sunmak istiyorsan\u0131z, OIDC tercih edilmelidir. Bu IdP'ler genellikle OIDC (veya OAuth 2.0) tabanl\u0131 API'ler sunar.<\/li>\n<\/ul>\n<\/li>\n<li><strong>Mevcut Altyap\u0131n\u0131z ve Kimlik Sa\u011flay\u0131c\u0131n\u0131z Ne Deste\u011fi Sunuyor?<\/strong>\n<ul>\n<li>Kullanaca\u011f\u0131n\u0131z IdP (Identity Provider) hangi protokolleri destekliyor? E\u011fer IdP sadece SAML destekliyorsa, SAML kullanmak zorundas\u0131n\u0131z. \u00c7o\u011fu modern IdP hem SAML hem de OIDC'yi destekler, bu size daha fazla esneklik sunar. Se\u00e7im yapmadan \u00f6nce IdP'nizin dok\u00fcmantasyonunu kontrol edin.<\/li>\n<\/ul>\n<\/li>\n<li><strong>Geli\u015ftirici Deneyimi ve \u00d6\u011frenme E\u011frisi:<\/strong>\n<ul>\n<li>Ekibiniz SAML veya OIDC konusunda daha \u00f6nce deneyime sahip mi? SAML'\u0131n XML karma\u015f\u0131kl\u0131\u011f\u0131 ve daha geni\u015f spesifikasyonu, yeni ba\u015flayanlar i\u00e7in daha zorlay\u0131c\u0131 olabilir. OIDC\/OAuth 2.0 ise modern geli\u015ftiriciler aras\u0131nda daha yayg\u0131n olarak bilinir ve daha fazla k\u00fct\u00fcphane deste\u011fi sunar.<\/li>\n<\/ul>\n<\/li>\n<li><strong>G\u00fcvenlik Gereksinimleri ve Y\u00f6netim Kolayl\u0131\u011f\u0131:<\/strong>\n<ul>\n<li>Her iki protokol de g\u00fc\u00e7l\u00fc g\u00fcvenlik mekanizmalar\u0131na sahiptir. Ancak, OIDC'de JWT'lerin do\u011fru bir \u015fekilde imzalanmas\u0131, \u015fifrelenmesi ve \u00f6mr\u00fcn\u00fcn y\u00f6netilmesi kritik g\u00fcvenlik unsurlar\u0131d\u0131r. SAML'da ise XML imzalar\u0131 ve \u015fifreleme s\u00fcre\u00e7leri dikkatli y\u00f6netilmelidir. Her iki durumda da g\u00fcvenli\u011fi do\u011fru bir \u015fekilde uygulamak \u00e7ok \u00f6nemlidir.<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n<div class=\"expert-tip\">\n  Uzman \u0130pucu: Karma\u015f\u0131k senaryolarda hibrit yakla\u015f\u0131mlar\u0131 d\u00fc\u015f\u00fcnmekten \u00e7ekinmeyin. \u00d6rne\u011fin, i\u00e7 kurumsal uygulamalar\u0131n\u0131z i\u00e7in SAML kullan\u0131rken, d\u0131\u015fa d\u00f6n\u00fck mobil ve web uygulamalar\u0131n\u0131z i\u00e7in OIDC'yi tercih edebilirsiniz. Bir API Gateway veya kimlik y\u00f6netimi \u00e7\u00f6z\u00fcm\u00fc, bu farkl\u0131 protokolleri tek bir \u00e7at\u0131 alt\u0131nda birle\u015ftirmenize yard\u0131mc\u0131 olabilir. Bu, hem mevcut yat\u0131r\u0131mlar\u0131n\u0131z\u0131 koruman\u0131z\u0131 hem de yeni teknolojilerin avantajlar\u0131ndan faydalanman\u0131z\u0131 sa\u011flar.\n<\/div>\n<p><strong>Vaka Analizi: Hibrit Bir \u015eirket Mimarisi<\/strong><\/p>\n<p>\"GlobalTech\" adl\u0131 uluslararas\u0131 bir teknoloji \u015firketi, hem binlerce \u00e7al\u0131\u015fan\u0131n\u0131n kulland\u0131\u011f\u0131 \u015firket i\u00e7i sistemlere hem de milyonlarca m\u00fc\u015fteriye hizmet veren mobil uygulamalara sahipti. \u015eirket i\u00e7i sistemler y\u0131llard\u0131r SAML tabanl\u0131 bir Active Directory Federasyon Hizmetleri (ADFS) ile entegreydi. Yeni geli\u015ftirilen m\u00fc\u015fteri odakl\u0131 mobil uygulamalar i\u00e7in ise ADFS'nin karma\u015f\u0131kl\u0131\u011f\u0131 ve XML yap\u0131s\u0131 uygun de\u011fildi. GlobalTech, bu durumda hibrit bir yakla\u015f\u0131m benimsedi: Mevcut SAML altyap\u0131s\u0131n\u0131 koruyarak i\u00e7 sistemlerde SSO sa\u011flamaya devam etti. Yeni mobil uygulamalar ve API'ler i\u00e7in ise Okta gibi modern bir Kimlik Sa\u011flay\u0131c\u0131'y\u0131 kullanarak OIDC tabanl\u0131 kimlik do\u011frulama entegrasyonunu tercih etti. Okta hem SAML hem de OIDC'yi destekleyebildi\u011finden, farkl\u0131 ihtiya\u00e7lar\u0131 olan uygulamalar i\u00e7in tek bir merkezi kimlik y\u00f6netimi noktas\u0131 olu\u015fturulabildi. Bu strateji, hem kurumsal g\u00fcvenlik standartlar\u0131n\u0131 s\u00fcrd\u00fcrd\u00fc hem de modern geli\u015ftirme s\u00fcre\u00e7lerini h\u0131zland\u0131rd\u0131.<\/p>\n<h2 id=\"ileri-duzey-konular-ve-en-iyi-uygulamalar\">\u0130leri D\u00fczey Konular ve En \u0130yi Uygulamalar<\/h2>\n<p>SAML ve OIDC'nin temellerini ve se\u00e7im kriterlerini anlad\u0131k. \u015eimdi, bu protokolleri daha etkin ve g\u00fcvenli bir \u015fekilde kullanman\u0131z\u0131 sa\u011flayacak baz\u0131 ileri d\u00fczey konulara ve en iyi uygulamalara de\u011finelim.<\/p>\n<h3 id=\"jwt-guvenligi-ve-refresh-token-kullanimi\">JWT G\u00fcvenli\u011fi ve Refresh Token Kullan\u0131m\u0131<\/h3>\n<p>OIDC'nin kalbinde yer alan JWT'ler, basit ve hafif olmalar\u0131na ra\u011fmen, do\u011fru kullan\u0131lmad\u0131\u011f\u0131nda g\u00fcvenlik riskleri ta\u015f\u0131yabilir. \u0130\u015fte dikkat etmeniz gerekenler:<\/p>\n<ul>\n<li><strong>\u0130mzalama (Signing):<\/strong> JWT'lerin b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc ve kayna\u011f\u0131n\u0131 do\u011frulamak i\u00e7in her zaman g\u00fc\u00e7l\u00fc algoritmalarla (\u00f6rne\u011fin, RS256) imzalanmas\u0131 gerekir. IDP'nin genel anahtar\u0131n\u0131 kullanarak imzay\u0131 do\u011frulamak zorunludur.<\/li>\n<li><strong>\u015eifreleme (Encryption):<\/strong> Hassas kullan\u0131c\u0131 bilgileri i\u00e7eren JWT'leri (\u00f6zellikle ID Token'lar\u0131) \u015fifrelemek, Man-in-the-Middle sald\u0131r\u0131lar\u0131na kar\u015f\u0131 ek bir koruma katman\u0131 sa\u011flar.<\/li>\n<li><strong>S\u00fcre Sonu (Expiration):<\/strong> JWT'ler k\u0131sa \u00f6m\u00fcrl\u00fc olmal\u0131d\u0131r (genellikle dakikalar veya birka\u00e7 saat). Bu, token'\u0131n \u00e7al\u0131nmas\u0131 durumunda potansiyel hasar\u0131 minimize eder.<\/li>\n<li><strong>Refresh Token:<\/strong> Uzun s\u00fcreli oturumlar i\u00e7in, k\u0131sa \u00f6m\u00fcrl\u00fc Access Token'lar\u0131n s\u00fcresi doldu\u011funda yenilerini almak i\u00e7in Refresh Token'lar kullan\u0131l\u0131r. Refresh Token'lar uzun \u00f6m\u00fcrl\u00fc olabilir ancak \u00e7ok daha g\u00fcvenli bir \u015fekilde saklanmal\u0131 (\u00f6rne\u011fin, sadece kimlik sa\u011flay\u0131c\u0131 taraf\u0131ndan eri\u015filebilen HTTP-only \u00e7erezlerde veya g\u00fcvenli bir veri taban\u0131nda \u015fifrelenmi\u015f olarak) ve tek kullan\u0131ml\u0131k olmal\u0131d\u0131r. Bir Refresh Token kullan\u0131ld\u0131\u011f\u0131nda yenisi verilmeli, eskisi ge\u00e7ersiz k\u0131l\u0131nmal\u0131d\u0131r.<\/li>\n<\/ul>\n<h3 id=\"protokollerin-genisletilebilirligi\">Protokollerin Geni\u015fletilebilirli\u011fi<\/h3>\n<p>Her iki protokol de belirli d\u00fczeyde geni\u015fletilebilirli\u011fe sahiptir:<\/p>\n<ul>\n<li><strong>SAML Attributes:<\/strong> SAML, kullan\u0131c\u0131n\u0131n e-posta adresi, rol\u00fc veya departman\u0131 gibi ek \u00f6zniteliklerin (attributes) SAML onaylar\u0131 i\u00e7inde ta\u015f\u0131nmas\u0131na izin verir. Bu, SP'nin yetkilendirme kararlar\u0131 almas\u0131 i\u00e7in ek bilgi sa\u011flar.<\/li>\n<li><strong>OIDC Scopes ve Claims:<\/strong> OIDC, OAuth 2.0'\u0131n \"scopes\" mekanizmas\u0131n\u0131 kullanarak uygulaman\u0131n kullan\u0131c\u0131dan hangi bilgilere (claims) eri\u015fmek istedi\u011fini belirtmesine olanak tan\u0131r (\u00f6rne\u011fin, \"profile\", \"email\"). Bu, kullan\u0131c\u0131n\u0131n r\u0131zas\u0131 dahilinde sadece gerekli bilgilerin payla\u015f\u0131lmas\u0131n\u0131 sa\u011flar. Custom claims ekleyerek uygulaman\u0131za \u00f6zel bilgileri de ID Token'a dahil edebilirsiniz.<\/li>\n<\/ul>\n<h3 id=\"api-gateway-ile-entegrasyon\">API Gateway ile Entegrasyon<\/h3>\n<p>Mikro hizmet mimarilerinde veya birden fazla arka u\u00e7 servisi olan uygulamalarda, bir API Gateway kullanmak kimlik do\u011frulama y\u00f6netimini merkezile\u015ftirmek i\u00e7in harika bir yakla\u015f\u0131md\u0131r. API Gateway, gelen isteklerin kimlik do\u011frulamas\u0131n\u0131 (hem SAML hem de OIDC token'lar\u0131n\u0131 do\u011frulayabilir) ve yetkilendirmesini yaparak arka u\u00e7 servislerine sadece g\u00fcvenli isteklerin ula\u015fmas\u0131n\u0131 sa\u011flar. Bu sayede her mikro hizmetin kendi kimlik do\u011frulama mant\u0131\u011f\u0131n\u0131 uygulamas\u0131na gerek kalmaz.<\/p>\n<h3 id=\"multi-factor-authentication-mfa-entegrasyonu\">Multi-Factor Authentication (MFA) Entegrasyonu<\/h3>\n<p>G\u00fcn\u00fcm\u00fczde sadece tek fakt\u00f6rl\u00fc (kullan\u0131c\u0131 ad\u0131\/\u015fifre) kimlik do\u011frulama yeterli de\u011fildir. Hem SAML hem de OIDC, MFA (\u00c7ok Fakt\u00f6rl\u00fc Kimlik Do\u011frulama) entegrasyonuna izin verir. Genellikle MFA i\u015flemi IdP taraf\u0131nda ger\u00e7ekle\u015fir ve IdP, kullan\u0131c\u0131n\u0131n kimli\u011fini MFA ile do\u011frulad\u0131ktan sonra SAML onay\u0131 veya ID Token'\u0131 olu\u015fturur. Bu, uygulamalar\u0131n kendi MFA mekanizmalar\u0131n\u0131 geli\u015ftirmesine gerek kalmadan g\u00fc\u00e7l\u00fc g\u00fcvenlik sa\u011flamas\u0131na olanak tan\u0131r.<\/p>\n<h3 id=\"saml-metadata-yonetimi\">SAML Metadata Y\u00f6netimi<\/h3>\n<p>SAML entegrasyonlar\u0131nda IdP ve SP'nin birbiri hakk\u0131nda bilgi sahibi olmas\u0131 gerekir. Bu bilgiler, \"metadata\" ad\u0131 verilen bir XML dosyas\u0131nda tutulur ve IdP'nin ve SP'nin u\u00e7 noktalar\u0131n\u0131, genel anahtarlar\u0131n\u0131, destekledi\u011fi ba\u011flamalar\u0131 vb. i\u00e7erir. Bu metadata dosyas\u0131n\u0131n do\u011fru bir \u015fekilde yap\u0131land\u0131r\u0131lmas\u0131, de\u011fi\u015f toku\u015f edilmesi ve g\u00fcncel tutulmas\u0131, SAML entegrasyonlar\u0131n\u0131n sorunsuz \u00e7al\u0131\u015fmas\u0131 i\u00e7in kritik \u00f6neme sahiptir.<\/p>\n<p>Bu ileri d\u00fczey konulara hakim olmak, uygulaman\u0131z\u0131n sadece \u00e7al\u0131\u015fmas\u0131n\u0131 de\u011fil, ayn\u0131 zamanda g\u00fcvenli, \u00f6l\u00e7eklenebilir ve y\u00f6netilebilir olmas\u0131n\u0131 da sa\u011flayacakt\u0131r. Geli\u015ftirme s\u00fcrecinde bu en iyi uygulamalar\u0131 g\u00f6z \u00f6n\u00fcnde bulundurmak, uzun vadede size b\u00fcy\u00fck faydalar sa\u011flayacakt\u0131r.<\/p>\n<h2 id=\"sonuc-gelecegin-kimlik-dogrulamasi\">Sonu\u00e7: Gelece\u011fin Kimlik Do\u011frulamas\u0131<\/h2>\n<p>Bu kapsaml\u0131 makale boyunca, modern uygulamalar\u0131n vazge\u00e7ilmezi olan kimlik do\u011frulama protokolleri SAML ve OIDC'yi detayl\u0131 bir \u015fekilde inceledik. SAML'\u0131n kurumsal d\u00fcnyadaki sa\u011flam yerini, XML tabanl\u0131 yap\u0131s\u0131n\u0131, g\u00fcvenilirli\u011fini ve b\u00fcy\u00fck \u00f6l\u00e7ekli entegrasyonlardaki g\u00fcc\u00fcn\u00fc g\u00f6rd\u00fck. Di\u011fer yandan, OIDC'nin JSON\/JWT tabanl\u0131 hafif yap\u0131s\u0131n\u0131, modern web, mobil ve API uygulamalar\u0131yla olan m\u00fckemmel uyumunu ve geli\u015ftirici dostu \u00f6zelliklerini ke\u015ffettik. Her iki protokol\u00fcn de kendi avantajlar\u0131 ve dezavantajlar\u0131 oldu\u011funu, dolay\u0131s\u0131yla \"en iyi\" se\u00e7ene\u011fin olmad\u0131\u011f\u0131n\u0131, sadece uygulaman\u0131z\u0131n \u00f6zel ihtiya\u00e7lar\u0131na \"en uygun\" se\u00e7ene\u011fin bulundu\u011funu vurgulad\u0131k.<\/p>\n<p>\u00d6zetle, uygulaman\u0131z\u0131n t\u00fcr\u00fc, hedef kitlesi, mevcut altyap\u0131n\u0131z ve geli\u015ftirici ekibinizin yetkinlikleri gibi fakt\u00f6rleri dikkatlice de\u011ferlendirmek, do\u011fru karar\u0131 vermenin anahtar\u0131d\u0131r. Kurumsal ve geleneksel entegrasyonlar i\u00e7in SAML hala g\u00fc\u00e7l\u00fc bir adayken, \u00e7evik, bulut tabanl\u0131 ve t\u00fcketici odakl\u0131 uygulamalar i\u00e7in OIDC tart\u0131\u015fmas\u0131z bir \u015fekilde \u00f6ne \u00e7\u0131kmaktad\u0131r. Hatta, bir\u00e7ok kurulu\u015fun hibrit bir yakla\u015f\u0131m benimseyerek her iki protokol\u00fcn de g\u00fc\u00e7l\u00fc y\u00f6nlerinden faydaland\u0131\u011f\u0131n\u0131 g\u00f6rd\u00fck.<\/p>\n<p>Kimlik do\u011frulama teknolojileri s\u00fcrekli geli\u015fiyor. FIDO2 ve Passkeys gibi daha yeni, \u015fifresiz kimlik do\u011frulama standartlar\u0131 gelecekte daha fazla yer edinecek olsa da, SAML ve OIDC hala dijital kimlik y\u00f6netiminin temel direkleri olmaya devam edecektir. Gelece\u011fe bakarken, bu protokollerin nas\u0131l entegre edilece\u011fini ve yeni teknolojilerle nas\u0131l bir arada var olaca\u011f\u0131n\u0131 anlamak, geli\u015ftiriciler ve mimarlar i\u00e7in kritik \u00f6neme sahiptir. Unutmay\u0131n, do\u011fru kimlik do\u011frulama protokol\u00fcn\u00fc se\u00e7mek, uygulaman\u0131z\u0131n g\u00fcvenli\u011fini, kullan\u0131c\u0131 deneyimini ve \u00f6l\u00e7eklenebilirli\u011fini do\u011frudan etkileyen stratejik bir karard\u0131r.<\/p>\n<h3 id=\"sikca-sorulan-sorular\">S\u0131k\u00e7a Sorulan Sorular<\/h3>\n<dl>\n<dt><strong>SAML ve OIDC birlikte kullan\u0131labilir mi?<\/strong><\/dt>\n<dd>Evet, kesinlikle! Bir\u00e7ok kurumsal ortamda hibrit bir yakla\u015f\u0131m benimsenir. \u00d6rne\u011fin, \u015firket i\u00e7i uygulamalar i\u00e7in SAML kullan\u0131l\u0131rken, d\u0131\u015fa d\u00f6n\u00fck veya m\u00fc\u015fteri odakl\u0131 yeni uygulamalar i\u00e7in OIDC tercih edilebilir. Modern Kimlik Sa\u011flay\u0131c\u0131lar (IdP'ler) genellikle her iki protokol\u00fc de destekleyerek bu entegrasyonu kolayla\u015ft\u0131r\u0131r.<\/dd>\n<dt><strong>Hangisi daha g\u00fcvenli: SAML mi, OIDC mi?<\/strong><\/dt>\n<dd>Her iki protokol de g\u00fc\u00e7l\u00fc g\u00fcvenlik mekanizmalar\u0131na sahiptir. G\u00fcvenlik, protokol\u00fcn kendisinden \u00e7ok, do\u011fru implementasyonuna ba\u011fl\u0131d\u0131r. SAML XML \u015fifreleme ve dijital imzalar kullan\u0131rken, OIDC JWT'lerin imzalanmas\u0131, \u015fifrelenmesi ve \u00f6mr\u00fcn\u00fcn y\u00f6netilmesi \u00fczerine kuruludur. Her ikisinde de zafiyetler, k\u00f6t\u00fc implementasyonlardan veya yanl\u0131\u015f yap\u0131land\u0131rmalardan kaynaklan\u0131r. Protokolleri do\u011fru bir \u015fekilde uygulamak ve en iyi g\u00fcvenlik pratiklerini takip etmek esast\u0131r.<\/dd>\n<dt><strong>Hangi protokol daha performansl\u0131?<\/strong><\/dt>\n<dd>Genel olarak, OIDC daha performansl\u0131 kabul edilir. Bunun ba\u015fl\u0131ca nedeni, OIDC'nin JSON tabanl\u0131 (JWT) olmas\u0131d\u0131r. JSON, XML'e g\u00f6re daha az veri yo\u011funlu\u011funa sahiptir ve ayr\u0131\u015ft\u0131rmas\u0131 daha h\u0131zl\u0131d\u0131r. \u00d6zellikle mobil cihazlar ve d\u00fc\u015f\u00fck bant geni\u015fli\u011fine sahip a\u011flarda, OIDC'nin hafif yap\u0131s\u0131 daha avantajl\u0131 olabilir.<\/dd>\n<dt><strong>K\u00fc\u00e7\u00fck projeler i\u00e7in hangisi daha uygun?<\/strong><\/dt>\n<dd>K\u00fc\u00e7\u00fck ve h\u0131zl\u0131 geli\u015ftirilmesi gereken projeler, modern web\/mobil uygulamalar\u0131 veya API'ler i\u00e7in OIDC genellikle daha uygun ve geli\u015ftirici dostudur. OIDC'nin basitli\u011fi, geni\u015f k\u00fct\u00fcphane deste\u011fi ve pop\u00fcler IdP'lerle kolay entegrasyonu, k\u00fc\u00e7\u00fck projelerin h\u0131zla hayata ge\u00e7irilmesine yard\u0131mc\u0131 olur. SAML, k\u00fc\u00e7\u00fck projeler i\u00e7in genellikle a\u015f\u0131r\u0131 karma\u015f\u0131k ve zaman al\u0131c\u0131 olabilir.<\/dd>\n<dt><strong>OAuth 2.0 ile OIDC ayn\u0131 \u015fey mi?<\/strong><\/dt>\n<dd>Hay\u0131r, ayn\u0131 \u015fey de\u011fillerdir ancak birbiriyle ili\u015fkilidirler. OAuth 2.0 bir yetkilendirme \u00e7er\u00e7evesidir; bir uygulaman\u0131n kullan\u0131c\u0131 ad\u0131na belirli kaynaklara (\u00f6rne\u011fin, Google Drive'a) eri\u015fim izni almas\u0131n\u0131 sa\u011flar. OIDC ise OAuth 2.0 \u00fczerine in\u015fa edilmi\u015f bir kimlik do\u011frulama katman\u0131d\u0131r. Yani, OIDC hem kimlik do\u011frulama (kullan\u0131c\u0131n\u0131n kim oldu\u011funu bilme) hem de yetkilendirme (kullan\u0131c\u0131n\u0131n ne yapabilece\u011fini bilme) sa\u011flar. OIDC olmadan OAuth 2.0 sadece yetkilendirme yapar, kullan\u0131c\u0131n\u0131n kimli\u011fini do\u011frulamaz.<\/dd>\n<\/dl>\n<p><\/body><\/p>\n","protected":false},"excerpt":{"rendered":"Modern uygulamalarda kullan\u0131c\u0131 kimlik do\u011frulama s\u00fcre\u00e7leri karma\u015f\u0131kla\u015f\u0131yor mu? SAML ve OIDC aras\u0131ndaki temel farklar\u0131, avantajlar\u0131n\u0131, dezavantajlar\u0131n\u0131 ve uygulaman\u0131za&hellip;","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[1],"tags":[],"class_list":{"0":"post-35683","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>SAML ve OIDC: Uygulaman\u0131z \u0130\u00e7in Do\u011fru Kimlik Do\u011frulama Protokol\u00fcn\u00fc Se\u00e7me<\/title>\n<meta name=\"description\" content=\"Modern uygulamalarda kullan\u0131c\u0131 kimlik do\u011frulama s\u00fcre\u00e7leri karma\u015f\u0131kla\u015f\u0131yor mu? SAML ve OIDC aras\u0131ndaki temel farklar\u0131, avantajlar\u0131n\u0131, dezavantajlar\u0131n\u0131 ve uygulaman\u0131za en uygun kimlik do\u011frulama protokol\u00fcn\u00fc nas\u0131l se\u00e7ece\u011finizi bu kapsaml\u0131 rehberde ke\u015ffedin. G\u00fcvenli ve sorunsuz bir deneyim i\u00e7in do\u011fru ad\u0131m\u0131 at\u0131n.\" \/>\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\/saml-ve-oidc-uygulamaniz-icin-dogru-kimlik-dogrulama-protokolunu-secme\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"SAML ve OIDC: Uygulaman\u0131z \u0130\u00e7in Do\u011fru Kimlik Do\u011frulama Protokol\u00fcn\u00fc Se\u00e7me\" \/>\n<meta property=\"og:description\" content=\"Modern uygulamalarda kullan\u0131c\u0131 kimlik do\u011frulama s\u00fcre\u00e7leri karma\u015f\u0131kla\u015f\u0131yor mu? SAML ve OIDC aras\u0131ndaki temel farklar\u0131, avantajlar\u0131n\u0131, dezavantajlar\u0131n\u0131 ve uygulaman\u0131za en uygun kimlik do\u011frulama protokol\u00fcn\u00fc nas\u0131l se\u00e7ece\u011finizi bu kapsaml\u0131 rehberde ke\u015ffedin. G\u00fcvenli ve sorunsuz bir deneyim i\u00e7in do\u011fru ad\u0131m\u0131 at\u0131n.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/saml-ve-oidc-uygulamaniz-icin-dogru-kimlik-dogrulama-protokolunu-secme\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-12-02T14:31:09+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=\"25 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/saml-ve-oidc-uygulamaniz-icin-dogru-kimlik-dogrulama-protokolunu-secme\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/saml-ve-oidc-uygulamaniz-icin-dogru-kimlik-dogrulama-protokolunu-secme\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"SAML ve OIDC: Uygulaman\u0131z \u0130\u00e7in Do\u011fru Kimlik Do\u011frulama Protokol\u00fcn\u00fc Se\u00e7me\",\"datePublished\":\"2025-12-02T14:31:09+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/saml-ve-oidc-uygulamaniz-icin-dogru-kimlik-dogrulama-protokolunu-secme\/\"},\"wordCount\":4964,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/saml-ve-oidc-uygulamaniz-icin-dogru-kimlik-dogrulama-protokolunu-secme\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/saml-ve-oidc-uygulamaniz-icin-dogru-kimlik-dogrulama-protokolunu-secme\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/saml-ve-oidc-uygulamaniz-icin-dogru-kimlik-dogrulama-protokolunu-secme\/\",\"name\":\"SAML ve OIDC: Uygulaman\u0131z \u0130\u00e7in Do\u011fru Kimlik Do\u011frulama Protokol\u00fcn\u00fc Se\u00e7me\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-12-02T14:31:09+00:00\",\"description\":\"Modern uygulamalarda kullan\u0131c\u0131 kimlik do\u011frulama s\u00fcre\u00e7leri karma\u015f\u0131kla\u015f\u0131yor mu? SAML ve OIDC aras\u0131ndaki temel farklar\u0131, avantajlar\u0131n\u0131, dezavantajlar\u0131n\u0131 ve uygulaman\u0131za en uygun kimlik do\u011frulama protokol\u00fcn\u00fc nas\u0131l se\u00e7ece\u011finizi bu kapsaml\u0131 rehberde ke\u015ffedin. G\u00fcvenli ve sorunsuz bir deneyim i\u00e7in do\u011fru ad\u0131m\u0131 at\u0131n.\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/saml-ve-oidc-uygulamaniz-icin-dogru-kimlik-dogrulama-protokolunu-secme\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/saml-ve-oidc-uygulamaniz-icin-dogru-kimlik-dogrulama-protokolunu-secme\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/saml-ve-oidc-uygulamaniz-icin-dogru-kimlik-dogrulama-protokolunu-secme\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"SAML ve OIDC: Uygulaman\u0131z \u0130\u00e7in Do\u011fru Kimlik Do\u011frulama Protokol\u00fcn\u00fc Se\u00e7me\"}]},{\"@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":"SAML ve OIDC: Uygulaman\u0131z \u0130\u00e7in Do\u011fru Kimlik Do\u011frulama Protokol\u00fcn\u00fc Se\u00e7me","description":"Modern uygulamalarda kullan\u0131c\u0131 kimlik do\u011frulama s\u00fcre\u00e7leri karma\u015f\u0131kla\u015f\u0131yor mu? SAML ve OIDC aras\u0131ndaki temel farklar\u0131, avantajlar\u0131n\u0131, dezavantajlar\u0131n\u0131 ve uygulaman\u0131za en uygun kimlik do\u011frulama protokol\u00fcn\u00fc nas\u0131l se\u00e7ece\u011finizi bu kapsaml\u0131 rehberde ke\u015ffedin. G\u00fcvenli ve sorunsuz bir deneyim i\u00e7in do\u011fru ad\u0131m\u0131 at\u0131n.","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\/saml-ve-oidc-uygulamaniz-icin-dogru-kimlik-dogrulama-protokolunu-secme\/","og_locale":"tr_TR","og_type":"article","og_title":"SAML ve OIDC: Uygulaman\u0131z \u0130\u00e7in Do\u011fru Kimlik Do\u011frulama Protokol\u00fcn\u00fc Se\u00e7me","og_description":"Modern uygulamalarda kullan\u0131c\u0131 kimlik do\u011frulama s\u00fcre\u00e7leri karma\u015f\u0131kla\u015f\u0131yor mu? SAML ve OIDC aras\u0131ndaki temel farklar\u0131, avantajlar\u0131n\u0131, dezavantajlar\u0131n\u0131 ve uygulaman\u0131za en uygun kimlik do\u011frulama protokol\u00fcn\u00fc nas\u0131l se\u00e7ece\u011finizi bu kapsaml\u0131 rehberde ke\u015ffedin. G\u00fcvenli ve sorunsuz bir deneyim i\u00e7in do\u011fru ad\u0131m\u0131 at\u0131n.","og_url":"https:\/\/fatihsoysal.com\/blog\/saml-ve-oidc-uygulamaniz-icin-dogru-kimlik-dogrulama-protokolunu-secme\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-12-02T14:31:09+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"25 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/saml-ve-oidc-uygulamaniz-icin-dogru-kimlik-dogrulama-protokolunu-secme\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/saml-ve-oidc-uygulamaniz-icin-dogru-kimlik-dogrulama-protokolunu-secme\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"SAML ve OIDC: Uygulaman\u0131z \u0130\u00e7in Do\u011fru Kimlik Do\u011frulama Protokol\u00fcn\u00fc Se\u00e7me","datePublished":"2025-12-02T14:31:09+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/saml-ve-oidc-uygulamaniz-icin-dogru-kimlik-dogrulama-protokolunu-secme\/"},"wordCount":4964,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/saml-ve-oidc-uygulamaniz-icin-dogru-kimlik-dogrulama-protokolunu-secme\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/saml-ve-oidc-uygulamaniz-icin-dogru-kimlik-dogrulama-protokolunu-secme\/","url":"https:\/\/fatihsoysal.com\/blog\/saml-ve-oidc-uygulamaniz-icin-dogru-kimlik-dogrulama-protokolunu-secme\/","name":"SAML ve OIDC: Uygulaman\u0131z \u0130\u00e7in Do\u011fru Kimlik Do\u011frulama Protokol\u00fcn\u00fc Se\u00e7me","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-12-02T14:31:09+00:00","description":"Modern uygulamalarda kullan\u0131c\u0131 kimlik do\u011frulama s\u00fcre\u00e7leri karma\u015f\u0131kla\u015f\u0131yor mu? SAML ve OIDC aras\u0131ndaki temel farklar\u0131, avantajlar\u0131n\u0131, dezavantajlar\u0131n\u0131 ve uygulaman\u0131za en uygun kimlik do\u011frulama protokol\u00fcn\u00fc nas\u0131l se\u00e7ece\u011finizi bu kapsaml\u0131 rehberde ke\u015ffedin. G\u00fcvenli ve sorunsuz bir deneyim i\u00e7in do\u011fru ad\u0131m\u0131 at\u0131n.","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/saml-ve-oidc-uygulamaniz-icin-dogru-kimlik-dogrulama-protokolunu-secme\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/saml-ve-oidc-uygulamaniz-icin-dogru-kimlik-dogrulama-protokolunu-secme\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/saml-ve-oidc-uygulamaniz-icin-dogru-kimlik-dogrulama-protokolunu-secme\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"SAML ve OIDC: Uygulaman\u0131z \u0130\u00e7in Do\u011fru Kimlik Do\u011frulama Protokol\u00fcn\u00fc Se\u00e7me"}]},{"@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\/35683","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=35683"}],"version-history":[{"count":0,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/35683\/revisions"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=35683"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=35683"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=35683"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}