Extension:ConfirmAccount

This page is a translated version of the page Extension:ConfirmAccount and the translation is 100% complete.
Other languages:
Deutsch • ‎English • ‎Türkçe • ‎dansk • ‎español • ‎français • ‎polski • ‎português do Brasil • ‎中文 • ‎日本語
MediaWiki manüel uzantıları
OOjs UI icon advanced.svg
ConfirmAccount
Sürüm durumu: kararlı
ConfirmAccounts.png
Uygulama Kullanıcı kimliği , Veritabanı , Özel sayfa
Açıklama Hesapların sunulmasını ve onaylanmasını gerektirir.
Yazar(lar) Aaron Schulzmesaj
MediaWiki 1.23+
Veritabanı değişiklikleri Evet
Tablolar account_requests
account_credentials
Lisans GNU Genel Kamu Lisansı 2.0 veya üstü
İndir
README
  • $wgAutoWelcomeNewUsers
  • $wgAccountRequestTypes
  • $wgConfirmAccountNotice
  • $wgConfirmAccountCaptchas
  • $wgConfirmAdminEmailExtraFields
  • $wgConfirmAccountRequestFormItems
  • $wgConfirmAccountContact
  • $wgAccountRequestExts
  • $wgAccountRequestThrottle
  • $wgConfirmAccountFSRepos
  • $wgRejectedAccountMaxAge
  • $wgConfirmAccountSaveInfo
  • $wgConfirmAccountSortkey
  • $wgAutoUserBioText
  • $wgAccountRequestWhileBlocked
  • $wgConfirmAccountRejectAge
  • $wgMakeUserPageFromBio
  • confirmaccount
  • confirmaccount-notify
  • requestips
  • lookupcredentials
Translatewiki.net adresinde mevcutsa, ConfirmAccount uzantısını çevirin

Kullanım ve sürüm matrisini kontrol edin.

Sorunlar Açık görevler · Hata bildir

ConfirmAccount uzantısı doğrudan hesap oluşturmayı devre dışı bırakır ve yeni hesapların bir bürokrat tarafından onaylanmasını gerektirir. Kullanıcı hakları yapılandırarak doğrudan hesap oluşturma yine de etkinleştirilebilir (Hizmetliler /Bürokratların bunları doğrudan yapabilmesini istiyorsanız).

Baskı isteklerini durdurmak için captcha'lar kullanmak için ConfirmEdit uzantısı (ConfirmAccount uzantısı ile birlikte) kullanılabilir.

Kurulum

  • Dosyaları indirin ve extensions/ klasörünüzdeki ConfirmAccount adlı dizine yerleştirin.
  • LocalSettings.php dosyanızın altına aşağıdaki kodu ekleyin:
    wfLoadExtension( 'ConfirmAccount' );
    
  • Bu uzantının ihtiyaç duyduğu gerekli veritabanı tablolarını otomatik olarak oluşturacak betik güncelleme komutunu çalıştırın.
  • Vikinin $wgUploadDirectory üzerinde yazma izinlerine sahip olduğundan emin olun.
  • 26 Eylül 2020 itibarıyla wfLoadExtension() kullanılırken izinlerle ilgili bir sorun var gibi görünüyor: createaccount izni all users grubundan iptal edilemez. Bu çözülene kadar hesap oluşturmayı önlemek için
    $wgGroupPermissions['*']['createaccount'] = false;
    
    kullanın.
  •   Yapıldı – Uzantının başarıyla yüklendiğini doğrulamak için vikinizde Special:Version seçeneğine gidin.

MediaWiki 1.24 veya önceki bir sürümü çalıştıran kullanıcılara:

Yukarıdaki talimatlar, bu eklentiyi wfLoadExtension() kullanarak kurmanın yeni yolunu açıklar. Bu uzantıyı önceki sürümlerine (MediaWiki 1.24 ve önceki sürümler) yüklemeniz gerekirse, wfLoadExtension( 'ConfirmAccount' ); yerine kullanmanız gerekir:

require_once "$IP/extensions/ConfirmAccount/ConfirmAccount.php";

Yapılandırma

İsteğe bağlı

LocalSettings.php cinsinden ayarlanabilen birkaç yapılandırma değişkeni vardır (ConfirmAccount.php içeren required_once satırından sonra). Ayarlanabilecek tüm değişkenler için ConfirmAccount.config.php sayfasına bakın. (Varsayılan değerler ConfirmAccount.config.php, ancak bu dosyayı düzenlememelisiniz).

For example, to set the person's bio as their userpage, set $wgMakeUserPageFromBio = true.

Varsayılan olarak, yeni kullanıcının istek formunu göndermesi için 6 kelimelik bir biyografi gerekir. Bu gereksinimi ayarlamak için $wgConfirmAccountRequestFormItems['Biography']['minWords'] ile LocalSettings.php olarak düzenleyin, ör. 10 kelime için:
$wgConfirmAccountRequestFormItems['Biography']['minWords'] = 10;

Biyografiyi devre dışı bırakmak için $wgConfirmAccountRequestFormItems ['Biography']['enabled'] değerini false olarak ayarlayın:

