Google Authentication (GA) PHP Entegrasyon – Giriş & Kayıt Örnek Uygulama

Merhaba, Bildiğiniz üzere Google, bir tek seferlik giriş token sistemi oluşturmak için 2011 yılında GA için iki faktörlü kimlik doğrulama aracını yayınladı. Web uygulamanıza iki faktörlü kimlik doğrulama (2FA) kullanmak, kullanıcı verilerinizin güvenliğini artırır. Giriş yaptıktan veya kayıt olduktan sonra oluşturulan QRCode’u taramak için “Authenticator” uygulamasını indirmek için bir akıllı telefona ihtiyacınız var. (Bunu yapan chrome eklentileri de mevcut, ancak ben hiç kullanmadım.)

Geçtiğimiz günlerde bir proje için GA entegrasyonu yapma ihtiyacım oldu, bunu biraz geliştirip repoya yükledim, makalenin devamında bir örnek proje ve kod betikleri bulacaksınız.

Google Authentication nasıl çalışır?
Google Authentication hem Android hem de IOS akıllı telefon için ücretsiz bir uygulamadır. Kimlik doğrulayıcı her 30 saniyede bir yeni bir kod oluşturur. İşlem aşağıdaki gibidir:

1. Php uygulamanız, kullanıcının Google Authenticator uygulamasına profil eklemek için telefon kamerasıyla taradığı bir QR kodu oluşturur.
2. Daha sonra Authenticator uygulaması, php uygulamasında kimlik doğrulamanın ikinci kısmı için kullanılacak her 30 saniyede bir yeni bir kod oluşturur.

Aslında yapılan sms şifre entegrasyonu ile aynıdır. Sadece şifre size sms olarak gelmez, uygulama içinden alınır. Bu şifreler 30 saniyede bir yenilenir.

Bunu bir örnek üzerinden göstermek daha efektif olacak. İlk önce bir kayıt formu ve bir giriş formu oluşturacağız. Kullanıcı sisteme kaydolduktan sonra QRCode’u oluşturacağız ve Google Şifrematik Uygulaması ile doğrulayacağız.

Google api üzerinden bağlantı sağlayan ve şifreleme mekanizmasını oluşturan class aşağıdaki gibidir.

Bünyesinde kayıt ol, giriş yap, GA onay ve profil sayfası barındıran örnek projenin linkini aşağıda paylaşıyorum. Dilediğiniz gibi geliştirebilirsiniz.

https://github.com/maxmanus16/GA-Authentication-PHP

Dikkat: DB.SQL dosyasını veritabanına içe aktarıp, connection.php dosyasındaki veritabanı bilgilerinizi güncellemeniz test uygulamasını çalıştırabilmeniz için yeterlidir.

Yazar: Fatih Soysal

Kullanım ve kodlama mükemmeliyetini odak alan uygulamalar oluşturma deneyimine sahip, profesyonel olarak 15+ yıl üzeri deneyime sahip bir yazılım mühendisi.

Subscribe
Bildir

0 Yorum
Inline Feedbacks
View all comments
wpDiscuz
0
0
Would love your thoughts, please comment.x
Exit mobile version