{"id":43457,"date":"2026-07-19T21:02:02","date_gmt":"2026-07-19T18:02:02","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/keycloakta-basarisiz-giris-secenekleri-nasil-onarilir\/"},"modified":"2026-07-19T21:02:33","modified_gmt":"2026-07-19T18:02:33","slug":"keycloakta-basarisiz-giris-secenekleri-nasil-onarilir","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/keycloakta-basarisiz-giris-secenekleri-nasil-onarilir\/","title":{"rendered":"Keycloak&#8217;ta Ba\u015far\u0131s\u0131z Giri\u015f Se\u00e7enekleri Nas\u0131l Onar\u0131l\u0131r?"},"content":{"rendered":"<h2>Keycloak&#8217;ta Ba\u015far\u0131s\u0131z Giri\u015f Se\u00e7enekleri Nas\u0131l Onar\u0131l\u0131r?<\/h2>\n<p>Keycloak, modern uygulamalar i\u00e7in g\u00fc\u00e7l\u00fc bir kimlik ve eri\u015fim y\u00f6netimi (IAM) \u00e7\u00f6z\u00fcm\u00fcd\u00fcr. Ancak bazen kullan\u0131c\u0131lar, asl\u0131nda \u00e7al\u0131\u015fmamas\u0131 gereken bir giri\u015f se\u00e7ene\u011fini yanl\u0131\u015fl\u0131kla se\u00e7erek can s\u0131k\u0131c\u0131 hatalarla kar\u015f\u0131la\u015fabilirler. Bu durum, hem kullan\u0131c\u0131 deneyimini olumsuz etkiler hem de IT ekipleri i\u00e7in gereksiz i\u015f y\u00fck\u00fc olu\u015fturur. Bu makale, Keycloak&#8217;ta bu t\u00fcr ba\u015far\u0131s\u0131z giri\u015f se\u00e7eneklerinin nedenlerini, nas\u0131l tespit edilece\u011fini ve kal\u0131c\u0131 olarak nas\u0131l d\u00fczeltilece\u011fini ad\u0131m ad\u0131m a\u00e7\u0131kl\u0131yor.<\/p>\n<h2>Keycloak Temelleri: Kimlik ve Eri\u015fim Y\u00f6netimi Nedir?<\/h2>\n<p>Keycloak ile ilgili sorunlar\u0131 anlamadan \u00f6nce, kimlik ve eri\u015fim y\u00f6netimi (Identity and Access Management &#8211; IAM) kavram\u0131n\u0131n temelini kavramak \u00f6nemlidir. IAM, bir organizasyonun do\u011fru ki\u015filerin, do\u011fru kaynaklara, do\u011fru zamanda ve do\u011fru nedenlerle eri\u015fmesini sa\u011flayan g\u00fcvenlik \u00e7er\u00e7evesidir. Keycloak, bu \u00e7er\u00e7eveyi uygulamak i\u00e7in tasarlanm\u0131\u015f a\u00e7\u0131k kaynakl\u0131 bir \u00e7\u00f6z\u00fcmd\u00fcr. Kimlik do\u011frulama (authentication) ve yetkilendirme (authorization) s\u00fcre\u00e7lerini merkezi bir yerden y\u00f6neterek uygulamalar\u0131n g\u00fcvenli\u011fini art\u0131r\u0131r.<\/p>\n<p>Keycloak&#8217;un temel bile\u015fenleri aras\u0131nda <b>Realm (Alan)<\/b>, <b>Client (\u0130stemci)<\/b>, <b>User (Kullan\u0131c\u0131)<\/b> ve <b>Identity Provider (Kimlik Sa\u011flay\u0131c\u0131 &#8211; IdP)<\/b> bulunur. Bir Realm, izole edilmi\u015f bir ortam sa\u011flar ve kendi kullan\u0131c\u0131lar\u0131na, istemcilerine ve kimlik sa\u011flay\u0131c\u0131lar\u0131na sahiptir. Her bir uygulaman\u0131z veya hizmetiniz, Keycloak&#8217;ta bir Client olarak tan\u0131mlan\u0131r. Kullan\u0131c\u0131lar, kimlik bilgilerini Keycloak&#8217;a sunarak kimliklerini do\u011frular. Keycloak, bu kimlik bilgilerini kendi dahili kullan\u0131c\u0131 deposundan (\u00f6rne\u011fin veritaban\u0131) veya harici bir Identity Provider&#8217;dan (\u00f6rne\u011fin Google, GitHub, LDAP veya Active Directory) do\u011frulayabilir. Bu yap\u0131, i\u015fletmelerin farkl\u0131 uygulamalar aras\u0131nda tek oturum a\u00e7ma (Single Sign-On &#8211; SSO) deneyimi sunmas\u0131na olanak tan\u0131r, b\u00f6ylece kullan\u0131c\u0131lar her uygulama i\u00e7in ayr\u0131 ayr\u0131 giri\u015f yapmak zorunda kalmazlar.<\/p>\n<p>\u00d6zellikle harici kimlik sa\u011flay\u0131c\u0131lar kullan\u0131ld\u0131\u011f\u0131nda veya \u00f6zel kimlik do\u011frulama ak\u0131\u015flar\u0131 (authentication flows) yap\u0131land\u0131r\u0131ld\u0131\u011f\u0131nda, karma\u015f\u0131kl\u0131k artabilir. Bir IdP&#8217;nin yanl\u0131\u015f yap\u0131land\u0131r\u0131lmas\u0131, bir ak\u0131\u015f\u0131n devre d\u0131\u015f\u0131 b\u0131rak\u0131lmas\u0131 veya istemci ayarlar\u0131n\u0131n hatal\u0131 olmas\u0131 gibi durumlar, kullan\u0131c\u0131lar\u0131n asl\u0131nda \u00e7al\u0131\u015fmayan bir giri\u015f se\u00e7ene\u011fiyle kar\u015f\u0131la\u015fmas\u0131na yol a\u00e7abilir. \u00d6rne\u011fin, bir \u015firket \u00e7al\u0131\u015fanlar\u0131 i\u00e7in Active Directory entegrasyonu kurarken, harici i\u015f ortaklar\u0131 i\u00e7in farkl\u0131 bir kimlik sa\u011flay\u0131c\u0131 (\u00f6rne\u011fin bir sosyal medya hesab\u0131) sunabilir. Bu senaryoda, her iki grubun da do\u011fru giri\u015f se\u00e7ene\u011fine y\u00f6nlendirilmesi ve ba\u015far\u0131s\u0131z se\u00e7eneklerin gizlenmesi kritik \u00f6nem ta\u015f\u0131r. Keycloak&#8217;un sa\u011flad\u0131\u011f\u0131 esneklik, ayn\u0131 zamanda yanl\u0131\u015f yap\u0131land\u0131rma riskini de beraberinde getirebilir. Bu nedenle, Keycloak&#8217;un nas\u0131l \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 ve bile\u015fenlerinin birbirleriyle nas\u0131l etkile\u015fim kurdu\u011funu anlamak, potansiyel sorunlar\u0131 \u00e7\u00f6zmek i\u00e7in ilk ad\u0131md\u0131r. Bu temel bilgi olmadan, bir giri\u015f se\u00e7ene\u011finin neden ba\u015far\u0131s\u0131z oldu\u011funu anlamak veya do\u011fru \u00e7\u00f6z\u00fcm\u00fc uygulamak zorla\u015facakt\u0131r. Dolay\u0131s\u0131yla, bir sorunla kar\u015f\u0131la\u015ft\u0131\u011f\u0131m\u0131zda \u00f6ncelikle bu temel kavramlar\u0131 g\u00f6zden ge\u00e7irmek, sorunun kayna\u011f\u0131na inmemizi kolayla\u015ft\u0131racakt\u0131r.<\/p>\n<h2>Ba\u015far\u0131s\u0131z Giri\u015f Se\u00e7ene\u011fi Sorununun K\u00f6k Nedenleri Nelerdir?<\/h2>\n<p>Keycloak ortamlar\u0131nda kullan\u0131c\u0131lar\u0131n ba\u015far\u0131s\u0131z giri\u015f se\u00e7enekleriyle kar\u015f\u0131la\u015fmas\u0131n\u0131n bir\u00e7ok farkl\u0131 k\u00f6k nedeni olabilir. Bu nedenleri anlamak, sorunun do\u011fru bir \u015fekilde te\u015fhis edilip \u00e7\u00f6z\u00fclmesi i\u00e7in hayati \u00f6neme sahiptir. En yayg\u0131n k\u00f6k nedenlerden baz\u0131lar\u0131 \u015funlard\u0131r:<\/p>\n<ul>\n<li>\n        <strong>Yanl\u0131\u015f Yap\u0131land\u0131r\u0131lm\u0131\u015f Kimlik Sa\u011flay\u0131c\u0131lar (Identity Providers &#8211; IdP&#8217;ler):<\/strong> En s\u0131k kar\u015f\u0131la\u015f\u0131lan sorunlardan biri, harici kimlik sa\u011flay\u0131c\u0131lar\u0131n (\u00f6rne\u011fin Google, Facebook, Azure AD, LDAP veya SAML\/OIDC tabanl\u0131 \u00f6zel IdP&#8217;ler) Keycloak&#8217;ta hatal\u0131 yap\u0131land\u0131r\u0131lmas\u0131d\u0131r. Bu, yanl\u0131\u015f istemci kimli\u011fi (client ID), yanl\u0131\u015f istemci s\u0131rr\u0131 (client secret), hatal\u0131 y\u00f6nlendirme URI&#8217;leri (redirect URIs), yanl\u0131\u015f u\u00e7 nokta URL&#8217;leri veya eksik yetkilendirme kapsamlar\u0131 (scopes) i\u00e7erebilir. \u00d6rne\u011fin, bir IdP&#8217;nin meta veri URL&#8217;si yanl\u0131\u015f girilirse veya sertifika ge\u00e7erlili\u011fi sona ererse, o IdP \u00fczerinden kimlik do\u011frulama giri\u015fimi ba\u015far\u0131s\u0131z olacakt\u0131r. Kullan\u0131c\u0131, bu se\u00e7ene\u011fi g\u00f6rd\u00fc\u011f\u00fcnde ve t\u0131klad\u0131\u011f\u0131nda, Keycloak veya IdP taraf\u0131ndan bir hata mesaj\u0131 alacakt\u0131r.\n    <\/li>\n<li>\n        <strong>Devre D\u0131\u015f\u0131 B\u0131rak\u0131lm\u0131\u015f Kimlik Do\u011frulama Ak\u0131\u015flar\u0131 (Authentication Flows):<\/strong> Keycloak, kullan\u0131c\u0131lar\u0131n kimliklerini do\u011frulamak i\u00e7in \u00e7e\u015fitli ak\u0131\u015flar kullan\u0131r. Bu ak\u0131\u015flar, bir dizi ad\u0131m ve eylemi i\u00e7erir (\u00f6rne\u011fin, kullan\u0131c\u0131 ad\u0131\/\u015fifre, OTP, \u00e7ok fakt\u00f6rl\u00fc kimlik do\u011frulama). Bazen bir y\u00f6netici, belirli bir ak\u0131\u015f\u0131 veya ak\u0131\u015f i\u00e7indeki bir ad\u0131m\u0131 yanl\u0131\u015fl\u0131kla devre d\u0131\u015f\u0131 b\u0131rakabilir veya hatal\u0131 yap\u0131land\u0131rabilir. \u00d6rne\u011fin, bir &#8220;Browser&#8221; ak\u0131\u015f\u0131nda &#8220;Cookie&#8221; veya &#8220;Username-Password&#8221; ad\u0131mlar\u0131 devre d\u0131\u015f\u0131 b\u0131rak\u0131l\u0131rsa, ilgili giri\u015f se\u00e7enekleri \u00e7al\u0131\u015fmayacakt\u0131r. Bu durum, \u00f6zellikle \u00f6zelle\u015ftirilmi\u015f ak\u0131\u015flar olu\u015fturulurken veya mevcut ak\u0131\u015flarda de\u011fi\u015fiklik yap\u0131l\u0131rken ortaya \u00e7\u0131kabilir.\n    <\/li>\n<li>\n        <strong>Hatal\u0131 \u0130stemci (Client) Ayarlar\u0131:<\/strong> Keycloak&#8217;ta her uygulama bir istemci olarak tan\u0131mlan\u0131r ve bu istemcilerin kendi ayarlar\u0131 vard\u0131r. Hatal\u0131 istemci ayarlar\u0131, ba\u015far\u0131s\u0131z giri\u015f se\u00e7eneklerine yol a\u00e7abilir. \u00d6rne\u011fin, bir istemcinin &#8220;ge\u00e7erli y\u00f6nlendirme URI&#8217;leri&#8221; listesinde eksik veya yanl\u0131\u015f bir URL bulunmas\u0131, kimlik do\u011frulama sonras\u0131 kullan\u0131c\u0131n\u0131n uygulamaya geri y\u00f6nlendirilememesine ve bir hatayla kar\u015f\u0131la\u015fmas\u0131na neden olur. Benzer \u015fekilde, bir istemcinin &#8220;kimlik do\u011frulama ak\u0131\u015f\u0131&#8221; (authentication flow) yanl\u0131\u015f ayarlanm\u0131\u015fsa, beklenen davran\u0131\u015f ger\u00e7ekle\u015fmeyebilir.\n    <\/li>\n<li>\n        <strong>Kullan\u0131c\u0131 Federasyonu (User Federation) Sorunlar\u0131:<\/strong> Keycloak, kullan\u0131c\u0131lar\u0131 harici dizinlerden (\u00f6rne\u011fin LDAP, Active Directory) senkronize edebilir veya do\u011frudan bunlarla kimlik do\u011frulama yapabilir. Kullan\u0131c\u0131 federasyonu sa\u011flay\u0131c\u0131s\u0131n\u0131n ba\u011flant\u0131 ayarlar\u0131nda (host, port, bind DN, \u015fifre) bir sorun olmas\u0131, a\u011f ba\u011flant\u0131 sorunlar\u0131 veya dizin sunucusunun eri\u015filemez olmas\u0131, bu sa\u011flay\u0131c\u0131 \u00fczerinden kimlik do\u011frulama giri\u015fimlerinin ba\u015far\u0131s\u0131z olmas\u0131na neden olur. Kullan\u0131c\u0131lar, kendi kimlik bilgilerinin do\u011fru oldu\u011funu d\u00fc\u015f\u00fcnseler bile, Keycloak bu bilgileri do\u011frulayamad\u0131\u011f\u0131 i\u00e7in giri\u015f yapamayacakt\u0131r.\n    <\/li>\n<li>\n        <strong>Realm Politikalar\u0131 ve K\u0131s\u0131tlamalar:<\/strong> Keycloak, bir Realm d\u00fczeyinde \u00e7e\u015fitli politikalar ve k\u0131s\u0131tlamalar uygulaman\u0131za olanak tan\u0131r. \u00d6rne\u011fin, belirli IP adreslerinden eri\u015fimi k\u0131s\u0131tlamak, belirli kullan\u0131c\u0131 gruplar\u0131 i\u00e7in \u00e7ok fakt\u00f6rl\u00fc kimlik do\u011frulamay\u0131 zorunlu k\u0131lmak veya parola karma\u015f\u0131kl\u0131\u011f\u0131 gereksinimlerini belirlemek gibi. Bu politikalar, yanl\u0131\u015f yap\u0131land\u0131r\u0131ld\u0131\u011f\u0131nda veya beklenmedik bir \u015fekilde tetiklendi\u011finde, kullan\u0131c\u0131lar\u0131n giri\u015f yapmas\u0131n\u0131 engelleyebilir ve ba\u015far\u0131s\u0131z giri\u015f se\u00e7ene\u011fi izlenimi yaratabilir. \u00d6rne\u011fin, bir kullan\u0131c\u0131n\u0131n hesab\u0131 \u00e7ok say\u0131da ba\u015far\u0131s\u0131z deneme sonras\u0131 kilitlenmi\u015fse, kullan\u0131c\u0131 do\u011fru \u015fifreyi girse bile giri\u015f yapamayacakt\u0131r.\n    <\/li>\n<li>\n        <strong>G\u00fcncel Olmayan veya Eksik Sertifikalar:<\/strong> \u00d6zellikle SAML veya OIDC tabanl\u0131 kimlik sa\u011flay\u0131c\u0131larla entegrasyonlarda sertifikalar\u0131n rol\u00fc b\u00fcy\u00fckt\u00fcr. E\u011fer Keycloak veya harici IdP aras\u0131ndaki ileti\u015fim i\u00e7in kullan\u0131lan TLS\/SSL sertifikalar\u0131 g\u00fcncel de\u011filse, s\u00fcresi dolmu\u015fsa veya yanl\u0131\u015f yap\u0131land\u0131r\u0131lm\u0131\u015fsa, g\u00fcvenli ba\u011flant\u0131 kurulamayacak ve kimlik do\u011frulama ba\u015far\u0131s\u0131z olacakt\u0131r.\n    <\/li>\n<\/ul>\n<p>Bu k\u00f6k nedenlerin her biri, farkl\u0131 hata mesajlar\u0131na ve farkl\u0131 kullan\u0131c\u0131 deneyimlerine yol a\u00e7abilir. Sorunu \u00e7\u00f6zmek i\u00e7in ilk ad\u0131m, hatan\u0131n tam olarak nerede ve neden meydana geldi\u011fini belirlemektir. Bu nedenle, Keycloak y\u00f6netim konsolu, sunucu loglar\u0131 ve a\u011f trafi\u011fi analizi gibi ara\u00e7lar, sorunun kayna\u011f\u0131n\u0131 bulmada kritik \u00f6neme sahiptir. Bir sonraki b\u00f6l\u00fcmde, bu te\u015fhis y\u00f6ntemlerini daha detayl\u0131 inceleyece\u011fiz.<\/p>\n<h2>Keycloak Y\u00f6netim Konsolu \u00dczerinden Tan\u0131 ve Te\u015fhis Nas\u0131l Yap\u0131l\u0131r?<\/h2>\n<p>Keycloak&#8217;ta ba\u015far\u0131s\u0131z bir giri\u015f se\u00e7ene\u011fiyle kar\u015f\u0131la\u015f\u0131ld\u0131\u011f\u0131nda, sorunun kayna\u011f\u0131n\u0131 bulmak i\u00e7in y\u00f6netim konsolu en \u00f6nemli ara\u00e7lardan biridir. Do\u011fru yerlere bakarak ve ad\u0131mlar\u0131 takip ederek sorunu h\u0131zla te\u015fhis edebilirsiniz. \u0130\u015fte ad\u0131m ad\u0131m bir tan\u0131 ve te\u015fhis rehberi:<\/p>\n<h3>1. Keycloak Sunucu Loglar\u0131n\u0131 Kontrol Edin<\/h3>\n<p>Herhangi bir Keycloak sorunuyla kar\u015f\u0131la\u015f\u0131ld\u0131\u011f\u0131nda ilk bakman\u0131z gereken yer sunucu loglar\u0131d\u0131r. Keycloak, genellikle WildFly\/JBoss veya Quarkus \u00fczerinde \u00e7al\u0131\u015ft\u0131\u011f\u0131 i\u00e7in, log dosyalar\u0131 uygulaman\u0131n da\u011f\u0131t\u0131m\u0131na g\u00f6re farkl\u0131 yerlerde bulunabilir (\u00f6rne\u011fin, <code>\/opt\/keycloak\/standalone\/log\/server.log<\/code> veya <code>\/opt\/keycloak\/logs\/quarkus.log<\/code>). Loglarda &#8220;ERROR&#8221;, &#8220;WARN&#8221; veya &#8220;FAILURE&#8221; gibi anahtar kelimeleri aray\u0131n. Genellikle kimlik do\u011frulama hatalar\u0131, IdP ba\u011flant\u0131 sorunlar\u0131 veya yap\u0131land\u0131rma hatalar\u0131 hakk\u0131nda detayl\u0131 bilgiler burada yer al\u0131r. \u00d6zellikle, bir kullan\u0131c\u0131n\u0131n hangi IdP&#8217;yi kullanmaya \u00e7al\u0131\u015ft\u0131\u011f\u0131 ve hatan\u0131n hangi a\u015famada meydana geldi\u011fi gibi bilgiler loglarda bulunabilir.<\/p>\n<div class=\"code-container\">\n<pre><code>tail -f \/opt\/keycloak\/logs\/quarkus.log | grep -i \"error|fail\"<\/code><\/pre>\n<\/div>\n<p>Bu komut, log dosyas\u0131n\u0131 ger\u00e7ek zamanl\u0131 olarak izler ve hata veya ba\u015far\u0131s\u0131zl\u0131k i\u00e7eren sat\u0131rlar\u0131 g\u00f6sterir.<\/p>\n<h3>2. Kimlik Sa\u011flay\u0131c\u0131 (Identity Provider) Ayarlar\u0131n\u0131 Kontrol Edin<\/h3>\n<p>Y\u00f6netim konsolunda, ilgili Realm&#8217;e gidin ve sol men\u00fcden &#8220;Identity Providers&#8221; se\u00e7ene\u011fini se\u00e7in. Burada, ba\u015far\u0131s\u0131z olan giri\u015f se\u00e7ene\u011fiyle ili\u015fkili IdP&#8217;yi bulun ve ayarlar\u0131n\u0131 g\u00f6zden ge\u00e7irin:<\/p>\n<ul>\n<li><strong>Etkin Durum (Enabled):<\/strong> IdP&#8217;nin &#8220;Enabled&#8221; (Etkin) oldu\u011fundan emin olun. Devre d\u0131\u015f\u0131 b\u0131rak\u0131lm\u0131\u015f bir IdP, giri\u015f ekran\u0131nda g\u00f6r\u00fcnse bile \u00e7al\u0131\u015fmayacakt\u0131r.<\/li>\n<li><strong>\u0130stemci Kimli\u011fi (Client ID) ve S\u0131rr\u0131 (Client Secret):<\/strong> Harici IdP&#8217;deki (\u00f6rne\u011fin Google Console, Azure Portal) istemci kimli\u011fi ve s\u0131rr\u0131n\u0131n Keycloak&#8217;ta do\u011fru girildi\u011finden emin olun.<\/li>\n<li><strong>Y\u00f6nlendirme URI&#8217;leri (Redirect URIs):<\/strong> Keycloak&#8217;un IdP&#8217;ye bildirdi\u011fi y\u00f6nlendirme URI&#8217;sinin (genellikle <code>https:\/\/your-keycloak-url\/realms\/your-realm\/broker\/your-idp-alias\/endpoint<\/code> format\u0131nda) hem Keycloak&#8217;ta hem de harici IdP&#8217;de do\u011fru bir \u015fekilde tan\u0131mland\u0131\u011f\u0131ndan emin olun. Uyumsuzluklar, kimlik do\u011frulama sonras\u0131 y\u00f6nlendirme hatalar\u0131na yol a\u00e7ar.<\/li>\n<li><strong>Meta Veri URL&#8217;leri ve Sertifikalar:<\/strong> SAML veya OIDC tabanl\u0131 IdP&#8217;ler i\u00e7in meta veri URL&#8217;lerinin do\u011fru ve eri\u015filebilir oldu\u011fundan emin olun. Sertifika ge\u00e7erlili\u011fini kontrol edin.<\/li>\n<\/ul>\n<h3>3. Kimlik Do\u011frulama Ak\u0131\u015flar\u0131n\u0131 (Authentication Flows) G\u00f6zden Ge\u00e7irin<\/h3>\n<p>Sol men\u00fcden &#8220;Authentication&#8221; se\u00e7ene\u011fine gidin ve &#8220;Flows&#8221; sekmesini se\u00e7in. Burada, Realm&#8217;inizin varsay\u0131lan kimlik do\u011frulama ak\u0131\u015flar\u0131n\u0131 (\u00f6rne\u011fin &#8220;Browser&#8221;, &#8220;Direct Grant&#8221;) g\u00f6receksiniz. Ba\u015far\u0131s\u0131z olan giri\u015f se\u00e7ene\u011finin hangi ak\u0131\u015fa ba\u011fl\u0131 oldu\u011funu belirleyin (genellikle &#8220;Browser&#8221; ak\u0131\u015f\u0131 kullan\u0131l\u0131r) ve bu ak\u0131\u015f\u0131n ad\u0131mlar\u0131n\u0131 inceleyin:<\/p>\n<ul>\n<li><strong>Ad\u0131mlar\u0131n Durumu:<\/strong> Ak\u0131\u015f i\u00e7indeki her bir ad\u0131m\u0131n (\u00f6rne\u011fin &#8220;Cookie&#8221;, &#8220;Username Password Form&#8221;, &#8220;Identity Provider Redirector&#8221;) etkin oldu\u011fundan ve do\u011fru bir \u015fekilde yap\u0131land\u0131r\u0131ld\u0131\u011f\u0131ndan emin olun.<\/li>\n<li><strong>Ko\u015fullar ve Y\u00fcr\u00fctmeler:<\/strong> Bir ad\u0131m\u0131n belirli ko\u015fullara ba\u011fl\u0131 olarak \u00e7al\u0131\u015f\u0131p \u00e7al\u0131\u015fmad\u0131\u011f\u0131n\u0131 kontrol edin. Yanl\u0131\u015f yap\u0131land\u0131r\u0131lm\u0131\u015f bir ko\u015ful, ak\u0131\u015f\u0131n beklenmedik \u015fekilde davranmas\u0131na neden olabilir.<\/li>\n<li><strong>&#8220;Identity Provider Redirector&#8221; Konfig\u00fcrasyonu:<\/strong> E\u011fer bir IdP \u00fczerinden giri\u015f yap\u0131l\u0131yorsa, &#8220;Identity Provider Redirector&#8221; ad\u0131m\u0131n\u0131n do\u011fru IdP takma ad\u0131n\u0131 (alias) hedefledi\u011finden emin olun.<\/li>\n<\/ul>\n<h3>4. \u0130stemci (Client) Ayarlar\u0131n\u0131 \u0130nceleyin<\/h3>\n<p>Sol men\u00fcden &#8220;Clients&#8221; se\u00e7ene\u011fine gidin ve uygulaman\u0131zla ili\u015fkili istemciyi se\u00e7in. Burada \u00f6zellikle \u015funlara dikkat edin:<\/p>\n<ul>\n<li><strong>Eri\u015fim T\u00fcr\u00fc (Access Type):<\/strong> \u0130stemcinin do\u011fru eri\u015fim t\u00fcr\u00fcne sahip oldu\u011fundan emin olun (\u00f6rne\u011fin, &#8220;confidential&#8221; veya &#8220;public&#8221;).<\/li>\n<li><strong>Ge\u00e7erli Y\u00f6nlendirme URI&#8217;leri (Valid Redirect URIs):<\/strong> Uygulaman\u0131z\u0131n kimlik do\u011frulama sonras\u0131 Keycloak&#8217;tan geri d\u00f6nece\u011fi t\u00fcm URL&#8217;lerin burada eksiksiz ve do\u011fru bir \u015fekilde listelendi\u011finden emin olun.<\/li>\n<li><strong>Kimlik Do\u011frulama Ak\u0131\u015f\u0131 (Authentication Flow):<\/strong> \u0130stemcinin, giri\u015f i\u00e7in do\u011fru kimlik do\u011frulama ak\u0131\u015f\u0131n\u0131 kulland\u0131\u011f\u0131ndan emin olun.<\/li>\n<\/ul>\n<h3>5. Kullan\u0131c\u0131 Federasyonu (User Federation) Sa\u011flay\u0131c\u0131lar\u0131n\u0131 Kontrol Edin<\/h3>\n<p>E\u011fer kullan\u0131c\u0131lar\u0131n\u0131z harici bir LDAP veya Active Directory gibi bir dizinden geliyorsa, &#8220;User Federation&#8221; b\u00f6l\u00fcm\u00fcne gidin. \u0130lgili sa\u011flay\u0131c\u0131n\u0131n ayarlar\u0131n\u0131 kontrol edin:<\/p>\n<ul>\n<li><strong>Ba\u011flant\u0131 Ayarlar\u0131:<\/strong> Host, port, bind DN ve kimlik bilgileri gibi ba\u011flant\u0131 ayarlar\u0131n\u0131n do\u011fru oldu\u011fundan emin olun.<\/li>\n<li><strong>A\u011f Eri\u015fimi:<\/strong> Keycloak sunucusundan LDAP\/AD sunucusuna a\u011f eri\u015fimi olup olmad\u0131\u011f\u0131n\u0131 kontrol edin (\u00f6rne\u011fin, <code>ping<\/code> veya <code>telnet<\/code> komutlar\u0131yla).<\/li>\n<li><strong>Senkronizasyon Ayarlar\u0131:<\/strong> Kullan\u0131c\u0131lar\u0131n do\u011fru bir \u015fekilde senkronize edildi\u011finden emin olun.<\/li>\n<\/ul>\n<h3>6. A\u011f Trafi\u011fini \u0130zleyin<\/h3>\n<p>Taray\u0131c\u0131n\u0131z\u0131n geli\u015ftirici ara\u00e7lar\u0131n\u0131 (F12) kullanarak a\u011f trafi\u011fini izlemek, kimlik do\u011frulama ak\u0131\u015f\u0131n\u0131n nerede kesildi\u011fini anlamak i\u00e7in \u00e7ok faydal\u0131d\u0131r. Bir giri\u015f se\u00e7ene\u011fine t\u0131klad\u0131\u011f\u0131n\u0131zda ger\u00e7ekle\u015fen HTTP isteklerini ve yan\u0131tlar\u0131n\u0131 inceleyin. \u00d6zellikle HTTP 4xx veya 5xx durum kodlar\u0131 i\u00e7eren yan\u0131tlar, sorunun kayna\u011f\u0131 hakk\u0131nda ipu\u00e7lar\u0131 verebilir. Y\u00f6nlendirme zincirlerini takip edin ve herhangi bir beklenmedik y\u00f6nlendirme veya hata mesaj\u0131 olup olmad\u0131\u011f\u0131na bak\u0131n.<\/p>\n<p>Bu ad\u0131mlar\u0131 sistematik bir \u015fekilde takip ederek, Keycloak&#8217;ta ba\u015far\u0131s\u0131z bir giri\u015f se\u00e7ene\u011finin temel nedenini b\u00fcy\u00fck olas\u0131l\u0131kla bulabilir ve bir sonraki a\u015famada do\u011fru \u00e7\u00f6z\u00fcm yollar\u0131n\u0131 uygulayabilirsiniz.<\/p>\n<h2>\u00c7\u00f6z\u00fcm Yollar\u0131: Ba\u015far\u0131s\u0131z Giri\u015f Se\u00e7eneklerini Kal\u0131c\u0131 Olarak D\u00fczeltmek<\/h2>\n<p>Ba\u015far\u0131s\u0131z giri\u015f se\u00e7eneklerinin k\u00f6k nedenlerini te\u015fhis ettikten sonra, bu sorunlar\u0131 kal\u0131c\u0131 olarak \u00e7\u00f6zmek i\u00e7in \u00e7e\u015fitli ad\u0131mlar atabiliriz. \u00c7\u00f6z\u00fcm yollar\u0131, sorunun temel nedenine ba\u011fl\u0131 olarak de\u011fi\u015fecektir. \u0130\u015fte en yayg\u0131n senaryolar ve bunlar\u0131n \u00e7\u00f6z\u00fcm yollar\u0131:<\/p>\n<h3>1. Yanl\u0131\u015f Yap\u0131land\u0131r\u0131lm\u0131\u015f Kimlik Sa\u011flay\u0131c\u0131lar\u0131 (IdP&#8217;ler) \u0130\u00e7in \u00c7\u00f6z\u00fcmler<\/h3>\n<p>E\u011fer sorun IdP yap\u0131land\u0131rmas\u0131ndan kaynaklan\u0131yorsa, a\u015fa\u011f\u0131daki ad\u0131mlar\u0131 izleyin:<\/p>\n<ul>\n<li><strong>Ayarlar\u0131 Do\u011frulay\u0131n ve D\u00fczeltin:<\/strong> Keycloak y\u00f6netim konsolunda &#8220;Identity Providers&#8221; b\u00f6l\u00fcm\u00fcne gidin. \u0130lgili IdP&#8217;yi se\u00e7in ve &#8220;Client ID&#8221;, &#8220;Client Secret&#8221;, &#8220;Authorization URL&#8221;, &#8220;Token URL&#8221;, &#8220;User Info URL&#8221; gibi alanlar\u0131 harici IdP&#8217;nin (\u00f6rne\u011fin Google Cloud Console, Azure AD App Registrations) dok\u00fcmantasyonu veya yap\u0131land\u0131rmas\u0131yla kar\u015f\u0131la\u015ft\u0131rarak do\u011frulay\u0131n. Yanl\u0131\u015f veya eksik bilgileri d\u00fczeltin.<\/li>\n<li><strong>Y\u00f6nlendirme URI&#8217;lerini G\u00fcncelleyin:<\/strong> Keycloak&#8217;ta tan\u0131mlanan y\u00f6nlendirme URI&#8217;sinin (\u00f6rne\u011fin <code>https:\/\/your-keycloak-url\/realms\/your-realm\/broker\/your-idp-alias\/endpoint<\/code>) hem Keycloak&#8217;ta hem de harici IdP taraf\u0131nda birebir e\u015fle\u015fti\u011finden emin olun. Genellikle, IdP&#8217;de bu URI&#8217;nin &#8220;izin verilen y\u00f6nlendirme URI&#8217;leri&#8221; veya &#8220;geri arama URL&#8217;leri&#8221; listesine eklenmesi gerekir.<\/li>\n<li><strong>Sertifika ve Anahtar Kontrol\u00fc:<\/strong> SAML veya OIDC gibi protokollerde kullan\u0131lan sertifikalar\u0131n ge\u00e7erlilik s\u00fcrelerini kontrol edin. E\u011fer bir sertifika s\u00fcresi dolmu\u015fsa veya yanl\u0131\u015f yap\u0131land\u0131r\u0131lm\u0131\u015fsa, g\u00fcncel ve do\u011fru sertifikalar\u0131 y\u00fckleyin.<\/li>\n<li><strong>IdP&#8217;yi Devre D\u0131\u015f\u0131 B\u0131rakma veya Gizleme:<\/strong> E\u011fer bir IdP ge\u00e7ici olarak kullan\u0131lam\u0131yorsa veya art\u0131k kullan\u0131lmayacaksa, y\u00f6netim konsolunda &#8220;Identity Providers&#8221; b\u00f6l\u00fcm\u00fcnden IdP&#8217;nin &#8220;Enabled&#8221; (Etkin) se\u00e7ene\u011fini kapatarak veya &#8220;Hide on Login Page&#8221; (Giri\u015f Sayfas\u0131nda Gizle) se\u00e7ene\u011fini i\u015faretleyerek giri\u015f sayfas\u0131nda g\u00f6r\u00fcnmesini engelleyebilirsiniz. Bu, kullan\u0131c\u0131lar\u0131n \u00e7al\u0131\u015fmayan bir se\u00e7ene\u011fi se\u00e7mesini \u00f6nler.<\/li>\n<\/ul>\n<h3>2. Devre D\u0131\u015f\u0131 B\u0131rak\u0131lm\u0131\u015f veya Hatal\u0131 Kimlik Do\u011frulama Ak\u0131\u015flar\u0131 \u0130\u00e7in \u00c7\u00f6z\u00fcmler<\/h3>\n<p>Kimlik do\u011frulama ak\u0131\u015flar\u0131ndaki sorunlar\u0131 \u00e7\u00f6zmek i\u00e7in:<\/p>\n<ul>\n<li><strong>Ak\u0131\u015f Ad\u0131mlar\u0131n\u0131 Etkinle\u015ftirin:<\/strong> &#8220;Authentication&#8221; -> &#8220;Flows&#8221; b\u00f6l\u00fcm\u00fcne gidin. \u0130lgili ak\u0131\u015f\u0131 (\u00f6rne\u011fin &#8220;Browser&#8221;) se\u00e7in ve ba\u015far\u0131s\u0131z olan ad\u0131m\u0131n (\u00f6rne\u011fin &#8220;Username Password Form&#8221; veya &#8220;Identity Provider Redirector&#8221;) &#8220;Enabled&#8221; oldu\u011fundan ve &#8220;Requirement&#8221; ayar\u0131n\u0131n (\u00f6rne\u011fin &#8220;REQUIRED&#8221;, &#8220;ALTERNATIVE&#8221;) do\u011fru oldu\u011fundan emin olun.<\/li>\n<li><strong>Ak\u0131\u015flar\u0131 S\u0131f\u0131rlama:<\/strong> E\u011fer \u00f6zelle\u015ftirilmi\u015f bir ak\u0131\u015fta \u00e7ok fazla de\u011fi\u015fiklik yap\u0131ld\u0131ysa ve sorun \u00e7\u00f6z\u00fclemiyorsa, ak\u0131\u015f\u0131 varsay\u0131lan ayarlar\u0131na s\u0131f\u0131rlamak bir \u00e7\u00f6z\u00fcm olabilir. Ancak bu, t\u00fcm \u00f6zel ayarlar\u0131 kaybedece\u011finiz anlam\u0131na gelir, bu y\u00fczden dikkatli olun. Alternatif olarak, varsay\u0131lan ak\u0131\u015f\u0131 kopyalay\u0131p yeni bir ak\u0131\u015f olu\u015fturarak test yapabilirsiniz.<\/li>\n<li><strong>&#8220;Identity Provider Redirector&#8221; Ad\u0131m\u0131n\u0131 Yap\u0131land\u0131rma:<\/strong> E\u011fer bir IdP \u00fczerinden otomatik y\u00f6nlendirme bekleniyorsa, &#8220;Identity Provider Redirector&#8221; ad\u0131m\u0131n\u0131n do\u011fru bir \u015fekilde yap\u0131land\u0131r\u0131ld\u0131\u011f\u0131ndan ve &#8220;Default Identity Provider&#8221; alan\u0131n\u0131n do\u011fru IdP takma ad\u0131n\u0131 i\u00e7erdi\u011finden emin olun.<\/li>\n<\/ul>\n<h3>3. Hatal\u0131 \u0130stemci (Client) Ayarlar\u0131 \u0130\u00e7in \u00c7\u00f6z\u00fcmler<\/h3>\n<p>\u0130stemci ayarlar\u0131ndan kaynaklanan sorunlar\u0131 gidermek i\u00e7in:<\/p>\n<ul>\n<li><strong>Ge\u00e7erli Y\u00f6nlendirme URI&#8217;lerini G\u00fcncelleyin:<\/strong> &#8220;Clients&#8221; b\u00f6l\u00fcm\u00fcnde ilgili istemciyi se\u00e7in. &#8220;Valid Redirect URIs&#8221; alan\u0131na uygulaman\u0131z\u0131n Keycloak&#8217;tan geri d\u00f6nece\u011fi t\u00fcm URL&#8217;leri eksiksiz ve do\u011fru bir \u015fekilde ekleyin. \u00d6rne\u011fin, <code>http:\/\/localhost:8080\/*<\/code> veya <code>https:\/\/uygulama.sirket.com\/callback<\/code> gibi. Wildcard (<code>*<\/code>) kullan\u0131rken dikkatli olun ve sadece g\u00fcvenli alanlarda kullan\u0131n.<\/li>\n<li><strong>Web Origin&#8217;leri Kontrol Edin:<\/strong> &#8220;Web Origins&#8221; alan\u0131n\u0131n uygulaman\u0131z\u0131n \u00e7al\u0131\u015ft\u0131\u011f\u0131 domainleri i\u00e7erdi\u011finden emin olun.<\/li>\n<li><strong>Gerekli Rol ve Kapsamlar\u0131 Kontrol Edin:<\/strong> \u0130stemcinin, kimlik do\u011frulama sonras\u0131 almas\u0131 gereken rollere veya kapsam izinlerine (scopes) sahip oldu\u011fundan emin olun.<\/li>\n<\/ul>\n<h3>4. Kullan\u0131c\u0131 Federasyonu (User Federation) Sorunlar\u0131 \u0130\u00e7in \u00c7\u00f6z\u00fcmler<\/h3>\n<p>Harici dizinlerden kaynaklanan sorunlar\u0131 \u00e7\u00f6zmek i\u00e7in:<\/p>\n<ul>\n<li><strong>Ba\u011flant\u0131 Ayarlar\u0131n\u0131 Do\u011frulay\u0131n:<\/strong> &#8220;User Federation&#8221; b\u00f6l\u00fcm\u00fcnde LDAP veya AD sa\u011flay\u0131c\u0131n\u0131z\u0131n &#8220;Connection URL&#8221;, &#8220;Bind DN&#8221;, &#8220;Bind Credential&#8221; gibi ayarlar\u0131n\u0131 kontrol edin. Do\u011fru ve g\u00fcncel kimlik bilgilerini kulland\u0131\u011f\u0131n\u0131zdan emin olun.<\/li>\n<li><strong>A\u011f Ba\u011flant\u0131s\u0131n\u0131 Kontrol Edin:<\/strong> Keycloak sunucusundan federasyon sa\u011flay\u0131c\u0131s\u0131na a\u011f eri\u015fimi oldu\u011fundan emin olun. G\u00fcvenlik duvar\u0131 (firewall) kurallar\u0131n\u0131 veya a\u011f yap\u0131land\u0131rmas\u0131n\u0131 kontrol edin.<\/li>\n<li><strong>Senkronizasyonu Test Edin:<\/strong> Federasyon sa\u011flay\u0131c\u0131s\u0131n\u0131n &#8220;Test Connection&#8221; veya &#8220;Synchronize all users&#8221; gibi \u00f6zelliklerini kullanarak ba\u011flant\u0131y\u0131 ve senkronizasyonu test edin.<\/li>\n<\/ul>\n<h3>5. Realm Politikalar\u0131 ve K\u0131s\u0131tlamalar\u0131 \u0130\u00e7in \u00c7\u00f6z\u00fcmler<\/h3>\n<p>Politikalardan kaynaklanan sorunlar\u0131 \u00e7\u00f6zmek i\u00e7in:<\/p>\n<ul>\n<li><strong>Parola Politikalar\u0131n\u0131 G\u00f6zden Ge\u00e7irin:<\/strong> &#8220;Authentication&#8221; -> &#8220;Password Policy&#8221; b\u00f6l\u00fcm\u00fcnde, kullan\u0131c\u0131lar\u0131n belirledi\u011fi parolalar\u0131n politikaya uygun oldu\u011fundan emin olun. \u00c7ok kat\u0131 politikalar, kullan\u0131c\u0131lar\u0131n yeni parola olu\u015fturmas\u0131n\u0131 veya mevcut parolalar\u0131n\u0131 hat\u0131rlamas\u0131n\u0131 zorla\u015ft\u0131rabilir.<\/li>\n<li><strong>Oturum Politikalar\u0131n\u0131 Kontrol Edin:<\/strong> &#8220;Realm Settings&#8221; -> &#8220;Tokens&#8221; b\u00f6l\u00fcm\u00fcndeki oturum zaman a\u015f\u0131m\u0131 ayarlar\u0131n\u0131 kontrol edin. \u00c7ok k\u0131sa zaman a\u015f\u0131mlar\u0131, kullan\u0131c\u0131lar\u0131n s\u0131k s\u0131k yeniden giri\u015f yapmas\u0131n\u0131 gerektirebilir.<\/li>\n<li><strong>G\u00fcvenlik Olaylar\u0131n\u0131 \u0130nceleyin:<\/strong> &#8220;Events&#8221; -> &#8220;Login Events&#8221; b\u00f6l\u00fcm\u00fcnde, ba\u015far\u0131s\u0131z giri\u015f giri\u015fimlerini inceleyin. Bu olaylar, kullan\u0131c\u0131n\u0131n neden giri\u015f yapamad\u0131\u011f\u0131na dair ipu\u00e7lar\u0131 (\u00f6rne\u011fin, &#8220;invalid_credentials&#8221;, &#8220;user_disabled&#8221;) sa\u011flayabilir.<\/li>\n<\/ul>\n<p>Bu \u00e7\u00f6z\u00fcm yollar\u0131n\u0131 uygularken, her zaman de\u011fi\u015fiklikleri k\u00fc\u00e7\u00fck ad\u0131mlarla yap\u0131n ve her ad\u0131mdan sonra sistemin davran\u0131\u015f\u0131n\u0131 test edin. \u00d6zellikle \u00fcretim ortamlar\u0131nda (production environments) de\u011fi\u015fiklik yapmadan \u00f6nce yedekleme almak ve test ortam\u0131nda (staging environment) denemeler yapmak en iyi uygulamad\u0131r. B\u00f6ylece, olas\u0131 yan etkileri minimize edebilir ve sorunu daha h\u0131zl\u0131 ve g\u00fcvenli bir \u015fekilde \u00e7\u00f6zebilirsiniz.<\/p>\n<h2>Geli\u015fmi\u015f Stratejiler: Keycloak Ortam\u0131n\u0131z\u0131 G\u00fcvenli ve Sorunsuz Tutmak<\/h2>\n<p>Keycloak ortam\u0131n\u0131z\u0131 sadece mevcut sorunlar\u0131 \u00e7\u00f6zmekle kalmay\u0131p, gelecekteki olas\u0131 ba\u015far\u0131s\u0131z giri\u015f se\u00e7eneklerini ve g\u00fcvenlik a\u00e7\u0131klar\u0131n\u0131 \u00f6nlemek i\u00e7in proaktif stratejiler geli\u015ftirmek \u00f6nemlidir. Bu ileri d\u00fczey yakla\u015f\u0131mlar, Keycloak kurulumunuzun daha sa\u011flam, g\u00fcvenli ve y\u00f6netilebilir olmas\u0131n\u0131 sa\u011flar.<\/p>\n<h3>1. Otomatik Test ve S\u00fcrekli Entegrasyon\/S\u00fcrekli Da\u011f\u0131t\u0131m (CI\/CD)<\/h3>\n<p>Keycloak yap\u0131land\u0131rmalar\u0131n\u0131 manuel olarak y\u00f6netmek, \u00f6zellikle b\u00fcy\u00fck ve karma\u015f\u0131k ortamlar i\u00e7in hata yapmaya a\u00e7\u0131kt\u0131r. Keycloak yap\u0131land\u0131rmalar\u0131n\u0131 kod olarak (Infrastructure as Code &#8211; IaC) ele almak ve CI\/CD s\u00fcre\u00e7lerine entegre etmek, bu t\u00fcr sorunlar\u0131 minimize etmenin en etkili yollar\u0131ndan biridir. \u00d6rne\u011fin, Terraform veya Ansible gibi ara\u00e7larla Keycloak Realm, Client ve IdP yap\u0131land\u0131rmalar\u0131n\u0131 otomatikle\u015ftirebilirsiniz. Bu sayede:<\/p>\n<ul>\n<li><strong>Tutarl\u0131l\u0131k:<\/strong> Farkl\u0131 ortamlarda (geli\u015ftirme, test, \u00fcretim) yap\u0131land\u0131rma tutarl\u0131l\u0131\u011f\u0131 sa\u011flan\u0131r.<\/li>\n<li><strong>Hata Azaltma:<\/strong> Manuel yap\u0131land\u0131rma hatalar\u0131 ortadan kalkar.<\/li>\n<li><strong>H\u0131zl\u0131 Geri D\u00f6n\u00fc\u015f:<\/strong> Hatal\u0131 bir yap\u0131land\u0131rma da\u011f\u0131t\u0131ld\u0131\u011f\u0131nda, h\u0131zl\u0131ca \u00f6nceki \u00e7al\u0131\u015fan s\u00fcr\u00fcme geri d\u00f6nebilirsiniz.<\/li>\n<li><strong>S\u00fcr\u00fcm Kontrol\u00fc:<\/strong> T\u00fcm yap\u0131land\u0131rma de\u011fi\u015fiklikleri s\u00fcr\u00fcm kontrol sistemlerinde (\u00f6rne\u011fin Git) izlenebilir hale gelir.<\/li>\n<\/ul>\n<div class=\"code-container\">\n<pre><code>resource \"keycloak_realm\" \"my_realm\" {\n  realm = \"my-application-realm\"\n  enabled = true\n  # Di\u011fer realm ayarlar\u0131...\n}\n\nresource \"keycloak_openid_client\" \"my_client\" {\n  realm_id = keycloak_realm.my_realm.id\n  client_id = \"my-app-client\"\n  name = \"My Application Client\"\n  enabled = true\n  access_type = \"CONFIDENTIAL\"\n  valid_redirect_uris = [\n    \"http:\/\/localhost:8080\/*\",\n    \"https:\/\/my-app.example.com\/*\"\n  ]\n  # Di\u011fer client ayarlar\u0131...\n}<\/code><\/pre>\n<\/div>\n<p>Bu Terraform \u00f6rne\u011fi, bir Keycloak Realm&#8217;i ve bir OpenID Connect istemcisini kod olarak tan\u0131mlar. Bu t\u00fcr bir yakla\u015f\u0131m, yap\u0131land\u0131rmalar\u0131n otomatik olarak da\u011f\u0131t\u0131lmas\u0131n\u0131 ve y\u00f6netilmesini sa\u011flar.<\/p>\n<h3>2. \u00d6zel Kimlik Do\u011frulama Sa\u011flay\u0131c\u0131lar\u0131 ve SPI&#8217;lar (Service Provider Interfaces)<\/h3>\n<p>Keycloak&#8217;un esnek mimarisi, kendi \u00f6zel kimlik do\u011frulama sa\u011flay\u0131c\u0131lar\u0131n\u0131z\u0131 (custom authentication providers) veya di\u011fer hizmet sa\u011flay\u0131c\u0131 aray\u00fczlerini (SPIs) geli\u015ftirmenize olanak tan\u0131r. E\u011fer standart IdP&#8217;ler veya ak\u0131\u015flar ihtiya\u00e7lar\u0131n\u0131z\u0131 kar\u015f\u0131lam\u0131yorsa, \u00f6zel bir SPI geli\u015ftirerek:<\/p>\n<ul>\n<li><strong>Benzersiz Kimlik Do\u011frulama Mant\u0131\u011f\u0131:<\/strong> \u0130\u015fletmenize \u00f6zg\u00fc karma\u015f\u0131k kimlik do\u011frulama kurallar\u0131n\u0131 uygulayabilirsiniz.<\/li>\n<li><strong>Mevcut Sistemlerle Entegrasyon:<\/strong> Keycloak&#8217;un do\u011frudan desteklemedi\u011fi eski veya \u00f6zel kimlik sistemleriyle entegrasyon sa\u011flayabilirsiniz.<\/li>\n<li><strong>Geli\u015fmi\u015f G\u00fcvenlik Kontrolleri:<\/strong> Daha kat\u0131 g\u00fcvenlik kontrolleri veya \u00f6zel denetim mekanizmalar\u0131 ekleyebilirsiniz.<\/li>\n<\/ul>\n<p>Ancak, \u00f6zel SPI geli\u015ftirirken dikkatli olmak ve Keycloak&#8217;un API&#8217;lerini iyi anlamak kritik \u00f6neme sahiptir. Hatal\u0131 yaz\u0131lm\u0131\u015f bir SPI, performans sorunlar\u0131na veya g\u00fcvenlik a\u00e7\u0131klar\u0131na yol a\u00e7abilir.<\/p>\n<h3>3. Kapsaml\u0131 \u0130zleme ve Uyar\u0131 Sistemleri<\/h3>\n<p>Keycloak ortam\u0131n\u0131z\u0131 s\u00fcrekli olarak izlemek, potansiyel sorunlar\u0131 daha ortaya \u00e7\u0131kmadan tespit etmenizi sa\u011flar. Prometheus ve Grafana gibi ara\u00e7larla Keycloak&#8217;un performans metriklerini, hata oranlar\u0131n\u0131 ve oturum bilgilerini izleyebilirsiniz. \u00d6zellikle:<\/p>\n<ul>\n<li><strong>Giri\u015f Ba\u015far\u0131s\u0131zl\u0131k Oranlar\u0131:<\/strong> Anormal derecede y\u00fcksek ba\u015far\u0131s\u0131z giri\u015f denemeleri, yap\u0131land\u0131rma sorunlar\u0131na veya hatta bir sald\u0131r\u0131 giri\u015fimine i\u015faret edebilir.<\/li>\n<li><strong>IdP Yan\u0131t S\u00fcreleri:<\/strong> Harici kimlik sa\u011flay\u0131c\u0131lar\u0131n yan\u0131t s\u00fcrelerinin artmas\u0131, entegrasyon sorunlar\u0131na veya IdP taraf\u0131nda bir probleme i\u015faret edebilir.<\/li>\n<li><strong>Sistem Kaynak Kullan\u0131m\u0131:<\/strong> CPU, bellek ve disk kullan\u0131m\u0131 gibi metrikler, Keycloak sunucusunun sa\u011fl\u0131\u011f\u0131n\u0131 g\u00f6sterir.<\/li>\n<\/ul>\n<p>Bu metrikler i\u00e7in uyar\u0131lar (alerts) tan\u0131mlayarak, bir sorun e\u015fi\u011fi a\u015f\u0131ld\u0131\u011f\u0131nda otomatik olarak bilgilendirilebilirsiniz. Bu sayede, kullan\u0131c\u0131lar sorunu fark etmeden \u00f6nce m\u00fcdahale edebilirsiniz.<\/p>\n<h3>4. D\u00fczenli G\u00fcvenlik Denetimleri ve G\u00fcncellemeler<\/h3>\n<p>Keycloak ve entegre oldu\u011fu t\u00fcm sistemler i\u00e7in d\u00fczenli g\u00fcvenlik denetimleri yapmak ve yaz\u0131l\u0131m\u0131 g\u00fcncel tutmak hayati \u00f6nem ta\u015f\u0131r. Yeni s\u00fcr\u00fcmler genellikle performans iyile\u015ftirmeleri, hata d\u00fczeltmeleri ve en \u00f6nemlisi g\u00fcvenlik yamalar\u0131 i\u00e7erir. D\u00fczenli g\u00fcncellemeler, bilinen g\u00fcvenlik a\u00e7\u0131klar\u0131n\u0131n kapat\u0131lmas\u0131na yard\u0131mc\u0131 olur.<\/p>\n<ul>\n<li><strong>S\u00fcr\u00fcm Notlar\u0131n\u0131 Takip Edin:<\/strong> Her yeni Keycloak s\u00fcr\u00fcm\u00fcn\u00fcn notlar\u0131n\u0131 dikkatlice okuyun ve y\u00fckseltme i\u015fleminden \u00f6nce de\u011fi\u015fiklikleri anlay\u0131n.<\/li>\n<li><strong>Penetrasyon Testleri:<\/strong> D\u00fczenli aral\u0131klarla Keycloak kurulumunuza penetrasyon testleri (s\u0131zma testleri) uygulayarak olas\u0131 g\u00fcvenlik zay\u0131fl\u0131klar\u0131n\u0131 tespit edin.<\/li>\n<li><strong>Eri\u015fim Kontrol\u00fc:<\/strong> Keycloak y\u00f6netim konsoluna eri\u015fimi s\u0131k\u0131 bir \u015fekilde kontrol edin ve sadece yetkili ki\u015filerin eri\u015febildi\u011finden emin olun.<\/li>\n<\/ul>\n<h3>5. Kullan\u0131c\u0131 E\u011fitimi ve Destek Materyalleri<\/h3>\n<p>Teknik \u00e7\u00f6z\u00fcmlerin yan\u0131 s\u0131ra, kullan\u0131c\u0131lar\u0131n\u0131z\u0131 do\u011fru giri\u015f se\u00e7eneklerini kullanmalar\u0131 konusunda e\u011fitmek de \u00f6nemlidir. A\u00e7\u0131k ve anla\u015f\u0131l\u0131r destek materyalleri, SSS (S\u0131k\u00e7a Sorulan Sorular) sayfalar\u0131 ve giri\u015f ekran\u0131nda bilgilendirici mesajlar, kullan\u0131c\u0131 hatalar\u0131n\u0131 azaltmaya yard\u0131mc\u0131 olabilir. \u00d6rne\u011fin, belirli bir giri\u015f se\u00e7ene\u011finin sadece belirli kullan\u0131c\u0131 gruplar\u0131 i\u00e7in ge\u00e7erli oldu\u011funu a\u00e7\u0131k\u00e7a belirten bir metin eklemek, yanl\u0131\u015f se\u00e7imleri \u00f6nleyebilir.<\/p>\n<p>Bu geli\u015fmi\u015f stratejileri uygulayarak, Keycloak ortam\u0131n\u0131z\u0131 sadece mevcut sorunlardan ar\u0131nd\u0131rmakla kalmayacak, ayn\u0131 zamanda gelecekteki olas\u0131 problemleri de proaktif bir \u015fekilde engelleyerek daha g\u00fcvenli, istikrarl\u0131 ve y\u00f6netilebilir bir kimlik ve eri\u015fim y\u00f6netimi altyap\u0131s\u0131 kurmu\u015f olacaks\u0131n\u0131z.<\/p>\n<h2>Vaka Analizi: B\u00fcy\u00fck Bir Kurumda Ya\u015fanan Giri\u015f Hatas\u0131 ve \u00c7\u00f6z\u00fcm\u00fc<\/h2>\n<p>Bir e-ticaret \u015firketi olan &#8220;H\u0131zl\u0131Sepet&#8221;, \u00e7al\u0131\u015fanlar\u0131 ve tedarik\u00e7ileri i\u00e7in Keycloak&#8217;u kimlik ve eri\u015fim y\u00f6netimi \u00e7\u00f6z\u00fcm\u00fc olarak kullanmaktayd\u0131. \u00c7al\u0131\u015fanlar i\u00e7in Active Directory (AD) entegrasyonu, tedarik\u00e7iler i\u00e7in ise \u00f6zel bir SAML tabanl\u0131 kimlik sa\u011flay\u0131c\u0131 (IdP) yap\u0131land\u0131rm\u0131\u015ft\u0131. Bir g\u00fcn, \u015firketin IT destek ekibi, tedarik\u00e7ilerden gelen yo\u011fun &#8220;giri\u015f yapam\u0131yorum&#8221; \u015fikayetleriyle kar\u015f\u0131la\u015ft\u0131. \u015eikayetler, tedarik\u00e7ilerin giri\u015f ekran\u0131nda SAML IdP se\u00e7ene\u011fini g\u00f6rd\u00fcklerini, ancak t\u0131klad\u0131klar\u0131nda &#8220;Invalid SAML Response&#8221; (Ge\u00e7ersiz SAML Yan\u0131t\u0131) hatas\u0131 ald\u0131klar\u0131n\u0131 belirtiyordu.<\/p>\n<h3>Sorunun Te\u015fhisi<\/h3>\n<ol>\n<li>\n        <strong>\u0130lk Tepki ve Log Kontrol\u00fc:<\/strong> IT ekibi, sorunun yayg\u0131n oldu\u011funu fark edince hemen Keycloak sunucu loglar\u0131n\u0131 kontrol etti. Loglarda, SAML IdP&#8217;den gelen yan\u0131tlar\u0131n do\u011frulanamad\u0131\u011f\u0131na dair \u00e7ok say\u0131da &#8220;Invalid signature&#8221; (Ge\u00e7ersiz imza) ve &#8220;Expired SAML assertion&#8221; (S\u00fcresi dolmu\u015f SAML bildirimi) hatas\u0131 g\u00f6rd\u00fcler. Bu, sorunun SAML IdP ile Keycloak aras\u0131ndaki ileti\u015fimde veya sertifika y\u00f6netiminde oldu\u011funu g\u00f6steriyordu.\n    <\/li>\n<li>\n        <strong>SAML IdP Ayarlar\u0131n\u0131n \u0130ncelenmesi:<\/strong> Keycloak y\u00f6netim konsolunda, &#8220;Identity Providers&#8221; b\u00f6l\u00fcm\u00fcndeki SAML IdP&#8217;nin ayarlar\u0131na bak\u0131ld\u0131. &#8220;Validate Signatures&#8221; (\u0130mzalar\u0131 Do\u011frula) se\u00e7ene\u011finin etkin oldu\u011fu, ancak IdP&#8217;nin &#8220;Signing Certificate&#8221; (\u0130mzalama Sertifikas\u0131) alan\u0131n\u0131n bo\u015f oldu\u011fu veya yanl\u0131\u015f bir sertifika i\u00e7erdi\u011fi fark edildi. Ayr\u0131ca, &#8220;SAML Metadata URL&#8221; \u00fczerinden meta verilerin \u00e7ekilmeye \u00e7al\u0131\u015f\u0131ld\u0131\u011f\u0131 ancak bu URL&#8217;nin de bir s\u00fcredir g\u00fcncellenmedi\u011fi anla\u015f\u0131ld\u0131.\n    <\/li>\n<li>\n        <strong>Sertifika Ge\u00e7erlili\u011finin Kontrol\u00fc:<\/strong> Tedarik\u00e7i taraf\u0131ndaki SAML IdP y\u00f6neticileriyle ileti\u015fime ge\u00e7ildi. Yap\u0131lan kontrollerde, tedarik\u00e7i IdP&#8217;sinin imzalama sertifikas\u0131n\u0131n birka\u00e7 g\u00fcn \u00f6nce s\u00fcresinin doldu\u011fu ve yeni bir sertifika ile g\u00fcncellendi\u011fi ortaya \u00e7\u0131kt\u0131. Ancak bu bilgi Keycloak taraf\u0131na iletilmemi\u015fti.\n    <\/li>\n<\/ol>\n<h3>\u00c7\u00f6z\u00fcm Ad\u0131mlar\u0131<\/h3>\n<ol>\n<li>\n        <strong>Yeni Sertifikan\u0131n Y\u00fcklenmesi:<\/strong> Tedarik\u00e7i IdP&#8217;sinden yeni imzalama sertifikas\u0131 (genellikle <code>.cer<\/code> veya <code>.pem<\/code> format\u0131nda) al\u0131nd\u0131.\n    <\/li>\n<li>\n        <strong>Keycloak Yap\u0131land\u0131rmas\u0131n\u0131n G\u00fcncellenmesi:<\/strong> Keycloak y\u00f6netim konsolunda, SAML IdP ayarlar\u0131na gidildi. &#8220;Signing Certificate&#8221; alan\u0131na yeni sertifika i\u00e7eri\u011fi yap\u0131\u015ft\u0131r\u0131ld\u0131. Alternatif olarak, e\u011fer IdP dinamik meta veri URL&#8217;si sa\u011fl\u0131yorsa ve bu URL g\u00fcncel sertifikay\u0131 i\u00e7eriyorsa, &#8220;SAML Metadata URL&#8221; g\u00fcncellenerek Keycloak&#8217;un meta verileri yeniden \u00e7ekmesi sa\u011fland\u0131.\n    <\/li>\n<li>\n        <strong>Test ve Do\u011frulama:<\/strong> Yap\u0131lan de\u011fi\u015fiklikler sonras\u0131, bir tedarik\u00e7i hesab\u0131yla giri\u015f denemesi yap\u0131ld\u0131. Bu sefer giri\u015f ba\u015far\u0131l\u0131 oldu ve &#8220;Invalid SAML Response&#8221; hatas\u0131 ortadan kalkt\u0131. IT ekibi, birka\u00e7 farkl\u0131 tedarik\u00e7i hesab\u0131yla daha test yaparak \u00e7\u00f6z\u00fcm\u00fcn kal\u0131c\u0131 oldu\u011funu do\u011frulad\u0131.\n    <\/li>\n<li>\n        <strong>Proaktif \u00d6nlemler:<\/strong> Bu olaydan ders \u00e7\u0131kar\u0131larak, gelecekte benzer sorunlar\u0131n \u00f6n\u00fcne ge\u00e7mek i\u00e7in \u015fu ad\u0131mlar at\u0131ld\u0131:<\/p>\n<ul>\n<li>Tedarik\u00e7i IdP y\u00f6neticileriyle sertifika de\u011fi\u015fim s\u00fcre\u00e7leri konusunda bir ileti\u015fim protokol\u00fc olu\u015fturuldu. Sertifika s\u00fcreleri dolmadan en az bir ay \u00f6nce Keycloak y\u00f6neticilerinin bilgilendirilmesi kararla\u015ft\u0131r\u0131ld\u0131.<\/li>\n<li>Keycloak&#8217;ta kullan\u0131lan t\u00fcm harici sertifikalar\u0131n ge\u00e7erlilik s\u00fcreleri i\u00e7in izleme ve uyar\u0131 sistemleri kuruldu. Sertifika s\u00fcreleri dolmaya yak\u0131n oldu\u011funda otomatik uyar\u0131lar g\u00f6nderilmesi sa\u011fland\u0131.<\/li>\n<li>Keycloak yap\u0131land\u0131rmalar\u0131 i\u00e7in Terraform gibi bir IaC (Infrastructure as Code) arac\u0131 kullanmaya ba\u015fland\u0131. B\u00f6ylece IdP yap\u0131land\u0131rmalar\u0131 s\u00fcr\u00fcm kontrol\u00fcne al\u0131nd\u0131 ve otomatik da\u011f\u0131t\u0131m s\u00fcre\u00e7lerine entegre edildi.<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n<p>Bu vaka analizi, ba\u015far\u0131s\u0131z bir giri\u015f se\u00e7ene\u011fi sorununun nas\u0131l ortaya \u00e7\u0131kabilece\u011fini, sistematik bir te\u015fhis s\u00fcreciyle nas\u0131l tespit edilebilece\u011fini ve kal\u0131c\u0131 bir \u00e7\u00f6z\u00fcmle nas\u0131l giderilebilece\u011fini g\u00f6stermektedir. \u00d6zellikle harici kimlik sa\u011flay\u0131c\u0131larla entegrasyonlarda sertifika y\u00f6netimi ve ileti\u015fim protokollerinin \u00f6nemi bu \u00f6rnekle bir kez daha vurgulanm\u0131\u015ft\u0131r. Proaktif \u00f6nlemler, benzer sorunlar\u0131n gelecekte ya\u015fanmas\u0131n\u0131 engelleyerek sistemin genel g\u00fcvenli\u011fini ve kullan\u0131labilirli\u011fini art\u0131r\u0131r.<\/p>\n<h2>Sonu\u00e7 ve S\u0131k\u00e7a Sorulan Sorular<\/h2>\n<p>Keycloak, modern uygulamalar i\u00e7in merkezi ve g\u00fcvenli bir kimlik do\u011frulama ve yetkilendirme altyap\u0131s\u0131 sunar. Ancak esnekli\u011fi ve geni\u015f entegrasyon yetenekleri, yanl\u0131\u015f yap\u0131land\u0131rmalar sonucunda kullan\u0131c\u0131lar\u0131n ba\u015far\u0131s\u0131z giri\u015f se\u00e7enekleriyle kar\u015f\u0131la\u015fmas\u0131na neden olabilir. Bu makalede, bu t\u00fcr sorunlar\u0131n k\u00f6k nedenlerini derinlemesine inceledik; yanl\u0131\u015f yap\u0131land\u0131r\u0131lm\u0131\u015f kimlik sa\u011flay\u0131c\u0131lardan hatal\u0131 ak\u0131\u015f ayarlar\u0131na kadar bir\u00e7ok potansiyel sorunu ele ald\u0131k. Ayr\u0131ca, Keycloak y\u00f6netim konsolu, sunucu loglar\u0131 ve a\u011f trafi\u011fi analizi gibi ara\u00e7lar\u0131 kullanarak sorunlar\u0131 nas\u0131l te\u015fhis edece\u011finizi ad\u0131m ad\u0131m g\u00f6sterdik. Uygulamal\u0131 \u00e7\u00f6z\u00fcm yollar\u0131 ve ileri d\u00fczey stratejiler sayesinde, Keycloak ortam\u0131n\u0131z\u0131 sadece mevcut sorunlardan ar\u0131nd\u0131rmakla kalmayacak, ayn\u0131 zamanda gelecekteki potansiyel problemleri de proaktif bir \u015fekilde \u00f6nleyeceksiniz. Unutmay\u0131n ki d\u00fczenli bak\u0131m, izleme ve s\u00fcrekli entegrasyon pratikleri, Keycloak kurulumunuzun istikrarl\u0131 ve g\u00fcvenli kalmas\u0131n\u0131n anahtar\u0131d\u0131r.<\/p>\n<h3>S\u0131k\u00e7a Sorulan Sorular<\/h3>\n<p><strong>1. Keycloak&#8217;ta bir giri\u015f se\u00e7ene\u011finin neden ba\u015far\u0131s\u0131z oldu\u011funu en h\u0131zl\u0131 nas\u0131l anlar\u0131m?<\/strong><\/p>\n<p>En h\u0131zl\u0131 yol, Keycloak sunucu loglar\u0131n\u0131 kontrol etmektir. Log dosyalar\u0131nda &#8220;ERROR&#8221;, &#8220;WARN&#8221; veya &#8220;FAILURE&#8221; gibi anahtar kelimeleri arayarak sorunun temel nedenine dair ipu\u00e7lar\u0131 bulabilirsiniz. Ayr\u0131ca, taray\u0131c\u0131n\u0131z\u0131n geli\u015ftirici ara\u00e7lar\u0131n\u0131 (F12) kullanarak a\u011f trafi\u011fini izlemek, HTTP istek ve yan\u0131tlar\u0131n\u0131 g\u00f6zlemlemek de sorunun hangi a\u015famada meydana geldi\u011fini anlaman\u0131za yard\u0131mc\u0131 olabilir.<\/p>\n<p><strong>2. Yanl\u0131\u015fl\u0131kla devre d\u0131\u015f\u0131 b\u0131rakt\u0131\u011f\u0131m bir kimlik sa\u011flay\u0131c\u0131y\u0131 (IdP) tekrar nas\u0131l etkinle\u015ftirebilirim?<\/strong><\/p>\n<p>Keycloak y\u00f6netim konsolunda, ilgili Realm&#8217;e gidin. Sol men\u00fcden &#8220;Identity Providers&#8221; se\u00e7ene\u011fini se\u00e7in. Devre d\u0131\u015f\u0131 b\u0131rakt\u0131\u011f\u0131n\u0131z IdP&#8217;yi bulun ve \u00fczerine t\u0131klay\u0131n. Ayarlar sayfas\u0131nda, &#8220;Enabled&#8221; (Etkin) se\u00e7ene\u011finin i\u015faretli oldu\u011fundan emin olun ve de\u011fi\u015fiklikleri kaydedin. E\u011fer giri\u015f sayfas\u0131nda hala g\u00f6r\u00fcnm\u00fcyorsa, &#8220;Hide on Login Page&#8221; (Giri\u015f Sayfas\u0131nda Gizle) se\u00e7ene\u011finin i\u015faretli olmad\u0131\u011f\u0131ndan da emin olun.<\/p>\n<p><strong>3. Keycloak&#8217;ta bir istemcinin (client) y\u00f6nlendirme URI&#8217;si hatas\u0131 al\u0131yorum, ne yapmal\u0131y\u0131m?<\/strong><\/p>\n<p>Bu genellikle &#8220;Invalid Redirect URI&#8221; hatas\u0131 olarak kar\u015f\u0131n\u0131za \u00e7\u0131kar. Keycloak y\u00f6netim konsolunda &#8220;Clients&#8221; b\u00f6l\u00fcm\u00fcne gidin ve ilgili istemciyi se\u00e7in. &#8220;Valid Redirect URIs&#8221; (Ge\u00e7erli Y\u00f6nlendirme URI&#8217;leri) alan\u0131n\u0131 kontrol edin. Uygulaman\u0131z\u0131n kimlik do\u011frulama sonras\u0131 Keycloak&#8217;tan geri d\u00f6nece\u011fi t\u00fcm URL&#8217;lerin burada eksiksiz ve do\u011fru bir \u015fekilde listelendi\u011finden emin olun. Uygulaman\u0131z\u0131n tam URL&#8217;sini (protokol, domain, port ve yol dahil) buraya eklemelisiniz. \u00d6rne\u011fin, <code>https:\/\/uygulama.sirket.com\/callback<\/code> veya <code>http:\/\/localhost:3000\/*<\/code> gibi.<\/p>\n<p><strong>4. Keycloak&#8217;un kimlik do\u011frulama ak\u0131\u015flar\u0131n\u0131 \u00f6zelle\u015ftirirken nelere dikkat etmeliyim?<\/strong><\/p>\n<p>Kimlik do\u011frulama ak\u0131\u015flar\u0131n\u0131 \u00f6zelle\u015ftirirken dikkatli olun. Herhangi bir de\u011fi\u015fiklik yapmadan \u00f6nce mevcut ak\u0131\u015f\u0131n yede\u011fini al\u0131n veya varsay\u0131lan ak\u0131\u015f\u0131 kopyalayarak yeni bir ak\u0131\u015f \u00fczerinde \u00e7al\u0131\u015f\u0131n. Ak\u0131\u015f i\u00e7indeki her bir ad\u0131m\u0131n &#8220;Requirement&#8221; (Gereksinim) ayar\u0131n\u0131 (\u00f6rne\u011fin &#8220;REQUIRED&#8221;, &#8220;ALTERNATIVE&#8221;, &#8220;OPTIONAL&#8221;) dikkatlice belirleyin. Hatal\u0131 bir ad\u0131m veya yanl\u0131\u015f bir gereksinim, t\u00fcm kimlik do\u011frulama s\u00fcrecini kilitleyebilir. De\u011fi\u015fiklikleri test ortam\u0131nda kapsaml\u0131 bir \u015fekilde test etmeden \u00fcretim ortam\u0131na uygulamaktan ka\u00e7\u0131n\u0131n.<\/p>\n<p><strong>5. Keycloak ile harici bir LDAP sunucusu entegrasyonu ba\u015far\u0131s\u0131z olursa ne yapmal\u0131y\u0131m?<\/strong><\/p>\n<p>\u00d6ncelikle, Keycloak sunucusundan LDAP sunucusuna a\u011f ba\u011flant\u0131s\u0131 olup olmad\u0131\u011f\u0131n\u0131 kontrol edin (<code>ping<\/code> veya <code>telnet<\/code> komutlar\u0131yla). Ard\u0131ndan, Keycloak y\u00f6netim konsolunda &#8220;User Federation&#8221; b\u00f6l\u00fcm\u00fcndeki LDAP sa\u011flay\u0131c\u0131n\u0131z\u0131n ba\u011flant\u0131 ayarlar\u0131n\u0131 (Host, Port, Bind DN, Bind Credential) do\u011frulay\u0131n. Kullan\u0131c\u0131 ad\u0131 ve \u015fifre gibi kimlik bilgilerinin do\u011fru ve g\u00fcncel oldu\u011fundan emin olun. LDAP sunucusu loglar\u0131n\u0131 da kontrol ederek sunucu taraf\u0131nda bir hata olup olmad\u0131\u011f\u0131n\u0131 inceleyebilirsiniz. Ba\u011flant\u0131 testi \u00f6zelli\u011fini kullanarak ayarlar\u0131n do\u011fru \u00e7al\u0131\u015ft\u0131\u011f\u0131ndan emin olun.<\/p>\n<p>#Keycloak #KimlikDo\u011frulama #Eri\u015fimY\u00f6netimi #G\u00fcvenlik #Teknoloji<\/p>\n<div class=\"github-example-link\"><strong>\u00d6rnek kod:<\/strong> <a href=\"https:\/\/github.com\/fatihsoysalcom\/keycloak-failed-login-options-fix\" target=\"_blank\" rel=\"noopener noreferrer\">github.com\/fatihsoysalcom\/keycloak-failed-login-options-fix<\/a><\/div>\n","protected":false},"excerpt":{"rendered":"Keycloak, modern uygulamalar i\u00e7in g\u00fc\u00e7l\u00fc bir kimlik ve eri\u015fim y\u00f6netimi (IAM) \u00e7\u00f6z\u00fcm\u00fcd\u00fcr.","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-43457","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>Keycloak&#039;ta Ba\u015far\u0131s\u0131z Giri\u015f Se\u00e7enekleri Nas\u0131l Onar\u0131l\u0131r? - 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\/keycloakta-basarisiz-giris-secenekleri-nasil-onarilir\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Keycloak&#039;ta Ba\u015far\u0131s\u0131z Giri\u015f Se\u00e7enekleri Nas\u0131l Onar\u0131l\u0131r?\" \/>\n<meta property=\"og:description\" content=\"Keycloak, modern uygulamalar i\u00e7in g\u00fc\u00e7l\u00fc bir kimlik ve eri\u015fim y\u00f6netimi (IAM) \u00e7\u00f6z\u00fcm\u00fcd\u00fcr.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/keycloakta-basarisiz-giris-secenekleri-nasil-onarilir\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2026-07-19T18:02:02+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-07-19T18:02:33+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=\"28 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/keycloakta-basarisiz-giris-secenekleri-nasil-onarilir\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/keycloakta-basarisiz-giris-secenekleri-nasil-onarilir\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Keycloak&#8217;ta Ba\u015far\u0131s\u0131z Giri\u015f Se\u00e7enekleri Nas\u0131l Onar\u0131l\u0131r?\",\"datePublished\":\"2026-07-19T18:02:02+00:00\",\"dateModified\":\"2026-07-19T18:02:33+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/keycloakta-basarisiz-giris-secenekleri-nasil-onarilir\/\"},\"wordCount\":5513,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/keycloakta-basarisiz-giris-secenekleri-nasil-onarilir\/#respond\"]}],\"copyrightYear\":\"2026\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/keycloakta-basarisiz-giris-secenekleri-nasil-onarilir\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/keycloakta-basarisiz-giris-secenekleri-nasil-onarilir\/\",\"name\":\"Keycloak'ta Ba\u015far\u0131s\u0131z Giri\u015f Se\u00e7enekleri Nas\u0131l Onar\u0131l\u0131r? - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2026-07-19T18:02:02+00:00\",\"dateModified\":\"2026-07-19T18:02:33+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/keycloakta-basarisiz-giris-secenekleri-nasil-onarilir\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/keycloakta-basarisiz-giris-secenekleri-nasil-onarilir\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/keycloakta-basarisiz-giris-secenekleri-nasil-onarilir\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Keycloak&#8217;ta Ba\u015far\u0131s\u0131z Giri\u015f Se\u00e7enekleri Nas\u0131l Onar\u0131l\u0131r?\"}]},{\"@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":"Keycloak'ta Ba\u015far\u0131s\u0131z Giri\u015f Se\u00e7enekleri Nas\u0131l Onar\u0131l\u0131r? - 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\/keycloakta-basarisiz-giris-secenekleri-nasil-onarilir\/","og_locale":"tr_TR","og_type":"article","og_title":"Keycloak'ta Ba\u015far\u0131s\u0131z Giri\u015f Se\u00e7enekleri Nas\u0131l Onar\u0131l\u0131r?","og_description":"Keycloak, modern uygulamalar i\u00e7in g\u00fc\u00e7l\u00fc bir kimlik ve eri\u015fim y\u00f6netimi (IAM) \u00e7\u00f6z\u00fcm\u00fcd\u00fcr.","og_url":"https:\/\/fatihsoysal.com\/blog\/keycloakta-basarisiz-giris-secenekleri-nasil-onarilir\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2026-07-19T18:02:02+00:00","article_modified_time":"2026-07-19T18:02:33+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"28 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/keycloakta-basarisiz-giris-secenekleri-nasil-onarilir\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/keycloakta-basarisiz-giris-secenekleri-nasil-onarilir\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Keycloak&#8217;ta Ba\u015far\u0131s\u0131z Giri\u015f Se\u00e7enekleri Nas\u0131l Onar\u0131l\u0131r?","datePublished":"2026-07-19T18:02:02+00:00","dateModified":"2026-07-19T18:02:33+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/keycloakta-basarisiz-giris-secenekleri-nasil-onarilir\/"},"wordCount":5513,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/keycloakta-basarisiz-giris-secenekleri-nasil-onarilir\/#respond"]}],"copyrightYear":"2026","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/keycloakta-basarisiz-giris-secenekleri-nasil-onarilir\/","url":"https:\/\/fatihsoysal.com\/blog\/keycloakta-basarisiz-giris-secenekleri-nasil-onarilir\/","name":"Keycloak'ta Ba\u015far\u0131s\u0131z Giri\u015f Se\u00e7enekleri Nas\u0131l Onar\u0131l\u0131r? - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2026-07-19T18:02:02+00:00","dateModified":"2026-07-19T18:02:33+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/keycloakta-basarisiz-giris-secenekleri-nasil-onarilir\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/keycloakta-basarisiz-giris-secenekleri-nasil-onarilir\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/keycloakta-basarisiz-giris-secenekleri-nasil-onarilir\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Keycloak&#8217;ta Ba\u015far\u0131s\u0131z Giri\u015f Se\u00e7enekleri Nas\u0131l Onar\u0131l\u0131r?"}]},{"@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\/43457","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=43457"}],"version-history":[{"count":1,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/43457\/revisions"}],"predecessor-version":[{"id":43458,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/43457\/revisions\/43458"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=43457"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=43457"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=43457"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}