$wgConfirmAccountRequestFormItems['Biography']['enabled'] = false;
Hizmetliler yine de doğrudan hesap oluşturabilir. Bunu devre dışı bırakmak için LocalSettings.php ile ekleyin:
$wgGroupPermissions['sysop']['createaccount'] = false;
Yalnızca oturum açmış kullanıcıların sayfaları görüntülemesine izin veriliyorsa, talep hesap sayfasını $wgWhitelistRead eklediğinizden emin olun. Örneğin:
$wgWhitelistRead = array( 'Special:RequestAccount', 'Main Page' );
Diğer dillerde, "Anasayfa" ve "Special:RequestAccount" yerel isimleriyle değiştirmeniz gerekir, örneğin bir Almanca vikide "Hauptseite" ve "Spezial:Benutzerkonto_beantragen".

Kullanıcıları ilgi alanlarına göre daha fazla kategorize etmek için MediaWiki:Requestaccount-areas ayarlayabilirsiniz. Bu, aşağıdaki gibi bir biçiminde olmalıdır:

*Konu|Konu viki sayfası|tüm ilgili kullanıcıların özgeçmişlerine eklenecek metin|group0'daki tüm ilgilenen kullanıcıların biyografilerine eklenecek metin|ilgili tüm kullanıcıların bios grubuna eklenecek metin1|group2'deki tüm ilgilenen kullanıcıların biyografilerine eklenecek metin|...

Bu grup numaraları $wgAccountRequestTypes üzerinde dayanmaktadır. Dolayısıyla, 'yazarlar' dizini 0 ise, bir konuyla ilgilenen 'yazarlar'ın biyografilerine grup0 metni eklenecektir. Bu, örneğin kullanıcılar yazar veya editör olarak onaylanabiliyorsa yararlı olabilir. Yazarların "kategori:X yazarları" olabilir; burada X, "matematik" gibi bir konudur ve editörler "kategori:x düzenleyicileri" sahip olabilir. İstediğiniz kadar gruba sahip olabilirsiniz, ancak en az birine ihtiyacınız var.

Minimal

Captcha'lar, kara listeler ve filtreler yerine spam'ı önlemeye çalışmak; Yeni kullanıcı kayıtlarını daha basit bir Hesap iste ile manüel olarak denetleyin. Yalnızca bir kullanıcı adı, e-posta adresi ve kısa bir mesaj istemek. require_once "$IP/extensions/ConfirmAccount/ConfirmAccount.php"; satırından sonra LocalSettings.php ile aşağıdakini ekleyin.

 $wgMakeUserPageFromBio = false;
 $wgAutoWelcomeNewUsers = false;
 $wgConfirmAccountRequestFormItems = [
 	'UserName'        => [ 'enabled' => true ],
 	'RealName'        => [ 'enabled' => false ],
 	'Biography'       => [ 'enabled' => false, 'minWords' => 50 ],
 	'AreasOfInterest' => [ 'enabled' => false ],
 	'CV'              => [ 'enabled' => false ],
 	'Notes'           => [ 'enabled' => true ],
 	'Links'           => [ 'enabled' => false ],
 	'TermsOfService'  => [ 'enabled' => false ],
 ];

İsteğe bağlı olarak sistem mesajları ince ayar yapın: requestaccount-text, requestaccount-notes, requestaccount-ext-text, requestaccount-acc-text.

Kullanım

 
Başarılı bir hesap oluşturma sürecinin etkileşim diyagramı.
 
Special:ConfirmAccounts üzerinde hesap isteklerini onaylama (beta formu)
  1. Bürokrat (veya confirmaccount iznine sahip başka bir kullanıcı) olarak Special:ConfirmAccounts sayfasına göz atın
  2. İncele' ye tıklayın
  3. Kullanıcı verileriyle birlikte tüm formu göreceksiniz. Formu dikkatlice inceleyin ve hesabı oluşturmaya veya isteği reddetmeye devam edin.
  4. Hesabı oluşturmayı seçerseniz, kullanıcının biyografisi kendi kullanıcı sayfası olur ve kullanıcı sayfası, Yeni kullanıcının biyografisiyle kullanıcı sayfası oluşturma varsayılan özetiyle otomatik olarak oluşturulur.
  5. Bir hesap oluşturulduktan sonra, talep anında kullanıcı tarafından girilen veri, kullanıcı adı Special:UserCredentials sayfasına yazılarak girebilir.
Bürokratların bekleyen isteklerden haberdar olabilmeleri için LocalSettings.php cinsinden bir e-posta / posta listesi ayarlamanız gerekir:
$wgConfirmAccountContact = 'Bureaucrat@domain.com';

Sending notification email to multiple users

This extension allows sending emails to multiple approvers to confirm the account if these users have the confirmaccount-notify permission. This is in addition/alternative to the $wgConfirmAccountContact setting.

This can be achieved (for instance for bureaucrats) by providing them this permission by adding the following to LocalSettings.php:

