Uygulamanıza Giriş Nasıl Eklenir: Şifreler, Sihirli Bağlantılar, Google ve Roller
Bir uygulamaya giriş eklemek için bir yöntem seçin — e-posta ve şifre, sihirli bağlantılar (e-postayla gönderilen tek kullanımlık bir oturum açma bağlantısı) veya “Google ile oturum aç” — ve bunu sıfırdan yazmak yerine kanıtlanmış bir kimlik doğrulama kütüphanesi veya barındırılan bir sağlayıcıyla uygulayın. Ardından her kullanıcı türünün neler yapabileceğine karar verin (roller) ve bunu her sayfa ve API isteğinde sunucuda zorunlu kılın. Oturumlar güvenli çerezler kullanmalı, sona ermeli ve çıkış yapıldığında düzgünce bitmelidir.
Bu rehber her seçimi ve çalışan bir girişi güvenli bir girişten ayıran ayrıntıları adım adım anlatır. Arkasındaki kavramlar için kimlik doğrulama nedir rehberine bakın.
Önce karar verin: giriş gerçekten gerekli mi?
Giriş sürtünme ve sorumluluk ekler. Şu durumlarda ihtiyacınız olur:
- Kullanıcıların özel verileri varsa (rezervasyonları, belgeleri, faturaları)
- Kullanıcılar başkalarının da göreceği şeyleri değiştirebiliyorsa
- Erişim için ücret alıyorsanız
- Farklı insanların farklı izinlere ihtiyacı varsa (sahip, personel, müşteri)
Tanıtım sitesi, herkese açık bir dizin veya size yalnızca bir e-posta gönderen bir form için giriş gerekmez. Bekleme listesi hesap gerektirmez; bir e-posta alanı yeterlidir.
Yaygın dört giriş yöntemi
| Yöntem | Nasıl çalışır | Artıları | Eksileri |
|---|---|---|---|
| E-posta + şifre | Kullanıcı bir şifre oluşturur; siz bunun bir özetini (hash) saklarsınız | Tanıdık, e-postadan bağımsız çalışır | Şifre sıfırlamaları, tekrar kullanımı, ihlaller; şifreleri güvenli saklamalısınız |
| Sihirli bağlantı | Kullanıcı e-postasını girer, size gönderdiğiniz bağlantıya tıklar | Saklanacak veya unutulacak şifre yok | E-posta teslimine bağlı; giriş daha yavaş |
| Tek kullanımlık kod | Kullanıcı e-postasını girer, 6 haneli bir kodu yazar | Bağlantılar yanlış tarayıcıda açıldığında da çalışır | Aynı e-posta bağımlılığı |
| Sosyal / OAuth (Google, Apple, GitHub, Microsoft) | Başka bir sağlayıcı kullanıcının kim olduğunu onaylar | Kullanıcılar için en hızlısı; sizin saklayacağınız şifre yok | Kullanıcının o hesabı olmalı; sağlayıcıda kurulum gerekir |
Birçok uygulama ikisini birleştirir: Google ile oturum açma artı e-posta sihirli bağlantıları, hiçbir şifre saklamadan çoğu insanı kapsayan popüler bir ikilidir.
E-posta ve şifre
Şifre sunuyorsanız, bunlar pazarlıksız gerekliliklerdir:
- Şifreleri yavaş bir şifre özetleme algoritmasıyla saklayın. OWASP’ın şifre saklama rehberi Argon2id önerir; alternatif olarak scrypt, bcrypt veya PBKDF2. Şifreleri asla düz metin veya hızlı genel bir özetleme ile saklamayın.
- Şifre sıfırlamaları doğrulanmış e-postaya gönderilen, rastgele, tek kullanımlık ve süreli bir bağlantı kullanır.
- Hangi e-postaların hesabı olduğunu ifşa etmeyin. “Bu e-posta kayıtlıysa bir sıfırlama bağlantısı gönderdik” demek, “Hesap bulunamadı” demekten daha iyidir.
- Giriş ve sıfırlama denemelerini hız sınırlı yapın; şifre tahminini yavaşlatmak için.
- Uzun şifrelere ve şifre yöneticilerine izin verin; belirli karakter karışımlarını zorunlu kılan kurallardan kaçının.
Sihirli bağlantılar ve tek kullanımlık kodlar
Sihirli bağlantı, kullanıcıya e-postayla gönderilen bir oturum açma bağlantısıdır. Tıklandığında kullanıcıyı oturum açmış yapar. Tek kullanımlık kod aynı fikirdir, ama tıklanmak yerine yazılır.
- Bağlantılar ve kodlar hızlı sona erer ve yalnızca bir kez çalışır.
- Bağlantı, tıklandığı cihazda kullanıcıyı oturum açmış yapmalı ve belirteç günlüklerde veya analitik araçlarında kalmamalıdır.
- Güvenilir e-posta göndermeye ihtiyacınız var — bkz. uygulamanızdan e-posta nasıl gönderilir. Gmail ve Outlook’ta test edin, spam klasörünü kontrol edin.
Google ile oturum açma (ve diğer OAuth sağlayıcıları)
“Google ile oturum aç” OAuth ve OpenID Connect kullanır: Google kullanıcının kim olduğunu onaylar ve uygulamanıza e-postasını ve adını bildirir. Eylül 2026 itibarıyla kurulum, Google Cloud Console’daki Google Auth Platform bölümünde yapılır:
- Bir proje oluşturun veya seçin ve Marka sayfasını doldurun — kullanıcıların onay ekranında gördükleri şey (uygulama adı, destek e-postası, logo).
- İstemciler sayfasında “Web uygulaması” türünde bir istemci oluşturun.
- Yetkili JavaScript kaynaklarını ve yönlendirme URI’lerini ekleyin — uygulamanızın çalıştığı tam adresler ve Google’ın oturum açtıktan sonra kullanıcıları geri gönderdiği adresler.
- İstemci kimliğini ve istemci gizli anahtarını uygulamanızın gizli bilgilerinde saklayın.
Google’ın OAuth dokümanlarına göre sık yaşanan sorunlar:
redirect_uri_mismatch: yönlendirme adresi tam olarak eşleşmelidir;httpilehttps, büyük-küçük harf ve sondaki eğik çizgi dahil. Önizleme adresiniz ve canlı alan adınız için birer tane ekleyin.- HTTPS gerekir: yönlendirme URI’leri HTTPS kullanmalıdır; geliştirme sırasında
localhosthariç. stateparametresi dönüşte siteler arası istek sahteciliğine karşı kontrol edilmelidir. İyi kütüphaneler bunu sizin için yapar.
Yalnızca temel oturum açma bilgilerini (ad, e-posta, profil) istiyorsanız Google uygulama doğrulamasının zorunlu olmadığını söyler. Kullanıcıların Gmail, Drive veya Takvim verilerine erişim istemek ise farklıdır ve doğrulama gerektirir.
Kendiniz mi inşa edersiniz, sağlayıcı mı kullanırsınız?
| Yaklaşım | Örnekler | Ne zaman uygun |
|---|---|---|
| Barındırılan kimlik sağlayıcısı | Oturum açmayı, kullanıcı yönetimini ve oturumları sizin için barındıran servisler | Daha az güvenlik sorumluluğuyla girişi hızlıca çalıştırmak istediğinizde |
| Uygulamanızdaki kimlik doğrulama kütüphanesi | Çatınız için açık kaynak kütüphaneler | Kullanıcıları kendi veritabanınızda tutmak ve kullanıcı başı ücret olmamasını istediğinizde |
| Kendiniz yazın | — | Neredeyse hiçbir zaman. Çok fazla ince ayrıntı var |
İlk iki seçeneğin ikisi de makuldür. Barındırılan sağlayıcılar daha çok şey üstlenir ama bir bağımlılık ekler ve bazen aktif kullanıcı başına ücret alır; güncel fiyatları kendi sitelerinden kontrol edin. Kütüphaneler her şeyi kendi veritabanınızda tutar ama doğru yapılandırmak için daha fazlası size kalır. Hangisini seçerseniz seçin, şifre veya oturum mantığını elle yazmak yerine yapay zekadan bunu kullanmasını isteyin.
Roller ve izinler
Giriş size birinin kim olduğunu söyler. İzinler ne yapabileceğini belirler. Başlangıçta basit tutun:
| Rol | Tipik izinler |
|---|---|
| Ziyaretçi | Herkese açık sayfaları görür |
| Üye / müşteri | Kendi kayıtlarını görür ve düzenler |
| Personel | Ekiplerindeki veya işletmelerindeki tüm kayıtları görür; ayarları veya faturalandırmayı değiştiremez |
| Sahip / yönetici | Her şey, kullanıcılar ve faturalandırma dahil |
Rol adlarından daha önemli kurallar:
- Her seferinde sunucuda kontrol edin. Bir düğmeyi sayfada gizlemek, birinin API’yi doğrudan çağırmasını engellemez.
- Sahibe göre kapsamlandırın. “Rezervasyon 123”ü isteyen bir üye, yalnızca kendisine aitse onu almalıdır.
- Kullanıcılar kendi rollerini yükseltemez. Profil güncellemelerinde tarayıcıdan gönderilen rol alanlarını yok sayın.
- Varsayılan olarak erişim yok. Yeni rotalar, siz aksini kararlaştırmadıkça giriş gerektirmelidir.
İki hesapla test edin: birinde oturum açın, bir kaydın ID’sini not edin, sonra diğer hesapla oturum açıp o kaydı açmayı deneyin. Tam test için güvenlik kontrol listemize bakın.
Oturum güvenliği
Girişten sonra uygulama kullanıcıyı bir oturumla hatırlar — genellikle bir çerezle. OWASP’ın oturum yönetimi rehberi şunları önerir:
- Oturum çerezleri
Secure(yalnızca HTTPS),HttpOnly(sayfa komut dosyaları tarafından okunamaz) veSameSiteile ayarlanmış - Girişte yeni bir oturum kimliği verilir ve yetkiler değiştiğinde yeniden verilir
- Sunucuda uygulanan bir boşta kalma zaman aşımı ve bir mutlak maksimum ömür
- Çıkış, yalnızca çerezi silmek yerine oturumu sunucuda sonlandırır
- Kullanıcı şifresini değiştirdiğinde oturumlar geçersiz kılınır
Giriş belirteçlerini tarayıcının localStorage alanında tutmak öğreticilerde yaygındır, ama sayfada çalışan her komut dosyasına açık hale getirir; web uygulamaları için güvenli çerezler genellikle daha iyi bir varsayılandır.
Temelleri kapsayan bir prompt
Bu uygulamaya kullanıcı hesapları ekle. Kullanıcılar e-posta ve şifreyle veya Google ile kayıt olup giriş yapabilsin. Özel kimlik doğrulama kodu yerine [kütüphane veya sağlayıcı] kullan. Şifreleri Argon2id veya bcrypt ile özetle. Şifre sıfırlamayı e-posta ile ekle; tek kullanımlık bağlantı bir saat içinde sona ersin. Oturumları güvenli, HttpOnly çerezlerde tut. /dashboard ve her /api rotasını yalnızca oturum açmış kullanıcıların kullanabileceği şekilde koru ve kullanıcılar yalnızca kendi projelerini görebilsin. Tüm kullanıcıları görebilen bir “admin” rolü ekle; /admin’e yalnızca yöneticiler ulaşabilsin, bu sunucuda kontrol edilsin.
Sonra test edin: kayıt olun, çıkış yapın, giriş yapın, şifreyi sıfırlayın, oturum kapalıyken özel bir URL’yi deneyin ve başka bir kullanıcının kaydını deneyin.
Yapay zeka ile oluşturulan girişte sık yapılan hatalar
- Korumanın yalnızca sayfada olması. Sayfa oturum açmamış kullanıcıları yönlendirir, ama API herkese veri döndürür.
- Gizli bilgilerin tarayıcıda olması. OAuth istemci gizli anahtarları ve kimlik sağlayıcısı yönetici anahtarları sunucuda kalmalıdır.
- Önizleme ve canlı URL’lerin karışması. Google’ın yönlendirme URI’si veya sıfırlama e-postasındaki bağlantı önizlemeyi gösterir; bu yüzden yayınlandıktan sonra giriş bozulur.
- E-posta doğrulaması olmaması. Herkes anyone@company.com olarak kayıt olabilir. O adrese bağlı bir şeyi vermeden önce e-postayı doğrulayın.
- Yalnızca mutlu yolu test etmek. Yanlış şifreleri, süresi dolmuş bağlantıları ve ikinci bir hesabı deneyin.
Mythex’te giriş ekleme
Mythex’te uygulamanızın kullanıcıları için giriş, uygulamanıza eklediğiniz bir şeydir — Mythex hesabınızdan ayrıdır. Mythex yerleşik bir kimlik doğrulama ürünü sunmaz; bu yüzden kendi kimlik doğrulama kütüphanenizi veya sağlayıcınızı ve anahtarlarını getirirsiniz:
- Bir yaklaşım seçin — örneğin e-posta ve şifreyi kendi veritabanınızda saklamak veya barındırılan bir sağlayıcının SDK’sı.
- Kullanıcıları kendiniz saklayacaksanız uygulamanın bir veritabanına ihtiyacı olur; sohbette isteyin veya
/databasekullanın. - Sağlayıcı anahtarlarını proje gizli bilgilerinde saklayın (
/secretsveya proje ayarları). - Yukarıdakine benzer bir prompt kullanın, sonra Önizleme’de test edin. Google ile oturum açma için hem önizleme hem de yayınlanmış adresiniz için yönlendirme URI’leri ekleyin.
Dokümanlarda uygulamanıza giriş ekleme bölümüne bakın. Ücretli bir ürün inşa ediyorsanız, SaaS MVP nasıl oluşturulur rehberi hesapları ve faturalandırmayı birlikte kapsar.
Sorular
Bir uygulamaya eklenebilecek en kolay giriş hangisi?
Barındırılan bir kimlik doğrulama sağlayıcısı veya iyi bakımı yapılan bir kimlik doğrulama kütüphanesi kullanmak genellikle en kolay ve en güvenli yoldur; çünkü oturumlar, şifre saklama ve sıfırlamalar zaten çözülmüştür. Google ile oturum açma, Google hesabı olan kullanıcılar için en düşük sürtünmeli seçenektir.
Sihirli bağlantılar şifrelerden daha mı güvenli?
Şifre tekrarını ve zayıf şifreleri ortadan kaldırırlar, ama riski kullanıcının e-posta hesabına taşırlar. Bağlantılar hızlı sona ermeli ve yalnızca bir kez çalışmalıdır. Çoğu küçük uygulama için makul bir seçimdir ve genellikle Google ile oturum açmanın yanında sunulur.
Google ile oturum açmayı eklemek için Google’ın onayına ihtiyacım var mı?
Yalnızca temel oturum açma bilgilerini (ad, e-posta ve profil) istiyorsanız Google doğrulamanın zorunlu olmadığını söyler; yine de bir onay ekranı ve OAuth istemcisi yapılandırmanız gerekir. Gmail veya Drive gibi hassas verilere erişim istemek ise Google’ın uygulama doğrulamasını gerektirir.
Giriş ile izinler arasındaki fark nedir?
Giriş (kimlik doğrulama) kullanıcının kim olduğunu onaylar. İzinler (yetkilendirme) bu kullanıcının neyi görüp yapabileceğini belirler. Bir uygulamaya ikisi de gerekir ve izinler her istekte sunucuda kontrol edilmelidir.