Extension:GoogleLogin/PreAuthManager/tr

GoogleLogin uzantısı, viki kullanıcılarının Google Hesapları ile giriş yapmalarına izin verir. Uzantı, kullanıcı verilerini istemek için Google API kullanır. Kullanıcı ilk kez oturum açtıysa, uzantı, Google e-posta adresi ve Google kullanıcı adı (veya verilen ad veya kendi adı) ile bir kullanıcı oluşturmaya izin verir.

Gereksinimler
Bu uzantıyı kullanmak için ihtiyacınız olan:
 * MediaWiki 1.23+ (v0.2.0 ve üzeri sürümler için en az MediaWiki 1.24'e ihtiyacınız var)
 * MySQL (şimdilik PostgreSQL veya SQLite desteği yok!)
 * PHP 5.3+
 * Google Geliştirici Erişimi
 * Google+ API erişimi
 * Web Uygulaması için API Kimlik Bilgileri (İstemci Kimliği ve İstemci Sırrı)
 * 0.3.1 sürümüne kadar olan sürüm v0.2.1, Extension GoogleAPIClient, aksi takdirde yalnızca  çalıştırın.

Yapılandırma
Uzantı, İstemci Kimliğini ve İstemci Sırrını ayarlamak için iki yapılandırma değişkeni sağlar (bu çifti Google Geliştirici Konsolu'nda alırsınız, "<" ve ">" öğesini kaldırın).

Google Geliştirici Konsolu'ndaki ayarlar
Bu uzantıyı kullanmak için bir Google geliştirici hesabına ve geliştirici konsoluna erişiminiz olması gerekir. Bu basit (çok basit!) Adım adım bir kılavuzdur (bunlarla birlikte resmi adım adım örnek Adım 1'i kullanın.):
 * 1) Google geliştirici konsolu açın
 * 2) Hizmet şartlarını okuyun ve kabul edin
 * 3) İlk projenizi oluşturun
 * 4) APIS & AUTH gidin
 * 5) APIs gidin ve Google+ API etkinleştirin (şartları oku ve kabul et)
 * 6) Credentials gidin
 * 7) OAuth bölümünde Create new Client ID tıklayın
 * 8) Web application ile APPLICATION TYPE, ile Authorized JavaScript origins alanınızı yazın (joker karakterlere ve dizine izin verilmez!)
 * 9) Aşağıdaki örnekte olduğu gibi Authorized redirect URI yazın:
 * Etki alanınız example.com ise ve etki alanınızın Köküne MediaWiki yüklediyseniz, yönlendirme URI'si aşağıdaki gibidir: http://example.com/index.php/Special:GoogleLogin
 * 1) Oluşturun ve Client ID ve Client Secret ile LocalSettings.php'deki yapılandırma değişkenlerine kopyalayın.

"Special:GoogleLoginReturn" veya (Almancada örnek) "Spezial:Mit_Google_anmelden"
Google geliştirici konsolunda izin verilen yönlendirme URI'sı içerik dilinde olmalıdır. Bu nedenle, vikinizin içerik dili Almanca varsa, "Special:GoogleLogin" yerine "Spezial:Mit_Google_anmelden" yazın. Yanlış dili kullanırsanız, tüm Kimlik Doğrulama istekleri uri uyuşmazlığını yeniden yönlendirme ile başarısız olur.

Hata ayıklama
Normalde, hata mesajını tüm genel hata sayfalarında görebilirsiniz. Bazen İstisnalar adı verilen Dahili Hatalar olabilir. Bu durumda, İstisna mesajının tamamını görmek için lütfen LocalSettings.php'de true değeriyle ekleyin. Destek talebi için lütfen daima İstisna satırlarını sağlayın.

Özel bir vikide kullanın
Vikinizi özel olarak ayarladıysanız

anonim kullanıcıların kimlik doğrulama sağlayıcısından yeniden yönlendirildikten sonra geri arama URL'sine erişebilmesi için "Special:GoogleLogin" sayfasını beyaz listeye eklemeniz gerekir. Bunu, LocalSettings.php dosyanıza aşağıdaki satırı ekleyerek yapabilirsiniz:

