Google Authenticator / Two Factor Authenticator Kullanımı

Google Authenticator / Two Factor Authenticator Kullanımı

Aralık 25, 2017 | Faruk

Merhaba,

Hazırladığımız uygulamalarda bazen ek güvenlik önlemleri alma ihtiyacı duyabiliriz. bunun için genelde Catpcha kullanılır ancak bazı durumlarda bu önlemi biraz daha geliştirerek Two Factor Authentication / İki Aşamalı Doğrulama ismi verilen yöntemlere başvururuz.

Bu yöntemin en bilineni SMS Kodu ile doğrulamadır. Mesela banka hesaplarına girişte en çok kullanılan yöntem budur.Giriş bilgilerinizi girdikten sonra telefonunuza gönderilen geçici ve özel bir kod ile kimliğinizi bir kez daha doğrulamanız istenir. 

Yakın dönemde SMS e alternatif kullanabileceğimiz Google Authenticator geliştirildi. Bu yöntemde Google tarafından sunulan bir uygulamayı kullanarak SMS vs bir yönteme ihtiyac duymadan 2 Aşamalı Doğrulama yapılabiliyor. Şu an özellikle sanal para işelmi yapılan nam-ı diğer bitcoin borsalarından bazıları da dahil olmak üzere riskli bir çok işlemin yapıldığı hassas sitelerde bu yöntem aktif olarak kullanılıyor.

Sistem basit mantık olarak şöyle çalışıyor:

Giriş yapmak için kullanıcı adı ve şifrenizi ve hatta gerekiyorsa captcha bilgisini girdikten sonra BackEnd tarafında uygulamanıza özel gizli kod (secret key) ile yine sizin belirlediğiniz bir bilgi ( mesela kullanıcı adı) birleştirilerek bir giriş Auth bilgisi oluşturulur. Daha sonra ekranda bit kutucuk çıkar ve akıllı cihazınızda ki Google Authenticator dan size verilen kodu buraya girmeniz istenir. Bu kodu girerek sms doğrulaması yapmış gibi giriş yaparsınız.

Uygulamaya entegrasyon için ilk olarak Nuget üzerinden paket kurmamız gerekiyor.. Örnekte Brandon Potter tarafından sağlanan kütüphaneyi kullandım.

1- Nuget  Google Authenticator (Brandon Potter) /  ( https://www.nuget.org/packages/GoogleAuthenticator/ )

Komut satırından kurmak için doğrudan Package Manager Console da aşağıda ki komutu çalıştırın

Install-Package GoogleAuthenticator

2 -Login işleminde kullanacağımız örnek Db Model

 public class LoginModel

    {

        public string UserName { get; set; }

        public string Password { get; set; }

    }

 

 

3- Login işleminde kullanacağımız View i oluşturuyoruz

4- Controller da ilgili Actionları yazarız

- Index / Login Action

- Two Factor Authenticator Action

- UserProfile / Erişilmek istenen Action

 

5- Google Authenticator Mobil İndirme Linkleri

 

Android : https://play.google.com/store/apps/details?id=com.google.android.apps.authenticator2&hl=en

IPhone  : https://itunes.apple.com/us/app/google-authenticator/id388497605?mt=8

 

Hayrını görün  :)

{fa} ruk

Software Developer

e-Sosyal

:)

Ankara