$wgGroupPermissions['bureaucrat']['confirmaccount-notify'] = true;

Geliştirmeler

Budama Frekansı

Robot istekleriyle mücadele etmek için varsayılan ayarlar, reddedilen e-posta hesaplarının, reddedildikten sonra rastgele bir süre için bir hesabı yeniden istemesini önler. Reddedilen e-postaların, reddedildikten hemen sonra veya düzeltme bir bekleme süresinden sonra (redden sonra günler, haftalar, aylar ve hatta yıllar sonra) hesapları yeniden talep edebilmesini istiyorsanız, aşağıdaki 2 adımı uygulayın:

1) LocalSettings.php'de, gerekli bildirimden sonra, Reddedilen Yaş'ı 0'a (reddedildiğinde hemen sona erme için) veya saniye cinsinden istediğiniz bekleme süresine ayarlayın:

require_once "$IP/extensions/ConfirmAccount/ConfirmAccount.php";
$wgRejectedAccountMaxAge = 0;

2) Herhangi bir yeni istekten hemen önce budama işlemini zorlamak için, İstek formunu gösteren showForm() işlevinin en sonuna /frontend/specialpages/actions/RequestAccount_body.php dosyasına bir satır ekleyin:

orijinal kod:

$out->addWikiMsg( 'requestaccount-footer' );
}

yeni kod:

$out->addWikiMsg( 'requestaccount-footer' );		
# PRUNE
ConfirmAccount::runAutoMaintenance();
}

"Hesap iste" Bağlantısı

Bir "Hesap iste" giriş bağlantısı eklemek isterseniz, "LocalSettings.php" dosyasına aşağıdakileri ekleyin:

$wgHooks['PersonalUrls'][] = 'onPersonalUrls';

function onPersonalUrls( array &$personal_urls, Title $title, SkinTemplate $skin  ) {
    // Add a link to Special:RequestAccount if a link exists for login
    if ( isset( $personal_urls['login'] ) || isset( $personal_urls['anonlogin'] ) ) {
            $personal_urls['createaccount'] = array(
                'text' => wfMessage( 'requestaccount' )->text(),
                'href' => SpecialPage::getTitleFor( 'RequestAccount' )->getFullURL()
            );
    }
    return true;
}

ve "Hesap iste" metni "MediaWiki:Requestaccount" sayfasına.

Bilinen sorunlar

  • $wgGroupPermissions['*']['createaccount'], LocalSettings olarak true ayarlamayın, oturum açma isteğini geçersiz kılar ve kullanıcıların onay olmadan kaydolmasına izin verir.
  • xx'in bir dil kodu olduğu durumda MediaWiki:Requestaccount-areas/xx ayarlamayın/oluşturmayın, her satırın ilk bölümü, hesap talep edenlerin kontrol ettiği öğeler için DB'de saklanacak anahtarlar olarak kullanılır.
  • MediaWiki'nin eski sürümleri, kullanıcı oturum açma formunda Special:RequestAccount bağlantısını göstermeyebilir. Bunu düzeltmek için MediaWiki:loginprompt düzenleyebilirsiniz.
  • E-posta istemciniz posta verilerini göndermeden önce kaybederse, kullanıcılar parolarını alamaz, ancak bir hesabı olabilir. Paroları kimse bilmediğinden, yenilerini göndermek için Extension:Password Reset veya Special:ResetPassword kullanmak isteyebilirsiniz.
  • Hesapları onayla sayfasını yalnızca birkaç kişi görüntülerse, eski isteklerin rastgele tetiklenen budanması sık sık tetiklenmeyeceğinden eski reddedilen istekler devam edebilir. Bu, e-posta adreslerinin bilinmeyen bir süre için hesapları yeniden istemesini engeller. Herhangi bir yeni İstek gönderilmeden hemen önce budama işlemini zorlayarak bu davranışı geçersiz kılabilir ve anında yeniden isteklere izin verebilirsiniz. Talimatlar burada.
  • LDAP Authentication uzantısı ile entegrasyon

Sorun giderme

Bildirim e-postaları gönderilmiyor

Test ediyorsanız, bir kullanıcının önce e-posta adresini kendisine gönderilen bağlantı yoluyla onaylaması gerektiğini ve ardından e-postanın hesabı onaylamak için bürokratlara gönderileceğini unutmayın.

Uzantı ile ilgili ayarların require_once satırından sonra verildiğinden emin olun. Daha önce değil, aksi takdirde uzantı bu ayarları görmez ve sessizce başarısız olur. örn.

require_once "$IP/extensions/ConfirmAccount/ConfirmAccount.php";
$wgConfirmAccountContact = "admin@example.com";

Ayrıca, 'confirmaccount-notify' ayarını kullanırken, gruptaki her kullanıcının (ör. hizmetli) Special:Preferences içindeki E-posta seçenekleri "Diğer kullanıcıların bana e-posta gönderebilmesine izin ver" ile izin vermediği ve aynı form içinde e-posta adreslerini onaylamadığı sürece bildirim almayacağını unutmayın.

Ayrıca bakınız

Kaynakça