OpenID / OAuth kimlik doğrulama yöntemlerinde, bunlar aracılığıyla bireysel oturum açmayı garanti eden kesinlikle hiçbir şey yoktur, gerçekten de benzersiz bir kullanıcıdır. OpenID, bir sertifika biçiminde (kullanıcı adı, e-posta adresi ve noter ) OAuth'un vale anahtarı kimlik doğrulamasından biraz daha fazla veri sağlar, ancak bu tek başına oylamayı sahtekarlığı önlemek. Dolandırıcılık kelimesini bu anlamda kullanmak bence biraz ağır, belki kötüye kullanım daha uygun mu? Ne olursa olsun, web uygulamanızda hangi diğer bilgileri kullanabileceğinizi ve bunun oylama sisteminiz için ne anlama geldiğini görelim:
- IP adresi : Çoğu kullanıcı IP'lerini bir DHCP sunucusu tarafından atandığından ve dinamik olduğundan uygun değildir (daha sonra başka bir kullanıcıya atanabilir veya aynı kullanıcı yeni bir tane isteyebilir), farklı kullanıcılar web sitenize aynı IP üzerinden erişiyor olabilir (kuruluşlar ve proxy sunucuları kullanan diğerleri, bir IPv4 aracısı aracılığıyla tünel oluşturan mobil IPv6 kullanıcıları vb.) veya aynı kişi, web sitenize farklı bir IP (TOR ağı, VPN, ...) ile erişmek için başka yöntemler kullanabilir
- Oturum Kimliği : Bu, bir oturum çerezinden (veya çerezsiz oturumlarda bir oturum kalıcı istek sorgu değeri biçiminden), genellikle kullanıcı aracısı dizesinden (tarayıcının kimlik dizesi) ve Zaten kapsadığımız IP. Bunların hiçbiri (kendi başına veya bir bütün olarak oturum), farklı tarayıcılara geçiş yapabildikleri, çerezleri silerek kullanıcı oturumunu temizleyebilecekleri ve hatta tarayıcının imzasını değiştirebilecekleri için benzersiz bir kullanıcının oturum açmasını garanti etmez. Bunların tümü kullanıcı oturumunu geçersiz kılabilir ve yenisi için bir istekte bulunulabilir.
- Yönlendirme dizesi : Kolayca sahtecilik yapılabileceği veya basitçe yeniden kullanılabileceği için tek başına uygun değildir birçok kez.
Bu sizi şunlardan birinde bırakır:
- Facebook ve Twitter'a, kullanıcı başına birden çok hesabı kendi algılamalarını yapmaları için güvenmek,
- Bu tür kötüye kullanımları tespit etmeye çalışacak ek bir kullanıcı kimlik doğrulaması talep etme (Facebook ve Twitter'da halihazırda mevcut olandan daha iyisini yapmak imkansız olabilir),
- Oy pusulasıyla (davet yalnızca bir kerelik oylama) veya
- Sonuçları sunarken olası oy istismarını hesaba katın ( ağırlıklı ortalamalar gibi).
Son üç seçeneğin tümünün uygulanması oldukça zordur ve projenizin bütçesi dahilinde olmayabilir, ki bu - günün sonunda - bu seçeneklerden hangisinin yapabileceği veya
Bir yan not olarak, ağırlıklı ortalama için size iyi bir örnek vermek istedim, ancak sorun şu ki, bu yöntemlerin geçerliliğini önemseyen tüm sistemler kasıtlı olarak kendi sistemi yerinde atlatarak daha fazla kötüye kullanımı önlemek için iç çalışma. Bu tür oylama mekanizmalarını kullanan ve çok çaba sarf ettiği bilinen web sitelerinden biri IMDB (bunun ne kadar etkili olduğuna siz karar vereceksiniz, yorumlarımı saklı tutacağım) ve orada tamamen farklı uygulamalara sahip pek çok diğeridir. StackExchange bile bir çeşit seri oylama engellemesine sahiptir, ancak bununla ilgili ayrıntılar da oldukça azdır.