Yalnızca GoogleLogin üzerinden hesap oluşturmaya izin verin
MediaWiki'nin hesap oluşturma işlevini devre dışı bırakmak mümkündür. Normalde GoogleLogin de yeni bir hesap oluşturma seçeneği sunmaz. Bunu değiştirmek mümkündür, Kullanıcılar yine de GoogleLogin ile bir hesap oluşturabilir, ancak vanilya hesap oluşturma formu ile yapamaz. Bunun için  dosyanızda aşağıdaki yapılandırma değişkenlerini ayarlamanız gerekir: If you want to remove the Login form of MediaWiki, too, you can set this configuration variable, too: GoogleLogin'i ileride herhangi bir nedenle kaldırmak isterseniz, kullanıcılarınız yeni bir hesap kaydetmeden MediaWiki kurulumunuza yine de giriş yapabilir. GoogleLogin rastgele bir parola ile normal MediaWiki hesapları oluşturur. Kullanıcılarınızın Special:PasswordReset ile parolarını sıfırlamaları yeterlidir.

MobileFrontend <-> GoogleLogin çakışması (yalnızca ve MediaWiki <= 1.26! ile)
Vikinizin mobil olarak optimize edilmiş bir sürümünü sağlayan uzantı olan MobileFrontend,  ile   olarak ayarlarsanız (vanilya giriş formu ile giriş yapılmasına izin vermemek için) aslında GoogleLogin ile çakışır. MobileFrontend'in GoogleLogin'den sonra yüklenmesi durumunda ( dosyanızda ki MobileFrontend'in require_once satırı GoogleLogin'den sonra), özel sayfa UserLogin (kullanıcı adı ve parola ile girişi yönetir) ilk kez GoogleLogin tarafından ve ikinci kez MobileFrontend tarafından (mobil cihazlar için optimize edilmiş bir giriş sayfası sağlamak için) üzerine yazılacaktır. Bu durumda, MobileFrontends Değiştirme kazanacak ve mobil kullanıcılar yine de kullanıcı adı ve parolalar ile oturum açabilir.

Aslında bu sorun, MobileFrontend'in MediaWiki sürüm 1.26'da ( izleniyor) çözülmüştür. MediaWiki/MobileFrontend'in eski sürümleri için, Uzantıların yüklendiği sırayı değiştirmeniz gerekir. dosyanızda MobileFrontend’in require_once ve GoogleLogin yapılandırma satırlarını sonra bir yere koyun. Bu geçici çözüm, MobileFrontend'in sonraki sürümlerinden birinde kullanılmamalıdır.

Bu uzantı ne yapabilir
Veritabanı güncellemesiyle uzantı, viki kullanıcıları ve Google hesapları arasında gerekli bağlantıyı içeren prefix_user_google_user adında yeni bir tablo oluşturacaktır. Yalnızca Google Kullanıcı Kimliğini ve Viki Kullanıcı Kimliğini depolar.

Bir kullanıcı GoogleLogin özel sayfasını çağırırsa, Google tarafından depolanan bazı kullanıcı bilgilerine uygulamanıza erişim izni vermek için anında Google Kimlik Doğrulama isteğine yönlendirilir. Kullanıcı bu isteği kabul etmelidir (veya Google ile girişi kullanamaz). Kabul ettikten sonra, kullanıcı bir viki kullanıcısı olarak oturum açmamışsa, yeni bir hesap oluşturma olanağına sahiptir. Kullanıcı adı, Google kullanıcı adına ve verilen ada (eğer ücretsiz ve oluşturulabilirse) göre kendini seçebilir veya önerilerden birini seçebilir. Seçilen kullanıcı adı oluşturulabilirse (ücretsiz, geçerli ve engellenmemiş), kullanıcı adı ve e-posta adresi olarak Google-Mail ile yeni bir kullanıcı oluşturulur ve Google Hesabına bağlanır.

If the user is logged in (means: they have already a wiki account) they can link this account with the Google account, this the user must do only once. If the connection is created, the user will be able to login simply by clicking Login with Google button on Special:Login.

If the wiki account and Google account is connected, the user can, if they navigate to "Special:GoogleLogin", unlink his account and Google account.

Google API PHP Client
This Extension uses the Google API PHP Client (included in versions before 0.2.1), distributed under the Apache 2.0 License. The Client can be downloaded from GitHub.