Labinate

Tech Tree #2: Uygulama İçi Kimlik Doğrulama

Uygulama içi kimlik doğrulama. Yazı 1'in bıraktığı yerden devam: Cokmez Bilisim'in süper-app'i artık ekranda duruyor ama seni tanımıyor. Giriş butonuna bastığın an, Flutter'ın (arayüz çatısı) altında Polyp Holding'in ikinci kolu devreye giriyor.

Bir cümleyle bu katmanın işi: uygulamanın kendi içinde "bu gerçekten sen misin" sorusunu her ekran geçişinde yeniden sormadan cevaplamak.

Nasıl çalışıyor, somut olarak: şifreni girdiğin an sunucu sana bir token (kimliğini kanıtlayan, süresi dolan dijital fiş) veriyor; uygulama bunu telefonunda saklıyor ve her istekte "işte kimliğim" diye sunuyor. Buna session (oturum) deniyor — uygulamayı kapatıp açsan bile token hâlâ geçerliyse giriş ekranını tekrar görmüyorsun. Holding'in mottosu burada da geçerli: bir kolunu kesersen, iki yenisi çıkar — token'ın süresi dolunca arka planda sessizce yeni bir tane çıkıyor (refresh token), sen fark bile etmiyorsun.

Ama burada bir çatlak var: bu katman token'ı üretmiyor, sadece taşıyor ve saklıyor. Şifreni gerçekten doğrulayan, "şifremi unuttum" akışını yöneten, token'ı imzalayan yer başka. Uygulama içi auth tek başına bir kasa gibi — kilidi var ama kasayı kimin yaptığını, anahtarı kimin bastığını bilmiyor. Holding bunu da sıfırdan inşa edebilirdi ama bir polip için her kimlik doğrulama sistemini kendin yazmak lüks; hazır ve güvenlik açısından denenmiş bir kol daha ucuz.

Zincirin üçüncü halkası orada başlıyor: Auth0. Kasayı gerçekte kimin yaptığı, bir sonraki yazının konusu. Holding'in diğer kolları — "Ve Saire Enerji A.Ş.", "Her Şey Dahil Turizm" — hâlâ kilitli node. Sırası geldiğinde açılır.