1. Anasayfa
  2. ASP.Net

ASP.NET Identity 2.0 ile Google+ API İle Üyelik Entegrasyonu


0

Sosyal Medya kavramının hayatımıza yerleşmesinin ardından iletişimde yeni bir çağa adım atıldı. Ürününüzü küçük bütçelerle onbinlerce hedef kitleye ulaştırabileceğiniz dev bir pazar oluştu. Herkes bu dev pastadan bir pay kapmaya çalışırken onlarca sosyal medya sistemleri, milyarlarca kullanıcı bu dev pazarda varlığını artarak sürdürmekte.

Eğer bir internet projesi yapıyorsanız artık bir veya birkaç sosyal medya entegrasyon yapmanız artık zamanımızın olmazsa olmazlarından oldu.

Microsoft, ASP.NET Identity ile tüm membership(üyelik) ihtiyaçlarınıza çözüm sağlarken hemde sosyal medya entegrasyonlarını birkaç kolay adım ile gerçekleştirebilmektesiniz.

Lafı fazla uzatmadan hemen örneğimize geçelim.

Microsoft Visual Studio 2015’i açarak hemen yeni bir MVC Projesi oluşturuyorum. Proje adını MyIdentityApplication olarak verdim. Burada Authentication: Individual User Accounts olarak varsayılan olarak gelmekte. Değiştirmeden devam ediyorum.


Resim-1


Resim-2

Microsoft Visual Studio bizim için gerekli referansları ve sınıfları projemize ekledi.


Resim-3

Şimdi yapmamız gereken Microsoft Visual Studio’nun oluşturduğu “Startup.Auth.cs” dosyasına gidip halı hazırda yorum satırı olarak işaretlenmiş kodu aktif etmek ve https://console.developers.google.com adresinden oluşturacağımız API için “ClientId” ve “ClientSecret” bilgilerini bu alana yazmak.


Resim-4

Gerekli ClientId ve ClientSecret bilgilerini oluşturmak için https://console.developers.google.com adresine gidiyoruz ve aşağıdaki gibi yeni bir proje oluşturuyoruz.


Resim-5

Ben proje adı olarak My Identity Project ismini verdim ve Create düğmesine tıklıyoruz.


Resim-6

Ardından Social APIs başlığının altında yeralan Google+ API linkine tıklayarak bu API’nin “Enable” edilmesini sağlıyoruz.


Resim-7

Açılan sayfada en tepedeki Enable düğmesine tıklayarak Google+ API’nin Enable olmasını bekliyoruz.


Resim-8

İşlem tamamlandıktan sonra aşağıdaki gibi bir uyarı mesajı ile karşılaşıyoruz. Bizim de bir sonraki adımımız Credentials oluşturmaktı.


Resim-9

Soldaki menüden Credentials seçeneğini seçtikten sonra Oauth consent screen alt menüsünde gerekli alanları doldurarak kaydediyoruz.


Resim-10

Tekrar Credentials menüsüne dönüp Creat Credentials düğmesinin yanındaki Ok’a basıp, açılan Context menüden OAuth Client ID seçeneğini seçiyoruz.


Resim-11

Açılan sayfada aşağıdaki gibi gerekli alanları doldurarak ClientId’yi oluşturuyoruz. Burada Authorized redirect URIs önemli. Bu alana kutucuğa yazdıktan sonra taba basarak yenilerini ekleyebilirsiniz.


Resim-12

Artık elde ettiğimiz ClientId ve ClientSecret bilgilerini “Startuo.Auth.cs” dosyasında yorum satırından açtığımız yere yazabiliriz.


Resim-13

Son olarak “RouteConfig.cs” dosyasına aşağıdaki satırı eklememiz gerek. Nedenini anlayamadığım birşekilde bazen inatla bizim verdiğimiz redirect url yerine “signin-google” yoluna dönüyor.

routes.MapRoute(“signin-google”, “Account/ExternalLoginConfirmation”);

Uygulamamızı çalıştırıp Microsoft.Net Web Application varsayılan tasarımında sağ üst kısımda yeralan Login linkine tıklayarak oturum açma sayfasına geldiğimizde. Normal login yapısının yanı sıra sağdaki bölümde Google seçeneği otomatik olarak geldi.


Resim-14


Resim-15


Resim-16

Umarım faydalı olmuştur. Sürçü lisan ettiysem affola.

Bu konuyla ilgili sorularınızı  alt kısımda bulunan yorumlar alanını kullanarak sorabilirsiniz.

Referanslar

https://www.mshowto.org

Bu İçeriğe Tepkin Ne Oldu?
  • 0
    harika_
    Harika!!
  • 0
    be_enmedim
    Beğenmedim
  • 0
    _ok_iyi
    Çok iyi
  • 0
    sevdim_
    Sevdim!
  • 0
    bilemedim_
    Bilemedim!
  • 0
    olmad_
    Olmadı!
  • 0
    k_zd_m_
    Kızdım!

2004 yılından beri Bilişim sektöründe profesyonel olarak çalışmaktayım. Microsoft teknolojilerini kullanarak daha çok Web ağırlıklı yazılım geliştirmekteyim.

Yazarın Profili

Bültenimize Katılın

Tıklayın, üyemiz olun ve yeni güncellemelerden haberdar olan ilk kişi siz olun.

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir