Google ile Oturum Açma özelliğini web uygulamanıza entegre etme

Google ile Oturum Açma, OAuth 2.0 akışını ve jeton yaşam döngüsünü yöneterek Google API'leriyle entegrasyonunuzu basitleştirir. Kullanıcılar diledikleri zaman bir uygulamaya erişimi iptal etme seçeneğine sahiptir.

Bu dokümanda, temel bir Google ile Oturum Açma entegrasyonunun nasıl tamamlanacağı açıklanmaktadır.

Yetkilendirme kimlik bilgileri oluşturma

Google API'lerine erişmek için OAuth 2.0 kullanan tüm uygulamalar, uygulamayı Google'ın OAuth 2.0 sunucusuna tanımlayan yetkilendirme kimlik bilgilerine sahip olmalıdır. Aşağıdaki adımlarda projeniz için kimlik bilgilerini nasıl oluşturacağınız açıklanmaktadır. Daha sonra uygulamalarınız bu proje için etkinleştirdiğiniz API'lere erişmek için kimlik bilgilerini kullanabilir.

  1. Go to the Credentials page.
  2. Kimlik bilgisi oluştur > OAuth istemci kimliği seçeneğini tıklayın.
  3. Web uygulaması uygulama türünü seçin.
  4. OAuth 2.0 istemcinizi adlandırın ve Oluştur'u tıklayın.

Yapılandırma tamamlandıktan sonra, oluşturulan istemci kimliğini not edin. Sonraki adımları tamamlamak için istemci kimliğine ihtiyacınız olacak. (Ayrıca, bir istemci gizli anahtarı da oluşturulur, ancak bu gizli anahtara yalnızca sunucu tarafı işlemler için ihtiyacınız olur.)

Google Platform Kitaplığını yükleme

Google ile Oturum Açma özelliğini entegre eden web sayfalarınıza Google Platform Kitaplığı'nı eklemeniz gerekir.

<script src="https://apis.google.com/js/platform.js" async defer></script>

Uygulamanızın istemci kimliğini belirtme

Google Developers Console'da uygulamanız için oluşturduğunuz istemci kimliğini google-signin-client_id meta öğesiyle belirtin.

<meta name="google-signin-client_id" content="YOUR_CLIENT_ID.apps.googleusercontent.com">

Google ile Oturum Açma düğmesi ekle

Sitenize Google ile Oturum Açma düğmesi eklemenin en kolay yolu, otomatik olarak oluşturulmuş bir oturum açma düğmesi kullanmaktır. Sadece birkaç satır kod kullanarak kendisini kullanıcının oturum açma durumu ve istediğiniz kapsamlar için uygun metin, logo ve renklere sahip olacak şekilde otomatik olarak yapılandıran bir düğme ekleyebilirsiniz.

Varsayılan ayarları kullanan bir Google ile Oturum Açma düğmesi oluşturmak için oturum açma sayfanıza g-signin2 sınıfıyla bir div öğesi ekleyin:

<div class="g-signin2" data-onsuccess="onSignIn"></div>

Profil bilgilerini alma

Varsayılan kapsamları kullanarak Google ile bir kullanıcıyla oturum açtıktan sonra kullanıcının Google kimliğine, adına, profil URL'sine ve e-posta adresine erişebilirsiniz.

Bir kullanıcının profil bilgilerini almak için getBasicProfile() yöntemini kullanın.

function onSignIn(googleUser) {
  var profile = googleUser.getBasicProfile();
  console.log('ID: ' + profile.getId()); // Do not send to your backend! Use an ID token instead.
  console.log('Name: ' + profile.getName());
  console.log('Image URL: ' + profile.getImageUrl());
  console.log('Email: ' + profile.getEmail()); // This is null if the 'email' scope is not present.
}

Kullanıcının oturumunu kapatma

Sitenize bir oturum kapatma düğmesi veya bağlantısı ekleyerek kullanıcıların Google'da oturumlarını kapatmadan uygulamanızdan çıkış yapmalarına olanak sağlayabilirsiniz. Oturumu kapatma bağlantısı oluşturmak için bağlantının onclick etkinliğine GoogleAuth.signOut() yöntemini çağıran bir işlev ekleyin.

<a href="#" onclick="signOut();">Sign out</a>
<script>
  function signOut() {
    var auth2 = gapi.auth2.getAuthInstance();
    auth2.signOut().then(function () {
      console.log('User signed out.');
    });
  }
</script>